]> git.madduck.net Git - etc/vim.git/commitdiff

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Add '.vim/bundle/black/' from commit '2f3fa1f6d0cbc2a3f31c7440c422da173b068e7b'
authormartin f. krafft <madduck@madduck.net>
Thu, 14 Oct 2021 02:03:27 +0000 (15:03 +1300)
committermartin f. krafft <madduck@madduck.net>
Thu, 14 Oct 2021 02:03:27 +0000 (15:03 +1300)
git-subtree-dir: .vim/bundle/black
git-subtree-mainline: 3f68af9813542a5e277b7a51b316644241c372d7
git-subtree-split: 2f3fa1f6d0cbc2a3f31c7440c422da173b068e7b

274 files changed:
.vim/bundle/black/.coveragerc [new file with mode: 0644]
.vim/bundle/black/.flake8 [new file with mode: 0644]
.vim/bundle/black/.github/CODE_OF_CONDUCT.md [new file with mode: 0644]
.vim/bundle/black/.github/ISSUE_TEMPLATE/bug_report.md [new file with mode: 0644]
.vim/bundle/black/.github/ISSUE_TEMPLATE/config.yml [new file with mode: 0644]
.vim/bundle/black/.github/ISSUE_TEMPLATE/docs-issue.md [new file with mode: 0644]
.vim/bundle/black/.github/ISSUE_TEMPLATE/feature_request.md [new file with mode: 0644]
.vim/bundle/black/.github/ISSUE_TEMPLATE/style_issue.md [new file with mode: 0644]
.vim/bundle/black/.github/PULL_REQUEST_TEMPLATE.md [new file with mode: 0644]
.vim/bundle/black/.github/workflows/changelog.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/doc.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/docker.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/fuzz.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/lint.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/primer.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/pypi_upload.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/test.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/upload_binary.yml [new file with mode: 0644]
.vim/bundle/black/.github/workflows/uvloop_test.yml [new file with mode: 0644]
.vim/bundle/black/.gitignore [new file with mode: 0644]
.vim/bundle/black/.pre-commit-config.yaml [new file with mode: 0644]
.vim/bundle/black/.pre-commit-hooks.yaml [new file with mode: 0644]
.vim/bundle/black/.prettierrc.yaml [new file with mode: 0644]
.vim/bundle/black/.readthedocs.yaml [new file with mode: 0644]
.vim/bundle/black/AUTHORS.md [new file with mode: 0644]
.vim/bundle/black/CHANGES.md [new file with mode: 0644]
.vim/bundle/black/CONTRIBUTING.md [new file with mode: 0644]
.vim/bundle/black/Dockerfile [new file with mode: 0644]
.vim/bundle/black/LICENSE [new file with mode: 0644]
.vim/bundle/black/MANIFEST.in [new file with mode: 0644]
.vim/bundle/black/Pipfile [new file with mode: 0644]
.vim/bundle/black/Pipfile.lock [new file with mode: 0644]
.vim/bundle/black/README.md [new file with mode: 0644]
.vim/bundle/black/action.yml [new file with mode: 0644]
.vim/bundle/black/action/main.py [new file with mode: 0644]
.vim/bundle/black/autoload/black.vim [new file with mode: 0644]
.vim/bundle/black/docs/Makefile [new file with mode: 0644]
.vim/bundle/black/docs/_static/custom.css [new file with mode: 0644]
.vim/bundle/black/docs/_static/license.svg [new file with mode: 0644]
.vim/bundle/black/docs/_static/logo2-readme.png [new file with mode: 0644]
.vim/bundle/black/docs/_static/logo2.png [new file with mode: 0644]
.vim/bundle/black/docs/_static/pypi_template.svg [new file with mode: 0644]
.vim/bundle/black/docs/authors.md [new file with mode: 0644]
.vim/bundle/black/docs/change_log.md [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/flake8/.flake8 [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/flake8/setup.cfg [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/flake8/tox.ini [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/isort/.editorconfig [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/isort/.isort.cfg [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/isort/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/isort/setup.cfg [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/pylint/pylintrc [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/pylint/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/docs/compatible_configs/pylint/setup.cfg [new file with mode: 0644]
.vim/bundle/black/docs/conf.py [new file with mode: 0644]
.vim/bundle/black/docs/contributing/gauging_changes.md [new file with mode: 0644]
.vim/bundle/black/docs/contributing/index.rst [new file with mode: 0644]
.vim/bundle/black/docs/contributing/issue_triage.md [new file with mode: 0644]
.vim/bundle/black/docs/contributing/reference/reference_classes.rst [new file with mode: 0644]
.vim/bundle/black/docs/contributing/reference/reference_exceptions.rst [new file with mode: 0644]
.vim/bundle/black/docs/contributing/reference/reference_functions.rst [new file with mode: 0644]
.vim/bundle/black/docs/contributing/reference/reference_summary.rst [new file with mode: 0644]
.vim/bundle/black/docs/contributing/release_process.md [new file with mode: 0644]
.vim/bundle/black/docs/contributing/the_basics.md [new file with mode: 0644]
.vim/bundle/black/docs/faq.md [new file with mode: 0644]
.vim/bundle/black/docs/getting_started.md [new file with mode: 0644]
.vim/bundle/black/docs/guides/index.rst [new file with mode: 0644]
.vim/bundle/black/docs/guides/introducing_black_to_your_project.md [new file with mode: 0644]
.vim/bundle/black/docs/guides/using_black_with_other_tools.md [new file with mode: 0644]
.vim/bundle/black/docs/index.rst [new file with mode: 0644]
.vim/bundle/black/docs/integrations/editors.md [new file with mode: 0644]
.vim/bundle/black/docs/integrations/github_actions.md [new file with mode: 0644]
.vim/bundle/black/docs/integrations/index.rst [new file with mode: 0644]
.vim/bundle/black/docs/integrations/source_version_control.md [new file with mode: 0644]
.vim/bundle/black/docs/license.rst [new file with mode: 0644]
.vim/bundle/black/docs/make.bat [new file with mode: 0644]
.vim/bundle/black/docs/requirements.txt [new file with mode: 0644]
.vim/bundle/black/docs/the_black_code_style/current_style.md [new file with mode: 0644]
.vim/bundle/black/docs/the_black_code_style/future_style.md [new file with mode: 0644]
.vim/bundle/black/docs/the_black_code_style/index.rst [new file with mode: 0644]
.vim/bundle/black/docs/usage_and_configuration/black_as_a_server.md [new file with mode: 0644]
.vim/bundle/black/docs/usage_and_configuration/file_collection_and_discovery.md [new file with mode: 0644]
.vim/bundle/black/docs/usage_and_configuration/index.rst [new file with mode: 0644]
.vim/bundle/black/docs/usage_and_configuration/the_basics.md [new file with mode: 0644]
.vim/bundle/black/fuzz.py [new file with mode: 0644]
.vim/bundle/black/gallery/Dockerfile [new file with mode: 0644]
.vim/bundle/black/gallery/README.md [new file with mode: 0644]
.vim/bundle/black/gallery/gallery.py [new file with mode: 0755]
.vim/bundle/black/mypy.ini [new file with mode: 0644]
.vim/bundle/black/plugin/black.vim [new file with mode: 0644]
.vim/bundle/black/profiling/dict_big.py [new file with mode: 0644]
.vim/bundle/black/profiling/dict_huge.py [new file with mode: 0644]
.vim/bundle/black/profiling/list_big.py [new file with mode: 0644]
.vim/bundle/black/profiling/list_huge.py [new file with mode: 0644]
.vim/bundle/black/profiling/mix_big.py [new file with mode: 0644]
.vim/bundle/black/profiling/mix_huge.py [new file with mode: 0644]
.vim/bundle/black/profiling/mix_small.py [new file with mode: 0644]
.vim/bundle/black/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/scripts/__init__.py [new file with mode: 0644]
.vim/bundle/black/scripts/check_pre_commit_rev_in_example.py [new file with mode: 0644]
.vim/bundle/black/scripts/check_version_in_basics_example.py [new file with mode: 0644]
.vim/bundle/black/setup.cfg [new file with mode: 0644]
.vim/bundle/black/setup.py [new file with mode: 0644]
.vim/bundle/black/src/black/__init__.py [new file with mode: 0644]
.vim/bundle/black/src/black/__main__.py [new file with mode: 0644]
.vim/bundle/black/src/black/brackets.py [new file with mode: 0644]
.vim/bundle/black/src/black/cache.py [new file with mode: 0644]
.vim/bundle/black/src/black/comments.py [new file with mode: 0644]
.vim/bundle/black/src/black/concurrency.py [new file with mode: 0644]
.vim/bundle/black/src/black/const.py [new file with mode: 0644]
.vim/bundle/black/src/black/debug.py [new file with mode: 0644]
.vim/bundle/black/src/black/files.py [new file with mode: 0644]
.vim/bundle/black/src/black/handle_ipynb_magics.py [new file with mode: 0644]
.vim/bundle/black/src/black/linegen.py [new file with mode: 0644]
.vim/bundle/black/src/black/lines.py [new file with mode: 0644]
.vim/bundle/black/src/black/mode.py [new file with mode: 0644]
.vim/bundle/black/src/black/nodes.py [new file with mode: 0644]
.vim/bundle/black/src/black/numerics.py [new file with mode: 0644]
.vim/bundle/black/src/black/output.py [new file with mode: 0644]
.vim/bundle/black/src/black/parsing.py [new file with mode: 0644]
.vim/bundle/black/src/black/py.typed [new file with mode: 0644]
.vim/bundle/black/src/black/report.py [new file with mode: 0644]
.vim/bundle/black/src/black/rusty.py [new file with mode: 0644]
.vim/bundle/black/src/black/strings.py [new file with mode: 0644]
.vim/bundle/black/src/black/trans.py [new file with mode: 0644]
.vim/bundle/black/src/black_primer/__init__.py [new file with mode: 0644]
.vim/bundle/black/src/black_primer/cli.py [new file with mode: 0644]
.vim/bundle/black/src/black_primer/lib.py [new file with mode: 0644]
.vim/bundle/black/src/black_primer/primer.json [new file with mode: 0644]
.vim/bundle/black/src/blackd/__init__.py [new file with mode: 0644]
.vim/bundle/black/src/blackd/middlewares.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/Grammar.txt [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/LICENSE [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/PatternGrammar.txt [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/README [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/__init__.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/__init__.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/conv.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/driver.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/grammar.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/literals.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/parse.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/pgen.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/token.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pgen2/tokenize.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pygram.py [new file with mode: 0644]
.vim/bundle/black/src/blib2to3/pytree.py [new file with mode: 0644]
.vim/bundle/black/test_requirements.txt [new file with mode: 0644]
.vim/bundle/black/tests/__init__.py [new file with mode: 0644]
.vim/bundle/black/tests/conftest.py [new file with mode: 0644]
.vim/bundle/black/tests/data/async_as_identifier.py [new file with mode: 0644]
.vim/bundle/black/tests/data/beginning_backslash.py [new file with mode: 0644]
.vim/bundle/black/tests/data/blackd_diff.diff [new file with mode: 0644]
.vim/bundle/black/tests/data/blackd_diff.py [new file with mode: 0644]
.vim/bundle/black/tests/data/bracketmatch.py [new file with mode: 0644]
.vim/bundle/black/tests/data/cantfit.py [new file with mode: 0644]
.vim/bundle/black/tests/data/class_blank_parentheses.py [new file with mode: 0644]
.vim/bundle/black/tests/data/class_methods_new_line.py [new file with mode: 0644]
.vim/bundle/black/tests/data/collections.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comment_after_escaped_newline.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments3.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments4.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments5.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments6.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments7.py [new file with mode: 0644]
.vim/bundle/black/tests/data/comments_non_breaking_space.py [new file with mode: 0644]
.vim/bundle/black/tests/data/composition.py [new file with mode: 0644]
.vim/bundle/black/tests/data/composition_no_trailing_comma.py [new file with mode: 0644]
.vim/bundle/black/tests/data/debug_visitor.out [new file with mode: 0644]
.vim/bundle/black/tests/data/debug_visitor.py [new file with mode: 0644]
.vim/bundle/black/tests/data/decorators.py [new file with mode: 0644]
.vim/bundle/black/tests/data/docstring.py [new file with mode: 0644]
.vim/bundle/black/tests/data/docstring_no_string_normalization.py [new file with mode: 0644]
.vim/bundle/black/tests/data/empty_lines.py [new file with mode: 0644]
.vim/bundle/black/tests/data/empty_pyproject.toml [new file with mode: 0644]
.vim/bundle/black/tests/data/expression.diff [new file with mode: 0644]
.vim/bundle/black/tests/data/expression.py [new file with mode: 0644]
.vim/bundle/black/tests/data/expression_skip_magic_trailing_comma.diff [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtonoff.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtonoff2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtonoff3.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtonoff4.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtskip.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtskip2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtskip3.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtskip4.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtskip5.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fmtskip6.py [new file with mode: 0644]
.vim/bundle/black/tests/data/force_py36.py [new file with mode: 0644]
.vim/bundle/black/tests/data/force_pyi.py [new file with mode: 0644]
.vim/bundle/black/tests/data/fstring.py [new file with mode: 0644]
.vim/bundle/black/tests/data/function.py [new file with mode: 0644]
.vim/bundle/black/tests/data/function2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/function_trailing_comma.py [new file with mode: 0644]
.vim/bundle/black/tests/data/import_spacing.py [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/.gitignore [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.pie [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.pyi [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.pie [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.pyi [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.pie [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.pyi [new file with mode: 0644]
.vim/bundle/black/tests/data/include_exclude_tests/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_gitignore_tests/.gitignore [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_gitignore_tests/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_gitignore_tests/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a/.gitignore [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/tests/data/long_strings.py [new file with mode: 0644]
.vim/bundle/black/tests/data/long_strings__edge_case.py [new file with mode: 0644]
.vim/bundle/black/tests/data/long_strings__regression.py [new file with mode: 0644]
.vim/bundle/black/tests/data/long_strings_flag_disabled.py [new file with mode: 0644]
.vim/bundle/black/tests/data/missing_final_newline.diff [new file with mode: 0644]
.vim/bundle/black/tests/data/missing_final_newline.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/pyproject.toml [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/.gitignore [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/b.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/c.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/.gitignore [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/a.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/b.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/c.py [new file with mode: 0644]
.vim/bundle/black/tests/data/nested_gitignore_tests/x.py [new file with mode: 0644]
.vim/bundle/black/tests/data/non_python_notebook.ipynb [new file with mode: 0644]
.vim/bundle/black/tests/data/notebook_empty_metadata.ipynb [new file with mode: 0644]
.vim/bundle/black/tests/data/notebook_no_trailing_newline.ipynb [new file with mode: 0644]
.vim/bundle/black/tests/data/notebook_trailing_newline.ipynb [new file with mode: 0644]
.vim/bundle/black/tests/data/notebook_which_cant_be_parsed.ipynb [new file with mode: 0644]
.vim/bundle/black/tests/data/notebook_without_changes.ipynb [new file with mode: 0644]
.vim/bundle/black/tests/data/numeric_literals.py [new file with mode: 0644]
.vim/bundle/black/tests/data/numeric_literals_py2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/numeric_literals_skip_underscores.py [new file with mode: 0644]
.vim/bundle/black/tests/data/pep_570.py [new file with mode: 0644]
.vim/bundle/black/tests/data/pep_572.py [new file with mode: 0644]
.vim/bundle/black/tests/data/pep_572_do_not_remove_parens.py [new file with mode: 0644]
.vim/bundle/black/tests/data/pep_572_py310.py [new file with mode: 0644]
.vim/bundle/black/tests/data/pep_572_py39.py [new file with mode: 0644]
.vim/bundle/black/tests/data/pep_572_remove_parens.py [new file with mode: 0644]
.vim/bundle/black/tests/data/percent_precedence.py [new file with mode: 0644]
.vim/bundle/black/tests/data/python2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/python2_print_function.py [new file with mode: 0755]
.vim/bundle/black/tests/data/python2_unicode_literals.py [new file with mode: 0644]
.vim/bundle/black/tests/data/python37.py [new file with mode: 0644]
.vim/bundle/black/tests/data/python38.py [new file with mode: 0644]
.vim/bundle/black/tests/data/python39.py [new file with mode: 0644]
.vim/bundle/black/tests/data/remove_parens.py [new file with mode: 0644]
.vim/bundle/black/tests/data/slices.py [new file with mode: 0644]
.vim/bundle/black/tests/data/string_prefixes.py [new file with mode: 0644]
.vim/bundle/black/tests/data/string_quotes.py [new file with mode: 0644]
.vim/bundle/black/tests/data/stub.pyi [new file with mode: 0644]
.vim/bundle/black/tests/data/trailing_comma_optional_parens1.py [new file with mode: 0644]
.vim/bundle/black/tests/data/trailing_comma_optional_parens2.py [new file with mode: 0644]
.vim/bundle/black/tests/data/trailing_comma_optional_parens3.py [new file with mode: 0644]
.vim/bundle/black/tests/data/tricky_unicode_symbols.py [new file with mode: 0644]
.vim/bundle/black/tests/data/tupleassign.py [new file with mode: 0644]
.vim/bundle/black/tests/empty.toml [new file with mode: 0644]
.vim/bundle/black/tests/optional.py [new file with mode: 0644]
.vim/bundle/black/tests/test.toml [new file with mode: 0644]
.vim/bundle/black/tests/test_black.py [new file with mode: 0644]
.vim/bundle/black/tests/test_blackd.py [new file with mode: 0644]
.vim/bundle/black/tests/test_format.py [new file with mode: 0644]
.vim/bundle/black/tests/test_ipynb.py [new file with mode: 0644]
.vim/bundle/black/tests/test_no_ipynb.py [new file with mode: 0644]
.vim/bundle/black/tests/test_primer.py [new file with mode: 0644]
.vim/bundle/black/tests/util.py [new file with mode: 0644]
.vim/bundle/black/tox.ini [new file with mode: 0644]

diff --git a/.vim/bundle/black/.coveragerc b/.vim/bundle/black/.coveragerc
new file mode 100644 (file)
index 0000000..5577e49
--- /dev/null
@@ -0,0 +1,9 @@
+[report]
+omit =
+  src/blib2to3/*
+  tests/data/*
+  */site-packages/*
+  .tox/*
+
+[run]
+relative_files = True
diff --git a/.vim/bundle/black/.flake8 b/.vim/bundle/black/.flake8
new file mode 100644 (file)
index 0000000..ae11a13
--- /dev/null
@@ -0,0 +1,7 @@
+[flake8]
+ignore = E203, E266, E501, W503
+# line length is intentionally set to 80 here because black uses Bugbear
+# See https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html#line-length for more details
+max-line-length = 80
+max-complexity = 18
+select = B,C,E,F,W,T4,B9
diff --git a/.vim/bundle/black/.github/CODE_OF_CONDUCT.md b/.vim/bundle/black/.github/CODE_OF_CONDUCT.md
new file mode 100644 (file)
index 0000000..dbd5f23
--- /dev/null
@@ -0,0 +1,11 @@
+# Treat each other well
+
+Everyone participating in the _Black_ project, and in particular in the issue tracker,
+pull requests, and social media activity, is expected to treat other people with respect
+and more generally to follow the guidelines articulated in the
+[Python Community Code of Conduct](https://www.python.org/psf/codeofconduct/).
+
+At the same time, humor is encouraged. In fact, basic familiarity with Monty Python's
+Flying Circus is expected. We are not savages.
+
+And if you _really_ need to slap somebody, do it with a fish while dancing.
diff --git a/.vim/bundle/black/.github/ISSUE_TEMPLATE/bug_report.md b/.vim/bundle/black/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644 (file)
index 0000000..e8d232c
--- /dev/null
@@ -0,0 +1,47 @@
+---
+name: Bug report
+about: Create a report to help us improve Black's quality
+title: ""
+labels: "T: bug"
+assignees: ""
+---
+
+**Describe the bug**
+
+<!-- A clear and concise description of what the bug is. -->
+
+**To Reproduce**
+
+<!-- Steps to reproduce the behavior:
+
+For example:
+1. Take this file '...'
+1. Run _Black_ on it with these arguments '...'
+1. See error -->
+
+**Expected behavior**
+
+<!-- A clear and concise description of what you expected to happen. -->
+
+**Environment (please complete the following information):**
+
+- Version: <!-- e.g. [main] -->
+- OS and Python version: <!-- e.g. [Linux/Python 3.7.4rc1] -->
+
+**Does this bug also happen on main?**
+
+<!-- To answer this, you have two options:
+
+1. Use the online formatter at <https://black.vercel.app/?version=main>, which will use
+   the latest main branch.
+1. Or run _Black_ on your machine:
+   - create a new virtualenv (make sure it's the same Python version);
+   - clone this repository;
+   - run `pip install -e .[d,python2]`;
+   - run `pip install -r test_requirements.txt`
+   - make sure it's sane by running `python -m pytest`; and
+   - run `black` like you did last time. -->
+
+**Additional context**
+
+<!-- Add any other context about the problem here. -->
diff --git a/.vim/bundle/black/.github/ISSUE_TEMPLATE/config.yml b/.vim/bundle/black/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644 (file)
index 0000000..3f6641c
--- /dev/null
@@ -0,0 +1,12 @@
+# See also: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
+
+# This is the default and blank issues are useful so let's keep 'em.
+blank_issues_enabled: true
+
+contact_links:
+  - name: Chat on Python Discord
+    url: https://discord.gg/RtVdv86PrH
+    about: |
+      User support, questions, and other lightweight requests can be
+      handled via the #black-formatter text channel we have on Python
+      Discord.
diff --git a/.vim/bundle/black/.github/ISSUE_TEMPLATE/docs-issue.md b/.vim/bundle/black/.github/ISSUE_TEMPLATE/docs-issue.md
new file mode 100644 (file)
index 0000000..d362b86
--- /dev/null
@@ -0,0 +1,27 @@
+---
+name: Documentation
+about: Report a problem with or suggest something for the documentation
+title: ""
+labels: "T: documentation"
+assignees: ""
+---
+
+**Is this related to a problem? Please describe.**
+
+<!-- A clear and concise description of what the problem is.
+e.g. I'm always frustrated when [...] / I wished that [...] -->
+
+**Describe the solution you'd like**
+
+<!-- A clear and concise description of what you want to
+happen or see changed. -->
+
+**Describe alternatives you've considered**
+
+<!-- A clear and concise description of any
+alternative solutions or features you've considered. -->
+
+**Additional context**
+
+<!-- Add any other context or screenshots about the issue
+here. -->
diff --git a/.vim/bundle/black/.github/ISSUE_TEMPLATE/feature_request.md b/.vim/bundle/black/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644 (file)
index 0000000..a34e4a0
--- /dev/null
@@ -0,0 +1,27 @@
+---
+name: Feature request
+about: Suggest an idea for this project
+title: ""
+labels: "T: enhancement"
+assignees: ""
+---
+
+**Is your feature request related to a problem? Please describe.**
+
+<!-- A clear and concise description of what the problem is.
+e.g. I'm always frustrated when [...] -->
+
+**Describe the solution you'd like**
+
+<!-- A clear and concise description of what you want to
+happen. -->
+
+**Describe alternatives you've considered**
+
+<!-- A clear and concise description of any
+alternative solutions or features you've considered. -->
+
+**Additional context**
+
+<!-- Add any other context or screenshots about the feature request
+here. -->
diff --git a/.vim/bundle/black/.github/ISSUE_TEMPLATE/style_issue.md b/.vim/bundle/black/.github/ISSUE_TEMPLATE/style_issue.md
new file mode 100644 (file)
index 0000000..2e4343a
--- /dev/null
@@ -0,0 +1,37 @@
+---
+name: Style issue
+about: Help us improve the Black style
+title: ""
+labels: "T: design"
+assignees: ""
+---
+
+**Describe the style change**
+
+<!-- A clear and concise description of how the style can be
+improved. -->
+
+**Examples in the current _Black_ style**
+
+<!-- Think of some short code snippets that show
+how the current _Black_ style is not great: -->
+
+```python
+def f():
+    "Make sure this code is blackened"""
+    pass
+```
+
+**Desired style**
+
+<!-- How do you think _Black_ should format the above snippets: -->
+
+```python
+def f(
+    ):
+    pass
+```
+
+**Additional context**
+
+<!-- Add any other context about the problem here. -->
diff --git a/.vim/bundle/black/.github/PULL_REQUEST_TEMPLATE.md b/.vim/bundle/black/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644 (file)
index 0000000..833cd16
--- /dev/null
@@ -0,0 +1,36 @@
+<!-- Hello! Thanks for submitting a PR. To help make things go a bit more
+     smoothly we would appreciate that you go through this template. -->
+
+### Description
+
+<!-- Good things to put here include: reasoning for the change (please link
+     any relevant issues!), any noteworthy (or hacky) choices to be aware of,
+     or what the problem resolved here looked like ... we won't mind a ranty
+     story :) -->
+
+### Checklist - did you ...
+
+<!-- If any of the following items aren't relevant for your contribution
+     please still tick them so we know you've gone through the checklist.
+
+    All user-facing changes should get an entry. Otherwise, signal to us
+    this should get the magical label to silence the CHANGELOG entry check.
+    Tests are required for bugfixes and new features. Documentation changes
+    are necessary for formatting and most enhancement changes. -->
+
+- [ ] Add a CHANGELOG entry if necessary?
+- [ ] Add / update tests if necessary?
+- [ ] Add new / update outdated documentation?
+
+<!-- Just as a reminder, everyone in all psf/black spaces including PRs
+     must follow the PSF Code of Conduct (link below).
+
+     Finally, once again thanks for your time and effort. If you have any
+     feedback in regards to your experience contributing here, please
+     let us know!
+
+     Helpful links:
+
+      PSF COC: https://www.python.org/psf/conduct/
+      Contributing docs: https://black.readthedocs.io/en/latest/contributing/index.html
+      Chat on Python Discord: https://discord.gg/RtVdv86PrH -->
diff --git a/.vim/bundle/black/.github/workflows/changelog.yml b/.vim/bundle/black/.github/workflows/changelog.yml
new file mode 100644 (file)
index 0000000..d7ee505
--- /dev/null
@@ -0,0 +1,21 @@
+name: changelog
+
+on:
+  pull_request:
+    types: [opened, synchronize, labeled, unlabeled, reopened]
+
+jobs:
+  build:
+    name: Changelog Entry Check
+
+    runs-on: ubuntu-latest
+
+    steps:
+      - uses: actions/checkout@v2
+
+      - name: Grep CHANGES.md for PR number
+        if: contains(github.event.pull_request.labels.*.name, 'skip news') != true
+        run: |
+          grep -Pz "\((\n\s*)?#${{ github.event.pull_request.number }}(\n\s*)?\)" CHANGES.md || \
+          (echo "Please add '(#${{ github.event.pull_request.number }})' change line to CHANGES.md" && \
+          exit 1)
diff --git a/.vim/bundle/black/.github/workflows/doc.yml b/.vim/bundle/black/.github/workflows/doc.yml
new file mode 100644 (file)
index 0000000..5689d28
--- /dev/null
@@ -0,0 +1,33 @@
+name: Documentation Build
+
+on: [push, pull_request]
+
+jobs:
+  build:
+    # We want to run on external PRs, but not on our own internal PRs as they'll be run
+    # by the push to the branch. Without this if check, checks are duplicated since
+    # internal PRs match both the push and pull_request events.
+    if:
+      github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
+      github.repository
+
+    strategy:
+      fail-fast: false
+      matrix:
+        os: [ubuntu-latest, windows-latest]
+
+    runs-on: ${{ matrix.os }}
+    steps:
+      - uses: actions/checkout@v2
+
+      - name: Set up latest Python
+        uses: actions/setup-python@v2
+
+      - name: Install dependencies
+        run: |
+          python -m pip install --upgrade pip setuptools wheel
+          python -m pip install -e ".[d]"
+          python -m pip install -r "docs/requirements.txt"
+
+      - name: Build documentation
+        run: sphinx-build -a -b html -W --keep-going docs/ docs/_build
diff --git a/.vim/bundle/black/.github/workflows/docker.yml b/.vim/bundle/black/.github/workflows/docker.yml
new file mode 100644 (file)
index 0000000..0825385
--- /dev/null
@@ -0,0 +1,53 @@
+name: docker
+
+on:
+  push:
+    branches:
+      - "main"
+  release:
+    types: [published]
+
+jobs:
+  docker:
+    if: github.repository == 'psf/black'
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v2
+
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@v1
+
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+
+      - name: Login to DockerHub
+        uses: docker/login-action@v1
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+
+      - name: Check + set version tag
+        run:
+          echo "GIT_TAG=$(git describe --candidates=0 --tags 2> /dev/null || echo
+          latest_non_release)" >> $GITHUB_ENV
+
+      - name: Build and push
+        uses: docker/build-push-action@v2
+        with:
+          context: .
+          platforms: linux/amd64,linux/arm64
+          push: true
+          tags: pyfound/black:latest,pyfound/black:${{ env.GIT_TAG }}
+
+      - name: Build and push latest_release tag
+        if: ${{ github.event_name == 'release' && github.event.action == 'published' }}
+        uses: docker/build-push-action@v2
+        with:
+          context: .
+          platforms: linux/amd64,linux/arm64
+          push: true
+          tags: pyfound/black:latest_release
+
+      - name: Image digest
+        run: echo ${{ steps.docker_build.outputs.digest }}
diff --git a/.vim/bundle/black/.github/workflows/fuzz.yml b/.vim/bundle/black/.github/workflows/fuzz.yml
new file mode 100644 (file)
index 0000000..146277a
--- /dev/null
@@ -0,0 +1,35 @@
+name: Fuzz
+
+on: [push, pull_request]
+
+jobs:
+  build:
+    # We want to run on external PRs, but not on our own internal PRs as they'll be run
+    # by the push to the branch. Without this if check, checks are duplicated since
+    # internal PRs match both the push and pull_request events.
+    if:
+      github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
+      github.repository
+
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"]
+
+    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 dependencies
+        run: |
+          python -m pip install --upgrade pip
+          python -m pip install --upgrade tox
+
+      - name: Run fuzz tests
+        run: |
+          tox -e fuzz
diff --git a/.vim/bundle/black/.github/workflows/lint.yml b/.vim/bundle/black/.github/workflows/lint.yml
new file mode 100644 (file)
index 0000000..51f6d02
--- /dev/null
@@ -0,0 +1,28 @@
+name: Lint
+
+on: [push, pull_request]
+
+jobs:
+  build:
+    # We want to run on external PRs, but not on our own internal PRs as they'll be run
+    # by the push to the branch. Without this if check, checks are duplicated since
+    # internal PRs match both the push and pull_request events.
+    if:
+      github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
+      github.repository
+
+    runs-on: ubuntu-latest
+
+    steps:
+      - uses: actions/checkout@v2
+
+      - name: Set up Python
+        uses: actions/setup-python@v2
+
+      - name: Install dependencies
+        run: |
+          python -m pip install --upgrade pip
+          python -m pip install -e '.[d]'
+
+      - name: Lint
+        uses: pre-commit/action@v2.0.2
diff --git a/.vim/bundle/black/.github/workflows/primer.yml b/.vim/bundle/black/.github/workflows/primer.yml
new file mode 100644 (file)
index 0000000..5fa6ac0
--- /dev/null
@@ -0,0 +1,47 @@
+name: Primer
+
+on:
+  push:
+    paths-ignore:
+      - "docs/**"
+      - "*.md"
+
+  pull_request:
+    paths-ignore:
+      - "docs/**"
+      - "*.md"
+
+jobs:
+  build:
+    # We want to run on external PRs, but not on our own internal PRs as they'll be run
+    # by the push to the branch. Without this if check, checks are duplicated since
+    # internal PRs match both the push and pull_request events.
+    if:
+      github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
+      github.repository
+
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"]
+        os: [ubuntu-latest, windows-latest]
+
+    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 dependencies
+        run: |
+          python -m pip install --upgrade pip
+          python -m pip install -e ".[d,jupyter]"
+
+      - name: Primer run
+        env:
+          pythonioencoding: utf-8
+        run: |
+          black-primer
diff --git a/.vim/bundle/black/.github/workflows/pypi_upload.yml b/.vim/bundle/black/.github/workflows/pypi_upload.yml
new file mode 100644 (file)
index 0000000..201d94f
--- /dev/null
@@ -0,0 +1,31 @@
+name: pypi_upload
+
+on:
+  release:
+    types: [published]
+
+jobs:
+  build:
+    name: PyPI Upload
+    runs-on: ubuntu-latest
+
+    steps:
+      - uses: actions/checkout@v2
+
+      - name: Set up Python
+        uses: actions/setup-python@v2
+
+      - name: Install latest pip, setuptools, twine + wheel
+        run: |
+          python -m pip install --upgrade pip setuptools twine wheel
+
+      - name: Build wheels
+        run: |
+          python setup.py bdist_wheel
+          python setup.py sdist
+
+      - name: Upload to PyPI via Twine
+        env:
+          TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
+        run: |
+          twine upload --verbose -u '__token__' dist/*
diff --git a/.vim/bundle/black/.github/workflows/test.yml b/.vim/bundle/black/.github/workflows/test.yml
new file mode 100644 (file)
index 0000000..296ac34
--- /dev/null
@@ -0,0 +1,76 @@
+name: Test
+
+on:
+  push:
+    paths-ignore:
+      - "docs/**"
+      - "*.md"
+
+  pull_request:
+    paths-ignore:
+      - "docs/**"
+      - "*.md"
+
+jobs:
+  build:
+    # We want to run on external PRs, but not on our own internal PRs as they'll be run
+    # by the push to the branch. Without this if check, checks are duplicated since
+    # internal PRs match both the push and pull_request events.
+    if:
+      github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
+      github.repository
+
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"]
+        os: [ubuntu-latest, macOS-latest, windows-latest]
+
+    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 dependencies
+        run: |
+          python -m pip install --upgrade pip
+          python -m pip install --upgrade tox
+
+      - name: Unit tests
+        run: |
+          tox -e ci-py -- -v --color=yes
+
+      - name: Publish coverage to Coveralls
+        # If pushed / is a pull request against main repo AND
+        # we're running on Linux (this action only supports Linux)
+        if:
+          ((github.event_name == 'push' && github.repository == 'psf/black') ||
+          github.event.pull_request.base.repo.full_name == 'psf/black') && matrix.os ==
+          'ubuntu-latest'
+
+        uses: AndreMiras/coveralls-python-action@v20201129
+        with:
+          github-token: ${{ secrets.GITHUB_TOKEN }}
+          parallel: true
+          flag-name: py${{ matrix.python-version }}-${{ matrix.os }}
+          debug: true
+
+  coveralls-finish:
+    needs: build
+    # If pushed / is a pull request against main repo
+    if:
+      (github.event_name == 'push' && github.repository == 'psf/black') ||
+      github.event.pull_request.base.repo.full_name == 'psf/black'
+
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - name: Coveralls finished
+        uses: AndreMiras/coveralls-python-action@v20201129
+        with:
+          parallel-finished: true
+          debug: true
diff --git a/.vim/bundle/black/.github/workflows/upload_binary.yml b/.vim/bundle/black/.github/workflows/upload_binary.yml
new file mode 100644 (file)
index 0000000..8f44d4e
--- /dev/null
@@ -0,0 +1,59 @@
+name: Upload self-contained binaries
+
+on:
+  release:
+    types: [published]
+
+jobs:
+  build:
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        os: [windows-2019, ubuntu-20.04, macos-latest]
+        include:
+          - os: windows-2019
+            pathsep: ";"
+            asset_name: black_windows.exe
+            executable_mime: "application/vnd.microsoft.portable-executable"
+            platform: windows
+          - os: ubuntu-20.04
+            pathsep: ":"
+            asset_name: black_linux
+            executable_mime: "application/x-executable"
+            platform: unix
+          - os: macos-latest
+            pathsep: ":"
+            asset_name: black_macos
+            executable_mime: "application/x-mach-binary"
+            platform: macos
+
+    steps:
+      - uses: actions/checkout@v2
+
+      - name: Set up latest Python
+        uses: actions/setup-python@v2
+        with:
+          python-version: "*"
+
+      - name: Install dependencies
+        run: |
+          python -m pip install --upgrade pip wheel setuptools
+          python -m pip install .
+          python -m pip install pyinstaller
+
+      - name: Build binary
+        run: >
+          python -m PyInstaller -F --name ${{ matrix.asset_name }} --add-data
+          'src/blib2to3${{ matrix.pathsep }}blib2to3' --hidden-import platformdirs.${{
+          matrix.platform }} src/black/__main__.py
+
+      - name: Upload binary as release asset
+        uses: actions/upload-release-asset@v1
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+        with:
+          upload_url: ${{ github.event.release.upload_url }}
+          asset_path: dist/${{ matrix.asset_name }}
+          asset_name: ${{ matrix.asset_name }}
+          asset_content_type: ${{ matrix.executable_mime }}
diff --git a/.vim/bundle/black/.github/workflows/uvloop_test.yml b/.vim/bundle/black/.github/workflows/uvloop_test.yml
new file mode 100644 (file)
index 0000000..5d23ec6
--- /dev/null
@@ -0,0 +1,45 @@
+name: test uvloop
+
+on:
+  push:
+    paths-ignore:
+      - "docs/**"
+      - "*.md"
+
+  pull_request:
+    paths-ignore:
+      - "docs/**"
+      - "*.md"
+
+jobs:
+  build:
+    # We want to run on external PRs, but not on our own internal PRs as they'll be run
+    # by the push to the branch. Without this if check, checks are duplicated since
+    # internal PRs match both the push and pull_request events.
+    if:
+      github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
+      github.repository
+
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        os: [ubuntu-latest, macOS-latest]
+
+    steps:
+      - uses: actions/checkout@v2
+
+      - name: Set up Python ${{ matrix.python-version }}
+        uses: actions/setup-python@v2
+
+      - name: Install latest pip
+        run: |
+          python -m pip install --upgrade pip
+
+      - name: Test uvloop Extra Install
+        run: |
+          python -m pip install -e ".[uvloop]"
+
+      - name: Primer uvloop run
+        run: |
+          black-primer
diff --git a/.vim/bundle/black/.gitignore b/.vim/bundle/black/.gitignore
new file mode 100644 (file)
index 0000000..f81bce8
--- /dev/null
@@ -0,0 +1,21 @@
+.venv
+.coverage
+.coverage.*
+_build
+.DS_Store
+.vscode
+docs/_static/pypi.svg
+.tox
+__pycache__
+black.egg-info
+build/
+dist/
+pip-wheel-metadata/
+src/_black_version.py
+.idea
+.eggs
+.dmypy.json
+*.swp
+.hypothesis/
+venv/
+.ipynb_checkpoints/
diff --git a/.vim/bundle/black/.pre-commit-config.yaml b/.vim/bundle/black/.pre-commit-config.yaml
new file mode 100644 (file)
index 0000000..a3cd663
--- /dev/null
@@ -0,0 +1,63 @@
+# Note: don't use this config for your own repositories. Instead, see
+# "Version control integration" in docs/integrations/source_version_control.md
+exclude: ^(src/blib2to3/|profiling/|tests/data/)
+repos:
+  - repo: local
+    hooks:
+      - id: black
+        name: black
+        language: system
+        entry: black
+        minimum_pre_commit_version: 2.9.2
+        require_serial: true
+        types_or: [python, pyi]
+
+      - id: check-pre-commit-rev-in-example
+        name: Check pre-commit rev in example
+        language: python
+        entry: python -m scripts.check_pre_commit_rev_in_example
+        files: '(CHANGES\.md|source_version_control\.md)$'
+        additional_dependencies:
+          &version_check_dependencies [
+            commonmark==0.9.1,
+            pyyaml==5.4.1,
+            beautifulsoup4==4.9.3,
+          ]
+
+      - id: check-version-in-the-basics-example
+        name: Check black version in the basics example
+        language: python
+        entry: python -m scripts.check_version_in_basics_example
+        files: '(CHANGES\.md|the_basics\.md)$'
+        additional_dependencies: *version_check_dependencies
+
+  - repo: https://gitlab.com/pycqa/flake8
+    rev: 3.9.2
+    hooks:
+      - id: flake8
+        additional_dependencies: [flake8-bugbear]
+
+  - repo: https://github.com/pre-commit/mirrors-mypy
+    rev: v0.910
+    hooks:
+      - id: mypy
+        exclude: ^docs/conf.py
+        additional_dependencies:
+          - types-dataclasses >= 0.1.3
+          - types-PyYAML
+          - tomli >= 0.2.6, < 2.0.0
+          - types-typed-ast >= 1.4.1
+          - click >= 8.0.0
+          - platformdirs >= 2.1.0
+
+  - repo: https://github.com/pre-commit/mirrors-prettier
+    rev: v2.3.2
+    hooks:
+      - id: prettier
+        exclude: ^Pipfile\.lock
+
+  - repo: https://github.com/pre-commit/pre-commit-hooks
+    rev: v4.0.1
+    hooks:
+      - id: end-of-file-fixer
+      - id: trailing-whitespace
diff --git a/.vim/bundle/black/.pre-commit-hooks.yaml b/.vim/bundle/black/.pre-commit-hooks.yaml
new file mode 100644 (file)
index 0000000..1379570
--- /dev/null
@@ -0,0 +1,18 @@
+- id: black
+  name: black
+  description: "Black: The uncompromising Python code formatter"
+  entry: black
+  language: python
+  minimum_pre_commit_version: 2.9.2
+  require_serial: true
+  types_or: [python, pyi]
+- id: black-jupyter
+  name: black-jupyter
+  description:
+    "Black: The uncompromising Python code formatter (with Jupyter Notebook support)"
+  entry: black
+  language: python
+  minimum_pre_commit_version: 2.9.2
+  require_serial: true
+  types_or: [python, pyi, jupyter]
+  additional_dependencies: [".[jupyter]"]
diff --git a/.vim/bundle/black/.prettierrc.yaml b/.vim/bundle/black/.prettierrc.yaml
new file mode 100644 (file)
index 0000000..beda5ba
--- /dev/null
@@ -0,0 +1,3 @@
+proseWrap: always
+printWidth: 88
+endOfLine: auto
diff --git a/.vim/bundle/black/.readthedocs.yaml b/.vim/bundle/black/.readthedocs.yaml
new file mode 100644 (file)
index 0000000..24eb3ea
--- /dev/null
@@ -0,0 +1,14 @@
+version: 2
+
+formats:
+  - htmlzip
+
+python:
+  version: 3.8
+  install:
+    - requirements: docs/requirements.txt
+
+    - method: pip
+      path: .
+      extra_requirements:
+        - d
diff --git a/.vim/bundle/black/AUTHORS.md b/.vim/bundle/black/AUTHORS.md
new file mode 100644 (file)
index 0000000..8d112ea
--- /dev/null
@@ -0,0 +1,185 @@
+# Authors
+
+Glued together by [Łukasz Langa](mailto:lukasz@langa.pl).
+
+Maintained with [Carol Willing](mailto:carolcode@willingconsulting.com),
+[Carl Meyer](mailto:carl@oddbird.net),
+[Jelle Zijlstra](mailto:jelle.zijlstra@gmail.com),
+[Mika Naylor](mailto:mail@autophagy.io),
+[Zsolt Dollenstein](mailto:zsol.zsol@gmail.com),
+[Cooper Lees](mailto:me@cooperlees.com), and Richard Si.
+
+Multiple contributions by:
+
+- [Abdur-Rahmaan Janhangeer](mailto:arj.python@gmail.com)
+- [Adam Johnson](mailto:me@adamj.eu)
+- [Adam Williamson](mailto:adamw@happyassassin.net)
+- [Alexander Huynh](mailto:github@grande.coffee)
+- [Alex Vandiver](mailto:github@chmrr.net)
+- [Allan Simon](mailto:allan.simon@supinfo.com)
+- Anders-Petter Ljungquist
+- [Andrew Thorp](mailto:andrew.thorp.dev@gmail.com)
+- [Andrew Zhou](mailto:andrewfzhou@gmail.com)
+- [Andrey](mailto:dyuuus@yandex.ru)
+- [Andy Freeland](mailto:andy@andyfreeland.net)
+- [Anthony Sottile](mailto:asottile@umich.edu)
+- [Arjaan Buijk](mailto:arjaan.buijk@gmail.com)
+- [Arnav Borbornah](mailto:arnavborborah11@gmail.com)
+- [Artem Malyshev](mailto:proofit404@gmail.com)
+- [Asger Hautop Drewsen](mailto:asgerdrewsen@gmail.com)
+- [Augie Fackler](mailto:raf@durin42.com)
+- [Aviskar KC](mailto:aviskarkc10@gmail.com)
+- Batuhan Taşkaya
+- [Benjamin Wohlwend](mailto:bw@piquadrat.ch)
+- [Benjamin Woodruff](mailto:github@benjam.info)
+- [Bharat Raghunathan](mailto:bharatraghunthan9767@gmail.com)
+- [Brandt Bucher](mailto:brandtbucher@gmail.com)
+- [Brett Cannon](mailto:brett@python.org)
+- [Bryan Bugyi](mailto:bryan.bugyi@rutgers.edu)
+- [Bryan Forbes](mailto:bryan@reigndropsfall.net)
+- [Calum Lind](mailto:calumlind@gmail.com)
+- [Charles](mailto:peacech@gmail.com)
+- Charles Reid
+- [Christian Clauss](mailto:cclauss@bluewin.ch)
+- [Christian Heimes](mailto:christian@python.org)
+- [Chuck Wooters](mailto:chuck.wooters@microsoft.com)
+- [Chris Rose](mailto:offline@offby1.net)
+- Codey Oxley
+- [Cong](mailto:congusbongus@gmail.com)
+- [Cooper Ry Lees](mailto:me@cooperlees.com)
+- [Dan Davison](mailto:dandavison7@gmail.com)
+- [Daniel Hahler](mailto:github@thequod.de)
+- [Daniel M. Capella](mailto:polycitizen@gmail.com)
+- Daniele Esposti
+- [David Hotham](mailto:david.hotham@metaswitch.com)
+- [David Lukes](mailto:dafydd.lukes@gmail.com)
+- [David Szotten](mailto:davidszotten@gmail.com)
+- [Denis Laxalde](mailto:denis@laxalde.org)
+- [Douglas Thor](mailto:dthor@transphormusa.com)
+- dylanjblack
+- [Eli Treuherz](mailto:eli@treuherz.com)
+- [Emil Hessman](mailto:emil@hessman.se)
+- [Felix Kohlgrüber](mailto:felix.kohlgrueber@gmail.com)
+- [Florent Thiery](mailto:fthiery@gmail.com)
+- Francisco
+- [Giacomo Tagliabue](mailto:giacomo.tag@gmail.com)
+- [Greg Gandenberger](mailto:ggandenberger@shoprunner.com)
+- [Gregory P. Smith](mailto:greg@krypto.org)
+- Gustavo Camargo
+- hauntsaninja
+- [Hadi Alqattan](mailto:alqattanhadizaki@gmail.com)
+- [Hassan Abouelela](mailto:hassan@hassanamr.com)
+- [Heaford](mailto:dan@heaford.com)
+- [Hugo Barrera](mailto::hugo@barrera.io)
+- Hugo van Kemenade
+- [Hynek Schlawack](mailto:hs@ox.cx)
+- [Ivan Katanić](mailto:ivan.katanic@gmail.com)
+- [Jakub Kadlubiec](mailto:jakub.kadlubiec@skyscanner.net)
+- [Jakub Warczarek](mailto:jakub.warczarek@gmail.com)
+- [Jan Hnátek](mailto:jan.hnatek@gmail.com)
+- [Jason Fried](mailto:me@jasonfried.info)
+- [Jason Friedland](mailto:jason@friedland.id.au)
+- [jgirardet](mailto:ijkl@netc.fr)
+- Jim Brännlund
+- [Jimmy Jia](mailto:tesrin@gmail.com)
+- [Joe Antonakakis](mailto:jma353@cornell.edu)
+- [Jon Dufresne](mailto:jon.dufresne@gmail.com)
+- [Jonas Obrist](mailto:ojiidotch@gmail.com)
+- [Jonty Wareing](mailto:jonty@jonty.co.uk)
+- [Jose Nazario](mailto:jose.monkey.org@gmail.com)
+- [Joseph Larson](mailto:larson.joseph@gmail.com)
+- [Josh Bode](mailto:joshbode@fastmail.com)
+- [Josh Holland](mailto:anowlcalledjosh@gmail.com)
+- [Joshua Cannon](mailto:joshdcannon@gmail.com)
+- [José Padilla](mailto:jpadilla@webapplicate.com)
+- [Juan Luis Cano Rodríguez](mailto:hello@juanlu.space)
+- [kaiix](mailto:kvn.hou@gmail.com)
+- [Katie McLaughlin](mailto:katie@glasnt.com)
+- Katrin Leinweber
+- [Keith Smiley](mailto:keithbsmiley@gmail.com)
+- [Kenyon Ralph](mailto:kenyon@kenyonralph.com)
+- [Kevin Kirsche](mailto:Kev.Kirsche+GitHub@gmail.com)
+- [Kyle Hausmann](mailto:kyle.hausmann@gmail.com)
+- [Kyle Sunden](mailto:sunden@wisc.edu)
+- Lawrence Chan
+- [Linus Groh](mailto:mail@linusgroh.de)
+- [Loren Carvalho](mailto:comradeloren@gmail.com)
+- [Luka Sterbic](mailto:luka.sterbic@gmail.com)
+- [LukasDrude](mailto:mail@lukas-drude.de)
+- Mahmoud Hossam
+- Mariatta
+- [Matt VanEseltine](mailto:vaneseltine@gmail.com)
+- [Matthew Clapp](mailto:itsayellow+dev@gmail.com)
+- [Matthew Walster](mailto:matthew@walster.org)
+- Max Smolens
+- [Michael Aquilina](mailto:michaelaquilina@gmail.com)
+- [Michael Flaxman](mailto:michael.flaxman@gmail.com)
+- [Michael J. Sullivan](mailto:sully@msully.net)
+- [Michael McClimon](mailto:michael@mcclimon.org)
+- [Miguel Gaiowski](mailto:miggaiowski@gmail.com)
+- [Mike](mailto:roshi@fedoraproject.org)
+- [mikehoyio](mailto:mikehoy@gmail.com)
+- [Min ho Kim](mailto:minho42@gmail.com)
+- [Miroslav Shubernetskiy](mailto:miroslav@miki725.com)
+- MomIsBestFriend
+- [Nathan Goldbaum](mailto:ngoldbau@illinois.edu)
+- [Nathan Hunt](mailto:neighthan.hunt@gmail.com)
+- [Neraste](mailto:neraste.herr10@gmail.com)
+- [Nikolaus Waxweiler](mailto:madigens@gmail.com)
+- [Ofek Lev](mailto:ofekmeister@gmail.com)
+- [Osaetin Daniel](mailto:osaetindaniel@gmail.com)
+- [otstrel](mailto:otstrel@gmail.com)
+- [Pablo Galindo](mailto:Pablogsal@gmail.com)
+- [Paul Ganssle](mailto:p.ganssle@gmail.com)
+- [Paul Meinhardt](mailto:mnhrdt@gmail.com)
+- [Peter Bengtsson](mailto:mail@peterbe.com)
+- [Peter Grayson](mailto:pete@jpgrayson.net)
+- [Peter Stensmyr](mailto:peter.stensmyr@gmail.com)
+- pmacosta
+- [Quentin Pradet](mailto:quentin@pradet.me)
+- [Ralf Schmitt](mailto:ralf@systemexit.de)
+- [Ramón Valles](mailto:mroutis@protonmail.com)
+- [Richard Fearn](mailto:richardfearn@gmail.com)
+- [Rishikesh Jha](mailto:rishijha424@gmail.com)
+- [Rupert Bedford](mailto:rupert@rupertb.com)
+- Russell Davis
+- [Rémi Verschelde](mailto:rverschelde@gmail.com)
+- [Sami Salonen](mailto:sakki@iki.fi)
+- [Samuel Cormier-Iijima](mailto:samuel@cormier-iijima.com)
+- [Sanket Dasgupta](mailto:sanketdasgupta@gmail.com)
+- Sergi
+- [Scott Stevenson](mailto:scott@stevenson.io)
+- Shantanu
+- [shaoran](mailto:shaoran@sakuranohana.org)
+- [Shinya Fujino](mailto:shf0811@gmail.com)
+- springstan
+- [Stavros Korokithakis](mailto:hi@stavros.io)
+- [Stephen Rosen](mailto:sirosen@globus.org)
+- [Steven M. Vascellaro](mailto:S.Vascellaro@gmail.com)
+- [Sunil Kapil](mailto:snlkapil@gmail.com)
+- [Sébastien Eustace](mailto:sebastien.eustace@gmail.com)
+- [Tal Amuyal](mailto:TalAmuyal@gmail.com)
+- [Terrance](mailto:git@terrance.allofti.me)
+- [Thom Lu](mailto:thomas.c.lu@gmail.com)
+- [Thomas Grainger](mailto:tagrain@gmail.com)
+- [Tim Gates](mailto:tim.gates@iress.com)
+- [Tim Swast](mailto:swast@google.com)
+- [Timo](mailto:timo_tk@hotmail.com)
+- Toby Fleming
+- [Tom Christie](mailto:tom@tomchristie.com)
+- [Tony Narlock](mailto:tony@git-pull.com)
+- [Tsuyoshi Hombashi](mailto:tsuyoshi.hombashi@gmail.com)
+- [Tushar Chandra](mailto:tusharchandra2018@u.northwestern.edu)
+- [Tzu-ping Chung](mailto:uranusjr@gmail.com)
+- [Utsav Shah](mailto:ukshah2@illinois.edu)
+- utsav-dbx
+- vezeli
+- [Ville Skyttä](mailto:ville.skytta@iki.fi)
+- [Vishwas B Sharma](mailto:sharma.vishwas88@gmail.com)
+- [Vlad Emelianov](mailto:volshebnyi@gmail.com)
+- [williamfzc](mailto:178894043@qq.com)
+- [wouter bolsterlee](mailto:wouter@bolsterl.ee)
+- Yazdan
+- [Yngve Høiseth](mailto:yngve@hoiseth.net)
+- [Yurii Karabas](mailto:1998uriyyo@gmail.com)
+- [Zac Hatfield-Dodds](mailto:zac@zhd.dev)
diff --git a/.vim/bundle/black/CHANGES.md b/.vim/bundle/black/CHANGES.md
new file mode 100644 (file)
index 0000000..864f0a5
--- /dev/null
@@ -0,0 +1,761 @@
+# Change Log
+
+## Unreleased
+
+### _Black_
+
+- Add new `--workers` parameter (#2514)
+- Fixed feature detection for positional-only arguments in lambdas (#2532)
+- Bumped typed-ast version minimum to 1.4.3 for 3.10 compatiblity (#2519)
+
+### _Blackd_
+
+- Remove dependency on aiohttp-cors (#2500)
+- Bump required aiohttp version to 3.7.4 (#2509)
+
+### Integrations
+
+- Allow to pass `target_version` in the vim plugin (#1319)
+
+## 21.9b0
+
+### Packaging
+
+- Fix missing modules in self-contained binaries (#2466)
+- Fix missing toml extra used during installation (#2475)
+
+## 21.8b0
+
+### _Black_
+
+- Add support for formatting Jupyter Notebook files (#2357)
+- Move from `appdirs` dependency to `platformdirs` (#2375)
+- Present a more user-friendly error if .gitignore is invalid (#2414)
+- The failsafe for accidentally added backslashes in f-string expressions has been
+  hardened to handle more edge cases during quote normalization (#2437)
+- Avoid changing a function return type annotation's type to a tuple by adding a
+  trailing comma (#2384)
+- Parsing support has been added for unparenthesized walruses in set literals, set
+  comprehensions, and indices (#2447).
+- Pin `setuptools-scm` build-time dependency version (#2457)
+- Exclude typing-extensions version 3.10.0.1 due to it being broken on Python 3.10
+  (#2460)
+
+### _Blackd_
+
+- Replace sys.exit(-1) with raise ImportError as it plays more nicely with tools that
+  scan installed packages (#2440)
+
+### Integrations
+
+- The provided pre-commit hooks no longer specify `language_version` to avoid overriding
+  `default_language_version` (#2430)
+
+## 21.7b0
+
+### _Black_
+
+- Configuration files using TOML features higher than spec v0.5.0 are now supported
+  (#2301)
+- Add primer support and test for code piped into black via STDIN (#2315)
+- Fix internal error when `FORCE_OPTIONAL_PARENTHESES` feature is enabled (#2332)
+- Accept empty stdin (#2346)
+- Provide a more useful error when parsing fails during AST safety checks (#2304)
+
+### Docker
+
+- Add new `latest_release` tag automation to follow latest black release on docker
+  images (#2374)
+
+### Integrations
+
+- The vim plugin now searches upwards from the directory containing the current buffer
+  instead of the current working directory for pyproject.toml. (#1871)
+- The vim plugin now reads the correct string normalization option in pyproject.toml
+  (#1869)
+- The vim plugin no longer crashes Black when there's boolean values in pyproject.toml
+  (#1869)
+
+## 21.6b0
+
+### _Black_
+
+- Fix failure caused by `fmt: skip` and indentation (#2281)
+- Account for += assignment when deciding whether to split string (#2312)
+- Correct max string length calculation when there are string operators (#2292)
+- Fixed option usage when using the `--code` flag (#2259)
+- Do not call `uvloop.install()` when _Black_ is used as a library (#2303)
+- Added `--required-version` option to require a specific version to be running (#2300)
+- Fix incorrect custom breakpoint indices when string group contains fake f-strings
+  (#2311)
+- Fix regression where `R` prefixes would be lowercased for docstrings (#2285)
+- Fix handling of named escapes (`\N{...}`) when `--experimental-string-processing` is
+  used (#2319)
+
+### Integrations
+
+- The official Black action now supports choosing what version to use, and supports the
+  major 3 OSes. (#1940)
+
+## 21.5b2
+
+### _Black_
+
+- A space is no longer inserted into empty docstrings (#2249)
+- Fix handling of .gitignore files containing non-ASCII characters on Windows (#2229)
+- Respect `.gitignore` files in all levels, not only `root/.gitignore` file (apply
+  `.gitignore` rules like `git` does) (#2225)
+- Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (#2227)
+- Add extra uvloop install + import support if in python env (#2258)
+- Fix --experimental-string-processing crash when matching parens are not found (#2283)
+- Make sure to split lines that start with a string operator (#2286)
+- Fix regular expression that black uses to identify f-expressions (#2287)
+
+### _Blackd_
+
+- Add a lower bound for the `aiohttp-cors` dependency. Only 0.4.0 or higher is
+  supported. (#2231)
+
+### Packaging
+
+- Release self-contained x86_64 MacOS binaries as part of the GitHub release pipeline
+  (#2198)
+- Always build binaries with the latest available Python (#2260)
+
+### Documentation
+
+- Add discussion of magic comments to FAQ page (#2272)
+- `--experimental-string-processing` will be enabled by default in the future (#2273)
+- Fix typos discovered by codespell (#2228)
+- Fix Vim plugin installation instructions. (#2235)
+- Add new Frequently Asked Questions page (#2247)
+- Fix encoding + symlink issues preventing proper build on Windows (#2262)
+
+## 21.5b1
+
+### _Black_
+
+- Refactor `src/black/__init__.py` into many files (#2206)
+
+### Documentation
+
+- Replaced all remaining references to the
+  [`master`](https://github.com/psf/black/tree/main) branch with the
+  [`main`](https://github.com/psf/black/tree/main) branch. Some additional changes in
+  the source code were also made. (#2210)
+- Sigificantly reorganized the documentation to make much more sense. Check them out by
+  heading over to [the stable docs on RTD](https://black.readthedocs.io/en/stable/).
+  (#2174)
+
+## 21.5b0
+
+### _Black_
+
+- Set `--pyi` mode if `--stdin-filename` ends in `.pyi` (#2169)
+- Stop detecting target version as Python 3.9+ with pre-PEP-614 decorators that are
+  being called but with no arguments (#2182)
+
+### _Black-Primer_
+
+- Add `--no-diff` to black-primer to suppress formatting changes (#2187)
+
+## 21.4b2
+
+### _Black_
+
+- Fix crash if the user configuration directory is inaccessible. (#2158)
+
+- Clarify
+  [circumstances](https://github.com/psf/black/blob/master/docs/the_black_code_style.md#pragmatism)
+  in which _Black_ may change the AST (#2159)
+
+- Allow `.gitignore` rules to be overridden by specifying `exclude` in `pyproject.toml`
+  or on the command line. (#2170)
+
+### _Packaging_
+
+- Install `primer.json` (used by `black-primer` by default) with black. (#2154)
+
+## 21.4b1
+
+### _Black_
+
+- Fix crash on docstrings ending with "\\ ". (#2142)
+
+- Fix crash when atypical whitespace is cleaned out of dostrings (#2120)
+
+- Reflect the `--skip-magic-trailing-comma` and `--experimental-string-processing` flags
+  in the name of the cache file. Without this fix, changes in these flags would not take
+  effect if the cache had already been populated. (#2131)
+
+- Don't remove necessary parentheses from assignment expression containing assert /
+  return statements. (#2143)
+
+### _Packaging_
+
+- Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
+
+## 21.4b0
+
+### _Black_
+
+- Fixed a rare but annoying formatting instability created by the combination of
+  optional trailing commas inserted by `Black` and optional parentheses looking at
+  pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
+  duplicates. (#2126)
+
+- `Black` now processes one-line docstrings by stripping leading and trailing spaces,
+  and adding a padding space when needed to break up """". (#1740)
+
+- `Black` now cleans up leading non-breaking spaces in comments (#2092)
+
+- `Black` now respects `--skip-string-normalization` when normalizing multiline
+  docstring quotes (#1637)
+
+- `Black` no longer removes all empty lines between non-function code and decorators
+  when formatting typing stubs. Now `Black` enforces a single empty line. (#1646)
+
+- `Black` no longer adds an incorrect space after a parenthesized assignment expression
+  in if/while statements (#1655)
+
+- Added `--skip-magic-trailing-comma` / `-C` to avoid using trailing commas as a reason
+  to split lines (#1824)
+
+- fixed a crash when PWD=/ on POSIX (#1631)
+
+- fixed "I/O operation on closed file" when using --diff (#1664)
+
+- Prevent coloured diff output being interleaved with multiple files (#1673)
+
+- Added support for PEP 614 relaxed decorator syntax on python 3.9 (#1711)
+
+- Added parsing support for unparenthesized tuples and yield expressions in annotated
+  assignments (#1835)
+
+- added `--extend-exclude` argument (PR #2005)
+
+- speed up caching by avoiding pathlib (#1950)
+
+- `--diff` correctly indicates when a file doesn't end in a newline (#1662)
+
+- Added `--stdin-filename` argument to allow stdin to respect `--force-exclude` rules
+  (#1780)
+
+- Lines ending with `fmt: skip` will now be not formatted (#1800)
+
+- PR #2053: Black no longer relies on typed-ast for Python 3.8 and higher
+
+- PR #2053: Python 2 support is now optional, install with
+  `python3 -m pip install black[python2]` to maintain support.
+
+- Exclude `venv` directory by default (#1683)
+
+- Fixed "Black produced code that is not equivalent to the source" when formatting
+  Python 2 docstrings (#2037)
+
+### _Packaging_
+
+- Self-contained native _Black_ binaries are now provided for releases via GitHub
+  Releases (#1743)
+
+## 20.8b1
+
+### _Packaging_
+
+- explicitly depend on Click 7.1.2 or newer as `Black` no longer works with versions
+  older than 7.0
+
+## 20.8b0
+
+### _Black_
+
+- re-implemented support for explicit trailing commas: now it works consistently within
+  any bracket pair, including nested structures (#1288 and duplicates)
+
+- `Black` now reindents docstrings when reindenting code around it (#1053)
+
+- `Black` now shows colored diffs (#1266)
+
+- `Black` is now packaged using 'py3' tagged wheels (#1388)
+
+- `Black` now supports Python 3.8 code, e.g. star expressions in return statements
+  (#1121)
+
+- `Black` no longer normalizes capital R-string prefixes as those have a
+  community-accepted meaning (#1244)
+
+- `Black` now uses exit code 2 when specified configuration file doesn't exit (#1361)
+
+- `Black` now works on AWS Lambda (#1141)
+
+- added `--force-exclude` argument (#1032)
+
+- removed deprecated `--py36` option (#1236)
+
+- fixed `--diff` output when EOF is encountered (#526)
+
+- fixed `# fmt: off` handling around decorators (#560)
+
+- fixed unstable formatting with some `# type: ignore` comments (#1113)
+
+- fixed invalid removal on organizing brackets followed by indexing (#1575)
+
+- introduced `black-primer`, a CI tool that allows us to run regression tests against
+  existing open source users of Black (#1402)
+
+- introduced property-based fuzzing to our test suite based on Hypothesis and
+  Hypothersmith (#1566)
+
+- implemented experimental and disabled by default long string rewrapping (#1132),
+  hidden under a `--experimental-string-processing` flag while it's being worked on;
+  this is an undocumented and unsupported feature, you lose Internet points for
+  depending on it (#1609)
+
+### Vim plugin
+
+- prefer virtualenv packages over global packages (#1383)
+
+## 19.10b0
+
+- added support for PEP 572 assignment expressions (#711)
+
+- added support for PEP 570 positional-only arguments (#943)
+
+- added support for async generators (#593)
+
+- added support for pre-splitting collections by putting an explicit trailing comma
+  inside (#826)
+
+- added `black -c` as a way to format code passed from the command line (#761)
+
+- --safe now works with Python 2 code (#840)
+
+- fixed grammar selection for Python 2-specific code (#765)
+
+- fixed feature detection for trailing commas in function definitions and call sites
+  (#763)
+
+- `# fmt: off`/`# fmt: on` comment pairs placed multiple times within the same block of
+  code now behave correctly (#1005)
+
+- _Black_ no longer crashes on Windows machines with more than 61 cores (#838)
+
+- _Black_ no longer crashes on standalone comments prepended with a backslash (#767)
+
+- _Black_ no longer crashes on `from` ... `import` blocks with comments (#829)
+
+- _Black_ no longer crashes on Python 3.7 on some platform configurations (#494)
+
+- _Black_ no longer fails on comments in from-imports (#671)
+
+- _Black_ no longer fails when the file starts with a backslash (#922)
+
+- _Black_ no longer merges regular comments with type comments (#1027)
+
+- _Black_ no longer splits long lines that contain type comments (#997)
+
+- removed unnecessary parentheses around `yield` expressions (#834)
+
+- added parentheses around long tuples in unpacking assignments (#832)
+
+- added parentheses around complex powers when they are prefixed by a unary operator
+  (#646)
+
+- fixed bug that led _Black_ format some code with a line length target of 1 (#762)
+
+- _Black_ no longer introduces quotes in f-string subexpressions on string boundaries
+  (#863)
+
+- if _Black_ puts parenthesis around a single expression, it moves comments to the
+  wrapped expression instead of after the brackets (#872)
+
+- `blackd` now returns the version of _Black_ in the response headers (#1013)
+
+- `blackd` can now output the diff of formats on source code when the `X-Diff` header is
+  provided (#969)
+
+## 19.3b0
+
+- new option `--target-version` to control which Python versions _Black_-formatted code
+  should target (#618)
+
+- deprecated `--py36` (use `--target-version=py36` instead) (#724)
+
+- _Black_ no longer normalizes numeric literals to include `_` separators (#696)
+
+- long `del` statements are now split into multiple lines (#698)
+
+- type comments are no longer mangled in function signatures
+
+- improved performance of formatting deeply nested data structures (#509)
+
+- _Black_ now properly formats multiple files in parallel on Windows (#632)
+
+- _Black_ now creates cache files atomically which allows it to be used in parallel
+  pipelines (like `xargs -P8`) (#673)
+
+- _Black_ now correctly indents comments in files that were previously formatted with
+  tabs (#262)
+
+- `blackd` now supports CORS (#622)
+
+## 18.9b0
+
+- numeric literals are now formatted by _Black_ (#452, #461, #464, #469):
+
+  - numeric literals are normalized to include `_` separators on Python 3.6+ code
+
+  - added `--skip-numeric-underscore-normalization` to disable the above behavior and
+    leave numeric underscores as they were in the input
+
+  - code with `_` in numeric literals is recognized as Python 3.6+
+
+  - most letters in numeric literals are lowercased (e.g., in `1e10`, `0x01`)
+
+  - hexadecimal digits are always uppercased (e.g. `0xBADC0DE`)
+
+- added `blackd`, see
+  [its documentation](https://github.com/psf/black/blob/18.9b0/README.md#blackd) for
+  more info (#349)
+
+- adjacent string literals are now correctly split into multiple lines (#463)
+
+- trailing comma is now added to single imports that don't fit on a line (#250)
+
+- cache is now populated when `--check` is successful for a file which speeds up
+  consecutive checks of properly formatted unmodified files (#448)
+
+- whitespace at the beginning of the file is now removed (#399)
+
+- fixed mangling [pweave](http://mpastell.com/pweave/) and
+  [Spyder IDE](https://www.spyder-ide.org/) special comments (#532)
+
+- fixed unstable formatting when unpacking big tuples (#267)
+
+- fixed parsing of `__future__` imports with renames (#389)
+
+- fixed scope of `# fmt: off` when directly preceding `yield` and other nodes (#385)
+
+- fixed formatting of lambda expressions with default arguments (#468)
+
+- fixed `async for` statements: _Black_ no longer breaks them into separate lines (#372)
+
+- note: the Vim plugin stopped registering `,=` as a default chord as it turned out to
+  be a bad idea (#415)
+
+## 18.6b4
+
+- hotfix: don't freeze when multiple comments directly precede `# fmt: off` (#371)
+
+## 18.6b3
+
+- typing stub files (`.pyi`) now have blank lines added after constants (#340)
+
+- `# fmt: off` and `# fmt: on` are now much more dependable:
+
+  - they now work also within bracket pairs (#329)
+
+  - they now correctly work across function/class boundaries (#335)
+
+  - they now work when an indentation block starts with empty lines or misaligned
+    comments (#334)
+
+- made Click not fail on invalid environments; note that Click is right but the
+  likelihood we'll need to access non-ASCII file paths when dealing with Python source
+  code is low (#277)
+
+- fixed improper formatting of f-strings with quotes inside interpolated expressions
+  (#322)
+
+- fixed unnecessary slowdown when long list literals where found in a file
+
+- fixed unnecessary slowdown on AST nodes with very many siblings
+
+- fixed cannibalizing backslashes during string normalization
+
+- fixed a crash due to symbolic links pointing outside of the project directory (#338)
+
+## 18.6b2
+
+- added `--config` (#65)
+
+- added `-h` equivalent to `--help` (#316)
+
+- fixed improper unmodified file caching when `-S` was used
+
+- fixed extra space in string unpacking (#305)
+
+- fixed formatting of empty triple quoted strings (#313)
+
+- fixed unnecessary slowdown in comment placement calculation on lines without comments
+
+## 18.6b1
+
+- hotfix: don't output human-facing information on stdout (#299)
+
+- hotfix: don't output cake emoji on non-zero return code (#300)
+
+## 18.6b0
+
+- added `--include` and `--exclude` (#270)
+
+- added `--skip-string-normalization` (#118)
+
+- added `--verbose` (#283)
+
+- the header output in `--diff` now actually conforms to the unified diff spec
+
+- fixed long trivial assignments being wrapped in unnecessary parentheses (#273)
+
+- fixed unnecessary parentheses when a line contained multiline strings (#232)
+
+- fixed stdin handling not working correctly if an old version of Click was used (#276)
+
+- _Black_ now preserves line endings when formatting a file in place (#258)
+
+## 18.5b1
+
+- added `--pyi` (#249)
+
+- added `--py36` (#249)
+
+- Python grammar pickle caches are stored with the formatting caches, making _Black_
+  work in environments where site-packages is not user-writable (#192)
+
+- _Black_ now enforces a PEP 257 empty line after a class-level docstring (and/or
+  fields) and the first method
+
+- fixed invalid code produced when standalone comments were present in a trailer that
+  was omitted from line splitting on a large expression (#237)
+
+- fixed optional parentheses being removed within `# fmt: off` sections (#224)
+
+- fixed invalid code produced when stars in very long imports were incorrectly wrapped
+  in optional parentheses (#234)
+
+- fixed unstable formatting when inline comments were moved around in a trailer that was
+  omitted from line splitting on a large expression (#238)
+
+- fixed extra empty line between a class declaration and the first method if no class
+  docstring or fields are present (#219)
+
+- fixed extra empty line between a function signature and an inner function or inner
+  class (#196)
+
+## 18.5b0
+
+- call chains are now formatted according to the
+  [fluent interfaces](https://en.wikipedia.org/wiki/Fluent_interface) style (#67)
+
+- data structure literals (tuples, lists, dictionaries, and sets) are now also always
+  exploded like imports when they don't fit in a single line (#152)
+
+- slices are now formatted according to PEP 8 (#178)
+
+- parentheses are now also managed automatically on the right-hand side of assignments
+  and return statements (#140)
+
+- math operators now use their respective priorities for delimiting multiline
+  expressions (#148)
+
+- optional parentheses are now omitted on expressions that start or end with a bracket
+  and only contain a single operator (#177)
+
+- empty parentheses in a class definition are now removed (#145, #180)
+
+- string prefixes are now standardized to lowercase and `u` is removed on Python 3.6+
+  only code and Python 2.7+ code with the `unicode_literals` future import (#188, #198,
+  #199)
+
+- typing stub files (`.pyi`) are now formatted in a style that is consistent with PEP
+  484 (#207, #210)
+
+- progress when reformatting many files is now reported incrementally
+
+- fixed trailers (content with brackets) being unnecessarily exploded into their own
+  lines after a dedented closing bracket (#119)
+
+- fixed an invalid trailing comma sometimes left in imports (#185)
+
+- fixed non-deterministic formatting when multiple pairs of removable parentheses were
+  used (#183)
+
+- fixed multiline strings being unnecessarily wrapped in optional parentheses in long
+  assignments (#215)
+
+- fixed not splitting long from-imports with only a single name
+
+- fixed Python 3.6+ file discovery by also looking at function calls with unpacking.
+  This fixed non-deterministic formatting if trailing commas where used both in function
+  signatures with stars and function calls with stars but the former would be
+  reformatted to a single line.
+
+- fixed crash on dealing with optional parentheses (#193)
+
+- fixed "is", "is not", "in", and "not in" not considered operators for splitting
+  purposes
+
+- fixed crash when dead symlinks where encountered
+
+## 18.4a4
+
+- don't populate the cache on `--check` (#175)
+
+## 18.4a3
+
+- added a "cache"; files already reformatted that haven't changed on disk won't be
+  reformatted again (#109)
+
+- `--check` and `--diff` are no longer mutually exclusive (#149)
+
+- generalized star expression handling, including double stars; this fixes
+  multiplication making expressions "unsafe" for trailing commas (#132)
+
+- _Black_ no longer enforces putting empty lines behind control flow statements (#90)
+
+- _Black_ now splits imports like "Mode 3 + trailing comma" of isort (#127)
+
+- fixed comment indentation when a standalone comment closes a block (#16, #32)
+
+- fixed standalone comments receiving extra empty lines if immediately preceding a
+  class, def, or decorator (#56, #154)
+
+- fixed `--diff` not showing entire path (#130)
+
+- fixed parsing of complex expressions after star and double stars in function calls
+  (#2)
+
+- fixed invalid splitting on comma in lambda arguments (#133)
+
+- fixed missing splits of ternary expressions (#141)
+
+## 18.4a2
+
+- fixed parsing of unaligned standalone comments (#99, #112)
+
+- fixed placement of dictionary unpacking inside dictionary literals (#111)
+
+- Vim plugin now works on Windows, too
+
+- fixed unstable formatting when encountering unnecessarily escaped quotes in a string
+  (#120)
+
+## 18.4a1
+
+- added `--quiet` (#78)
+
+- added automatic parentheses management (#4)
+
+- added [pre-commit](https://pre-commit.com) integration (#103, #104)
+
+- fixed reporting on `--check` with multiple files (#101, #102)
+
+- fixed removing backslash escapes from raw strings (#100, #105)
+
+## 18.4a0
+
+- added `--diff` (#87)
+
+- add line breaks before all delimiters, except in cases like commas, to better comply
+  with PEP 8 (#73)
+
+- standardize string literals to use double quotes (almost) everywhere (#75)
+
+- fixed handling of standalone comments within nested bracketed expressions; _Black_
+  will no longer produce super long lines or put all standalone comments at the end of
+  the expression (#22)
+
+- fixed 18.3a4 regression: don't crash and burn on empty lines with trailing whitespace
+  (#80)
+
+- fixed 18.3a4 regression: `# yapf: disable` usage as trailing comment would cause
+  _Black_ to not emit the rest of the file (#95)
+
+- when CTRL+C is pressed while formatting many files, _Black_ no longer freaks out with
+  a flurry of asyncio-related exceptions
+
+- only allow up to two empty lines on module level and only single empty lines within
+  functions (#74)
+
+## 18.3a4
+
+- `# fmt: off` and `# fmt: on` are implemented (#5)
+
+- automatic detection of deprecated Python 2 forms of print statements and exec
+  statements in the formatted file (#49)
+
+- use proper spaces for complex expressions in default values of typed function
+  arguments (#60)
+
+- only return exit code 1 when --check is used (#50)
+
+- don't remove single trailing commas from square bracket indexing (#59)
+
+- don't omit whitespace if the previous factor leaf wasn't a math operator (#55)
+
+- omit extra space in kwarg unpacking if it's the first argument (#46)
+
+- omit extra space in
+  [Sphinx auto-attribute comments](http://www.sphinx-doc.org/en/stable/ext/autodoc.html#directive-autoattribute)
+  (#68)
+
+## 18.3a3
+
+- don't remove single empty lines outside of bracketed expressions (#19)
+
+- added ability to pipe formatting from stdin to stdin (#25)
+
+- restored ability to format code with legacy usage of `async` as a name (#20, #42)
+
+- even better handling of numpy-style array indexing (#33, again)
+
+## 18.3a2
+
+- changed positioning of binary operators to occur at beginning of lines instead of at
+  the end, following
+  [a recent change to PEP 8](https://github.com/python/peps/commit/c59c4376ad233a62ca4b3a6060c81368bd21e85b)
+  (#21)
+
+- ignore empty bracket pairs while splitting. This avoids very weirdly looking
+  formattings (#34, #35)
+
+- remove a trailing comma if there is a single argument to a call
+
+- if top level functions were separated by a comment, don't put four empty lines after
+  the upper function
+
+- fixed unstable formatting of newlines with imports
+
+- fixed unintentional folding of post scriptum standalone comments into last statement
+  if it was a simple statement (#18, #28)
+
+- fixed missing space in numpy-style array indexing (#33)
+
+- fixed spurious space after star-based unary expressions (#31)
+
+## 18.3a1
+
+- added `--check`
+
+- only put trailing commas in function signatures and calls if it's safe to do so. If
+  the file is Python 3.6+ it's always safe, otherwise only safe if there are no `*args`
+  or `**kwargs` used in the signature or call. (#8)
+
+- fixed invalid spacing of dots in relative imports (#6, #13)
+
+- fixed invalid splitting after comma on unpacked variables in for-loops (#23)
+
+- fixed spurious space in parenthesized set expressions (#7)
+
+- fixed spurious space after opening parentheses and in default arguments (#14, #17)
+
+- fixed spurious space after unary operators when the operand was a complex expression
+  (#15)
+
+## 18.3a0
+
+- first published version, Happy 🍰 Day 2018!
+
+- alpha quality
+
+- date-versioned (see: <https://calver.org/>)
diff --git a/.vim/bundle/black/CONTRIBUTING.md b/.vim/bundle/black/CONTRIBUTING.md
new file mode 100644 (file)
index 0000000..10f6042
--- /dev/null
@@ -0,0 +1,10 @@
+# Contributing to _Black_
+
+Welcome! Happy to see you willing to make the project better. Have you read the entire
+[user documentation](https://black.readthedocs.io/en/latest/) yet?
+
+Our [contributing documentation](https://black.readthedocs.org/en/latest/contributing/)
+contains details on all you need to know about contributing to _Black_, the basics to
+the internals of _Black_.
+
+We look forward to your contributions!
diff --git a/.vim/bundle/black/Dockerfile b/.vim/bundle/black/Dockerfile
new file mode 100644 (file)
index 0000000..9542479
--- /dev/null
@@ -0,0 +1,14 @@
+FROM python:3-slim
+
+RUN mkdir /src
+COPY . /src/
+RUN pip install --no-cache-dir --upgrade pip setuptools wheel \
+    && apt update && apt install -y git \
+    && cd /src \
+    && pip install --no-cache-dir .[colorama,d] \
+    && rm -rf /src \
+    && apt remove -y git \
+    && apt autoremove -y \
+    && rm -rf /var/lib/apt/lists/*
+
+CMD ["black"]
diff --git a/.vim/bundle/black/LICENSE b/.vim/bundle/black/LICENSE
new file mode 100644 (file)
index 0000000..7a9b891
--- /dev/null
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2018 Łukasz Langa
+
+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.
diff --git a/.vim/bundle/black/MANIFEST.in b/.vim/bundle/black/MANIFEST.in
new file mode 100644 (file)
index 0000000..5e53af3
--- /dev/null
@@ -0,0 +1 @@
+prune profiling
diff --git a/.vim/bundle/black/Pipfile b/.vim/bundle/black/Pipfile
new file mode 100644 (file)
index 0000000..90e8f62
--- /dev/null
@@ -0,0 +1,50 @@
+[[source]]
+name = "pypi"
+url = "https://pypi.python.org/simple"
+verify_ssl = true
+
+[dev-packages]
+# Testing related requirements.
+coverage = ">= 5.3"
+pytest = " >= 6.1.1"
+pytest-xdist = ">= 2.2.1"
+pytest-cov = ">= 2.11.1"
+tox = "*"
+
+# Linting related requirements.
+pre-commit = ">=2.9.2"
+flake8 = ">=3.9.2"
+flake8-bugbear = "*"
+mypy = ">=0.910"
+types-dataclasses = ">=0.1.3"
+types-typed-ast = ">=1.4.1"
+types-PyYAML = ">=5.4.1"
+
+# Documentation related requirements.
+Sphinx = ">=4.1.2"
+MyST-Parser = ">=0.15.1"
+sphinxcontrib-programoutput = ">=0.17"
+sphinx-copybutton = ">=0.4.0"
+docutils = "==0.17.1"  # not a direct dependency, see https://github.com/pypa/pipenv/issues/3865
+
+# Packaging related requirements.
+setuptools = ">=39.2.0"
+setuptools-scm = "*"
+twine = ">=1.11.0"
+wheel = ">=0.31.1"
+readme_renderer = "*"
+
+black = {editable = true, extras = ["d", "jupyter"], path = "."}
+
+[packages]
+aiohttp = ">=3.7.4"
+platformdirs= ">=2"
+click = ">=8.0.0"
+mypy_extensions = ">=0.4.3"
+pathspec = ">=0.8.1"
+regex = ">=2020.1.8"
+tomli = ">=0.2.6, <2.0.0"
+typed-ast = "==1.4.3"
+typing_extensions = {markers = "python_version < '3.10'", version = ">=3.10.0.0"}
+black = {editable = true,extras = ["d"],path = "."}
+dataclasses = {markers = "python_version < '3.7'", version = ">0.1.3"}
diff --git a/.vim/bundle/black/Pipfile.lock b/.vim/bundle/black/Pipfile.lock
new file mode 100644 (file)
index 0000000..2ddeca8
--- /dev/null
@@ -0,0 +1,1613 @@
+{
+    "_meta": {
+        "hash": {
+            "sha256": "4baa020356174f89177af103f1966928e7b9c2a69df3a9d4e8070eb83ee19387"
+        },
+        "pipfile-spec": 6,
+        "requires": {},
+        "sources": [
+            {
+                "name": "pypi",
+                "url": "https://pypi.python.org/simple",
+                "verify_ssl": true
+            }
+        ]
+    },
+    "default": {
+        "aiohttp": {
+            "hashes": [
+                "sha256:02f46fc0e3c5ac58b80d4d56eb0a7c7d97fcef69ace9326289fb9f1955e65cfe",
+                "sha256:0563c1b3826945eecd62186f3f5c7d31abb7391fedc893b7e2b26303b5a9f3fe",
+                "sha256:114b281e4d68302a324dd33abb04778e8557d88947875cbf4e842c2c01a030c5",
+                "sha256:14762875b22d0055f05d12abc7f7d61d5fd4fe4642ce1a249abdf8c700bf1fd8",
+                "sha256:15492a6368d985b76a2a5fdd2166cddfea5d24e69eefed4630cbaae5c81d89bd",
+                "sha256:17c073de315745a1510393a96e680d20af8e67e324f70b42accbd4cb3315c9fb",
+                "sha256:209b4a8ee987eccc91e2bd3ac36adee0e53a5970b8ac52c273f7f8fd4872c94c",
+                "sha256:230a8f7e24298dea47659251abc0fd8b3c4e38a664c59d4b89cca7f6c09c9e87",
+                "sha256:2e19413bf84934d651344783c9f5e22dee452e251cfd220ebadbed2d9931dbf0",
+                "sha256:393f389841e8f2dfc86f774ad22f00923fdee66d238af89b70ea314c4aefd290",
+                "sha256:3cf75f7cdc2397ed4442594b935a11ed5569961333d49b7539ea741be2cc79d5",
+                "sha256:3d78619672183be860b96ed96f533046ec97ca067fd46ac1f6a09cd9b7484287",
+                "sha256:40eced07f07a9e60e825554a31f923e8d3997cfc7fb31dbc1328c70826e04cde",
+                "sha256:493d3299ebe5f5a7c66b9819eacdcfbbaaf1a8e84911ddffcdc48888497afecf",
+                "sha256:4b302b45040890cea949ad092479e01ba25911a15e648429c7c5aae9650c67a8",
+                "sha256:515dfef7f869a0feb2afee66b957cc7bbe9ad0cdee45aec7fdc623f4ecd4fb16",
+                "sha256:547da6cacac20666422d4882cfcd51298d45f7ccb60a04ec27424d2f36ba3eaf",
+                "sha256:5df68496d19f849921f05f14f31bd6ef53ad4b00245da3195048c69934521809",
+                "sha256:64322071e046020e8797117b3658b9c2f80e3267daec409b350b6a7a05041213",
+                "sha256:7615dab56bb07bff74bc865307aeb89a8bfd9941d2ef9d817b9436da3a0ea54f",
+                "sha256:79ebfc238612123a713a457d92afb4096e2148be17df6c50fb9bf7a81c2f8013",
+                "sha256:7b18b97cf8ee5452fa5f4e3af95d01d84d86d32c5e2bfa260cf041749d66360b",
+                "sha256:932bb1ea39a54e9ea27fc9232163059a0b8855256f4052e776357ad9add6f1c9",
+                "sha256:a00bb73540af068ca7390e636c01cbc4f644961896fa9363154ff43fd37af2f5",
+                "sha256:a5ca29ee66f8343ed336816c553e82d6cade48a3ad702b9ffa6125d187e2dedb",
+                "sha256:af9aa9ef5ba1fd5b8c948bb11f44891968ab30356d65fd0cc6707d989cd521df",
+                "sha256:bb437315738aa441251214dad17428cafda9cdc9729499f1d6001748e1d432f4",
+                "sha256:bdb230b4943891321e06fc7def63c7aace16095be7d9cf3b1e01be2f10fba439",
+                "sha256:c6e9dcb4cb338d91a73f178d866d051efe7c62a7166653a91e7d9fb18274058f",
+                "sha256:cffe3ab27871bc3ea47df5d8f7013945712c46a3cc5a95b6bee15887f1675c22",
+                "sha256:d012ad7911653a906425d8473a1465caa9f8dea7fcf07b6d870397b774ea7c0f",
+                "sha256:d9e13b33afd39ddeb377eff2c1c4f00544e191e1d1dee5b6c51ddee8ea6f0cf5",
+                "sha256:e4b2b334e68b18ac9817d828ba44d8fcb391f6acb398bcc5062b14b2cbeac970",
+                "sha256:e54962802d4b8b18b6207d4a927032826af39395a3bd9196a5af43fc4e60b009",
+                "sha256:f705e12750171c0ab4ef2a3c76b9a4024a62c4103e3a55dd6f99265b9bc6fcfc",
+                "sha256:f881853d2643a29e643609da57b96d5f9c9b93f62429dcc1cbb413c7d07f0e1a",
+                "sha256:fe60131d21b31fd1a14bd43e6bb88256f69dfc3188b3a89d736d6c71ed43ec95"
+            ],
+            "index": "pypi",
+            "version": "==3.7.4.post0"
+        },
+        "async-timeout": {
+            "hashes": [
+                "sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f",
+                "sha256:4291ca197d287d274d0b6cb5d6f8f8f82d434ed288f962539ff18cc9012f9ea3"
+            ],
+            "markers": "python_full_version >= '3.5.3'",
+            "version": "==3.0.1"
+        },
+        "attrs": {
+            "hashes": [
+                "sha256:149e90d6d8ac20db7a955ad60cf0e6881a3f20d37096140088356da6c716b0b1",
+                "sha256:ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==21.2.0"
+        },
+        "black": {
+            "editable": true,
+            "extras": [
+                "d"
+            ],
+            "path": "."
+        },
+        "chardet": {
+            "hashes": [
+                "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa",
+                "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==4.0.0"
+        },
+        "click": {
+            "hashes": [
+                "sha256:8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a",
+                "sha256:fba402a4a47334742d782209a7c79bc448911afe1149d07bdabdf480b3e2f4b6"
+            ],
+            "index": "pypi",
+            "version": "==8.0.1"
+        },
+        "dataclasses": {
+            "hashes": [
+                "sha256:0201d89fa866f68c8ebd9d08ee6ff50c0b255f8ec63a71c16fda7af82bb887bf",
+                "sha256:8479067f342acf957dc82ec415d355ab5edb7e7646b90dc6e2fd1d96ad084c97"
+            ],
+            "index": "pypi",
+            "markers": "python_version < '3.7'",
+            "version": "==0.8"
+        },
+        "idna": {
+            "hashes": [
+                "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a",
+                "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==3.2"
+        },
+        "idna-ssl": {
+            "hashes": [
+                "sha256:a933e3bb13da54383f9e8f35dc4f9cb9eb9b3b78c6b36f311254d6d0d92c6c7c"
+            ],
+            "markers": "python_version < '3.7'",
+            "version": "==1.1.0"
+        },
+        "importlib-metadata": {
+            "hashes": [
+                "sha256:7b30a78db2922d78a6f47fb30683156a14f3c6aa5cc23f77cc8967e9ab2d002f",
+                "sha256:ed5157fef23a4bc4594615a0dd8eba94b2bb36bf2a343fa3d8bb2fa0a62a99d5"
+            ],
+            "markers": "python_version < '3.8'",
+            "version": "==4.6.4"
+        },
+        "multidict": {
+            "hashes": [
+                "sha256:018132dbd8688c7a69ad89c4a3f39ea2f9f33302ebe567a879da8f4ca73f0d0a",
+                "sha256:051012ccee979b2b06be928a6150d237aec75dd6bf2d1eeeb190baf2b05abc93",
+                "sha256:05c20b68e512166fddba59a918773ba002fdd77800cad9f55b59790030bab632",
+                "sha256:07b42215124aedecc6083f1ce6b7e5ec5b50047afa701f3442054373a6deb656",
+                "sha256:0e3c84e6c67eba89c2dbcee08504ba8644ab4284863452450520dad8f1e89b79",
+                "sha256:0e929169f9c090dae0646a011c8b058e5e5fb391466016b39d21745b48817fd7",
+                "sha256:1ab820665e67373de5802acae069a6a05567ae234ddb129f31d290fc3d1aa56d",
+                "sha256:25b4e5f22d3a37ddf3effc0710ba692cfc792c2b9edfb9c05aefe823256e84d5",
+                "sha256:2e68965192c4ea61fff1b81c14ff712fc7dc15d2bd120602e4a3494ea6584224",
+                "sha256:2f1a132f1c88724674271d636e6b7351477c27722f2ed789f719f9e3545a3d26",
+                "sha256:37e5438e1c78931df5d3c0c78ae049092877e5e9c02dd1ff5abb9cf27a5914ea",
+                "sha256:3a041b76d13706b7fff23b9fc83117c7b8fe8d5fe9e6be45eee72b9baa75f348",
+                "sha256:3a4f32116f8f72ecf2a29dabfb27b23ab7cdc0ba807e8459e59a93a9be9506f6",
+                "sha256:46c73e09ad374a6d876c599f2328161bcd95e280f84d2060cf57991dec5cfe76",
+                "sha256:46dd362c2f045095c920162e9307de5ffd0a1bfbba0a6e990b344366f55a30c1",
+                "sha256:4b186eb7d6ae7c06eb4392411189469e6a820da81447f46c0072a41c748ab73f",
+                "sha256:54fd1e83a184e19c598d5e70ba508196fd0bbdd676ce159feb412a4a6664f952",
+                "sha256:585fd452dd7782130d112f7ddf3473ffdd521414674c33876187e101b588738a",
+                "sha256:5cf3443199b83ed9e955f511b5b241fd3ae004e3cb81c58ec10f4fe47c7dce37",
+                "sha256:6a4d5ce640e37b0efcc8441caeea8f43a06addace2335bd11151bc02d2ee31f9",
+                "sha256:7df80d07818b385f3129180369079bd6934cf70469f99daaebfac89dca288359",
+                "sha256:806068d4f86cb06af37cd65821554f98240a19ce646d3cd24e1c33587f313eb8",
+                "sha256:830f57206cc96ed0ccf68304141fec9481a096c4d2e2831f311bde1c404401da",
+                "sha256:929006d3c2d923788ba153ad0de8ed2e5ed39fdbe8e7be21e2f22ed06c6783d3",
+                "sha256:9436dc58c123f07b230383083855593550c4d301d2532045a17ccf6eca505f6d",
+                "sha256:9dd6e9b1a913d096ac95d0399bd737e00f2af1e1594a787e00f7975778c8b2bf",
+                "sha256:ace010325c787c378afd7f7c1ac66b26313b3344628652eacd149bdd23c68841",
+                "sha256:b47a43177a5e65b771b80db71e7be76c0ba23cc8aa73eeeb089ed5219cdbe27d",
+                "sha256:b797515be8743b771aa868f83563f789bbd4b236659ba52243b735d80b29ed93",
+                "sha256:b7993704f1a4b204e71debe6095150d43b2ee6150fa4f44d6d966ec356a8d61f",
+                "sha256:d5c65bdf4484872c4af3150aeebe101ba560dcfb34488d9a8ff8dbcd21079647",
+                "sha256:d81eddcb12d608cc08081fa88d046c78afb1bf8107e6feab5d43503fea74a635",
+                "sha256:dc862056f76443a0db4509116c5cd480fe1b6a2d45512a653f9a855cc0517456",
+                "sha256:ecc771ab628ea281517e24fd2c52e8f31c41e66652d07599ad8818abaad38cda",
+                "sha256:f200755768dc19c6f4e2b672421e0ebb3dd54c38d5a4f262b872d8cfcc9e93b5",
+                "sha256:f21756997ad8ef815d8ef3d34edd98804ab5ea337feedcd62fb52d22bf531281",
+                "sha256:fc13a9524bc18b6fb6e0dbec3533ba0496bbed167c56d0aabefd965584557d80"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==5.1.0"
+        },
+        "mypy-extensions": {
+            "hashes": [
+                "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d",
+                "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"
+            ],
+            "index": "pypi",
+            "version": "==0.4.3"
+        },
+        "packaging": {
+            "hashes": [
+                "sha256:7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7",
+                "sha256:c86254f9220d55e31cc94d69bade760f0847da8000def4dfe1c6b872fd14ff14"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==21.0"
+        },
+        "pathspec": {
+            "hashes": [
+                "sha256:7d15c4ddb0b5c802d161efc417ec1a2558ea2653c2e8ad9c19098201dc1c993a",
+                "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"
+            ],
+            "index": "pypi",
+            "version": "==0.9.0"
+        },
+        "platformdirs": {
+            "hashes": [
+                "sha256:4666d822218db6a262bdfdc9c39d21f23b4cfdb08af331a81e92751daf6c866c",
+                "sha256:632daad3ab546bd8e6af0537d09805cec458dce201bccfe23012df73332e181e"
+            ],
+            "index": "pypi",
+            "version": "==2.2.0"
+        },
+        "pyparsing": {
+            "hashes": [
+                "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1",
+                "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"
+            ],
+            "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.4.7"
+        },
+        "regex": {
+            "hashes": [
+                "sha256:03840a07a402576b8e3a6261f17eb88abd653ad4e18ec46ef10c9a63f8c99ebd",
+                "sha256:06ba444bbf7ede3890a912bd4904bb65bf0da8f0d8808b90545481362c978642",
+                "sha256:1f9974826aeeda32a76648fc677e3125ade379869a84aa964b683984a2dea9f1",
+                "sha256:330836ad89ff0be756b58758878409f591d4737b6a8cef26a162e2a4961c3321",
+                "sha256:38600fd58c2996829480de7d034fb2d3a0307110e44dae80b6b4f9b3d2eea529",
+                "sha256:3a195e26df1fbb40ebee75865f9b64ba692a5824ecb91c078cc665b01f7a9a36",
+                "sha256:41acdd6d64cd56f857e271009966c2ffcbd07ec9149ca91f71088574eaa4278a",
+                "sha256:45f97ade892ace20252e5ccecdd7515c7df5feeb42c3d2a8b8c55920c3551c30",
+                "sha256:4b0c211c55d4aac4309c3209833c803fada3fc21cdf7b74abedda42a0c9dc3ce",
+                "sha256:5d5209c3ba25864b1a57461526ebde31483db295fc6195fdfc4f8355e10f7376",
+                "sha256:615fb5a524cffc91ab4490b69e10ae76c1ccbfa3383ea2fad72e54a85c7d47dd",
+                "sha256:61e734c2bcb3742c3f454dfa930ea60ea08f56fd1a0eb52d8cb189a2f6be9586",
+                "sha256:640ccca4d0a6fcc6590f005ecd7b16c3d8f5d52174e4854f96b16f34c39d6cb7",
+                "sha256:6dbd51c3db300ce9d3171f4106da18fe49e7045232630fe3d4c6e37cb2b39ab9",
+                "sha256:71a904da8c9c02aee581f4452a5a988c3003207cb8033db426f29e5b2c0b7aea",
+                "sha256:8021dee64899f993f4b5cca323aae65aabc01a546ed44356a0965e29d7893c94",
+                "sha256:8b8d551f1bd60b3e1c59ff55b9e8d74607a5308f66e2916948cafd13480b44a3",
+                "sha256:93f9f720081d97acee38a411e861d4ce84cbc8ea5319bc1f8e38c972c47af49f",
+                "sha256:96f0c79a70642dfdf7e6a018ebcbea7ea5205e27d8e019cad442d2acfc9af267",
+                "sha256:9966337353e436e6ba652814b0a957a517feb492a98b8f9d3b6ba76d22301dcc",
+                "sha256:a34ba9e39f8269fd66ab4f7a802794ffea6d6ac500568ec05b327a862c21ce23",
+                "sha256:a49f85f0a099a5755d0a2cc6fc337e3cb945ad6390ec892332c691ab0a045882",
+                "sha256:a795829dc522227265d72b25d6ee6f6d41eb2105c15912c230097c8f5bfdbcdc",
+                "sha256:a89ca4105f8099de349d139d1090bad387fe2b208b717b288699ca26f179acbe",
+                "sha256:ac95101736239260189f426b1e361dc1b704513963357dc474beb0f39f5b7759",
+                "sha256:ae87ab669431f611c56e581679db33b9a467f87d7bf197ac384e71e4956b4456",
+                "sha256:b091dcfee169ad8de21b61eb2c3a75f9f0f859f851f64fdaf9320759a3244239",
+                "sha256:b511c6009d50d5c0dd0bab85ed25bc8ad6b6f5611de3a63a59786207e82824bb",
+                "sha256:b79dc2b2e313565416c1e62807c7c25c67a6ff0a0f8d83a318df464555b65948",
+                "sha256:bca14dfcfd9aae06d7d8d7e105539bd77d39d06caaae57a1ce945670bae744e0",
+                "sha256:c835c30f3af5c63a80917b72115e1defb83de99c73bc727bddd979a3b449e183",
+                "sha256:ccd721f1d4fc42b541b633d6e339018a08dd0290dc67269df79552843a06ca92",
+                "sha256:d6c2b1d78ceceb6741d703508cd0e9197b34f6bf6864dab30f940f8886e04ade",
+                "sha256:d6ec4ae13760ceda023b2e5ef1f9bc0b21e4b0830458db143794a117fdbdc044",
+                "sha256:d8b623fc429a38a881ab2d9a56ef30e8ea20c72a891c193f5ebbddc016e083ee",
+                "sha256:ea9753d64cba6f226947c318a923dadaf1e21cd8db02f71652405263daa1f033",
+                "sha256:ebbceefbffae118ab954d3cd6bf718f5790db66152f95202ebc231d58ad4e2c2",
+                "sha256:ecb6e7c45f9cd199c10ec35262b53b2247fb9a408803ed00ee5bb2b54aa626f5",
+                "sha256:ef9326c64349e2d718373415814e754183057ebc092261387a2c2f732d9172b2",
+                "sha256:f93a9d8804f4cec9da6c26c8cfae2c777028b4fdd9f49de0302e26e00bb86504",
+                "sha256:faf08b0341828f6a29b8f7dd94d5cf8cc7c39bfc3e67b78514c54b494b66915a"
+            ],
+            "index": "pypi",
+            "version": "==2021.8.21"
+        },
+        "setuptools-scm": {
+            "extras": [
+                "toml"
+            ],
+            "hashes": [
+                "sha256:c3bd5f701c8def44a5c0bfe8d407bef3f80342217ef3492b951f3777bd2d915c",
+                "sha256:d1925a69cb07e9b29416a275b9fadb009a23c148ace905b2fb220649a6c18e92"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==6.0.1"
+        },
+        "tomli": {
+            "hashes": [
+                "sha256:8dd0e9524d6f386271a36b41dbf6c57d8e32fd96fd22b6584679dc569d20899f",
+                "sha256:a5b75cb6f3968abb47af1b40c1819dc519ea82bcc065776a866e8d74c5ca9442"
+            ],
+            "index": "pypi",
+            "version": "==1.2.1"
+        },
+        "typed-ast": {
+            "hashes": [
+                "sha256:07d49388d5bf7e863f7fa2f124b1b1d89d8aa0e2f7812faff0a5658c01c59aa1",
+                "sha256:14bf1522cdee369e8f5581238edac09150c765ec1cb33615855889cf33dcb92d",
+                "sha256:240296b27397e4e37874abb1df2a608a92df85cf3e2a04d0d4d61055c8305ba6",
+                "sha256:36d829b31ab67d6fcb30e185ec996e1f72b892255a745d3a82138c97d21ed1cd",
+                "sha256:37f48d46d733d57cc70fd5f30572d11ab8ed92da6e6b28e024e4a3edfb456e37",
+                "sha256:4c790331247081ea7c632a76d5b2a265e6d325ecd3179d06e9cf8d46d90dd151",
+                "sha256:5dcfc2e264bd8a1db8b11a892bd1647154ce03eeba94b461effe68790d8b8e07",
+                "sha256:7147e2a76c75f0f64c4319886e7639e490fee87c9d25cb1d4faef1d8cf83a440",
+                "sha256:7703620125e4fb79b64aa52427ec192822e9f45d37d4b6625ab37ef403e1df70",
+                "sha256:8368f83e93c7156ccd40e49a783a6a6850ca25b556c0fa0240ed0f659d2fe496",
+                "sha256:84aa6223d71012c68d577c83f4e7db50d11d6b1399a9c779046d75e24bed74ea",
+                "sha256:85f95aa97a35bdb2f2f7d10ec5bbdac0aeb9dafdaf88e17492da0504de2e6400",
+                "sha256:8db0e856712f79c45956da0c9a40ca4246abc3485ae0d7ecc86a20f5e4c09abc",
+                "sha256:9044ef2df88d7f33692ae3f18d3be63dec69c4fb1b5a4a9ac950f9b4ba571606",
+                "sha256:963c80b583b0661918718b095e02303d8078950b26cc00b5e5ea9ababe0de1fc",
+                "sha256:987f15737aba2ab5f3928c617ccf1ce412e2e321c77ab16ca5a293e7bbffd581",
+                "sha256:9ec45db0c766f196ae629e509f059ff05fc3148f9ffd28f3cfe75d4afb485412",
+                "sha256:9fc0b3cb5d1720e7141d103cf4819aea239f7d136acf9ee4a69b047b7986175a",
+                "sha256:a2c927c49f2029291fbabd673d51a2180038f8cd5a5b2f290f78c4516be48be2",
+                "sha256:a38878a223bdd37c9709d07cd357bb79f4c760b29210e14ad0fb395294583787",
+                "sha256:b4fcdcfa302538f70929eb7b392f536a237cbe2ed9cba88e3bf5027b39f5f77f",
+                "sha256:c0c74e5579af4b977c8b932f40a5464764b2f86681327410aa028a22d2f54937",
+                "sha256:c1c876fd795b36126f773db9cbb393f19808edd2637e00fd6caba0e25f2c7b64",
+                "sha256:c9aadc4924d4b5799112837b226160428524a9a45f830e0d0f184b19e4090487",
+                "sha256:cc7b98bf58167b7f2db91a4327da24fb93368838eb84a44c472283778fc2446b",
+                "sha256:cf54cfa843f297991b7388c281cb3855d911137223c6b6d2dd82a47ae5125a41",
+                "sha256:d003156bb6a59cda9050e983441b7fa2487f7800d76bdc065566b7d728b4581a",
+                "sha256:d175297e9533d8d37437abc14e8a83cbc68af93cc9c1c59c2c292ec59a0697a3",
+                "sha256:d746a437cdbca200622385305aedd9aef68e8a645e385cc483bdc5e488f07166",
+                "sha256:e683e409e5c45d5c9082dc1daf13f6374300806240719f95dc783d1fc942af10"
+            ],
+            "index": "pypi",
+            "version": "==1.4.3"
+        },
+        "typing-extensions": {
+            "hashes": [
+                "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497",
+                "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342",
+                "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84"
+            ],
+            "index": "pypi",
+            "markers": "python_version < '3.10'",
+            "version": "==3.10.0.0"
+        },
+        "yarl": {
+            "hashes": [
+                "sha256:00d7ad91b6583602eb9c1d085a2cf281ada267e9a197e8b7cae487dadbfa293e",
+                "sha256:0355a701b3998dcd832d0dc47cc5dedf3874f966ac7f870e0f3a6788d802d434",
+                "sha256:15263c3b0b47968c1d90daa89f21fcc889bb4b1aac5555580d74565de6836366",
+                "sha256:2ce4c621d21326a4a5500c25031e102af589edb50c09b321049e388b3934eec3",
+                "sha256:31ede6e8c4329fb81c86706ba8f6bf661a924b53ba191b27aa5fcee5714d18ec",
+                "sha256:324ba3d3c6fee56e2e0b0d09bf5c73824b9f08234339d2b788af65e60040c959",
+                "sha256:329412812ecfc94a57cd37c9d547579510a9e83c516bc069470db5f75684629e",
+                "sha256:4736eaee5626db8d9cda9eb5282028cc834e2aeb194e0d8b50217d707e98bb5c",
+                "sha256:4953fb0b4fdb7e08b2f3b3be80a00d28c5c8a2056bb066169de00e6501b986b6",
+                "sha256:4c5bcfc3ed226bf6419f7a33982fb4b8ec2e45785a0561eb99274ebbf09fdd6a",
+                "sha256:547f7665ad50fa8563150ed079f8e805e63dd85def6674c97efd78eed6c224a6",
+                "sha256:5b883e458058f8d6099e4420f0cc2567989032b5f34b271c0827de9f1079a424",
+                "sha256:63f90b20ca654b3ecc7a8d62c03ffa46999595f0167d6450fa8383bab252987e",
+                "sha256:68dc568889b1c13f1e4745c96b931cc94fdd0defe92a72c2b8ce01091b22e35f",
+                "sha256:69ee97c71fee1f63d04c945f56d5d726483c4762845400a6795a3b75d56b6c50",
+                "sha256:6d6283d8e0631b617edf0fd726353cb76630b83a089a40933043894e7f6721e2",
+                "sha256:72a660bdd24497e3e84f5519e57a9ee9220b6f3ac4d45056961bf22838ce20cc",
+                "sha256:73494d5b71099ae8cb8754f1df131c11d433b387efab7b51849e7e1e851f07a4",
+                "sha256:7356644cbed76119d0b6bd32ffba704d30d747e0c217109d7979a7bc36c4d970",
+                "sha256:8a9066529240171b68893d60dca86a763eae2139dd42f42106b03cf4b426bf10",
+                "sha256:8aa3decd5e0e852dc68335abf5478a518b41bf2ab2f330fe44916399efedfae0",
+                "sha256:97b5bdc450d63c3ba30a127d018b866ea94e65655efaf889ebeabc20f7d12406",
+                "sha256:9ede61b0854e267fd565e7527e2f2eb3ef8858b301319be0604177690e1a3896",
+                "sha256:b2e9a456c121e26d13c29251f8267541bd75e6a1ccf9e859179701c36a078643",
+                "sha256:b5dfc9a40c198334f4f3f55880ecf910adebdcb2a0b9a9c23c9345faa9185721",
+                "sha256:bafb450deef6861815ed579c7a6113a879a6ef58aed4c3a4be54400ae8871478",
+                "sha256:c49ff66d479d38ab863c50f7bb27dee97c6627c5fe60697de15529da9c3de724",
+                "sha256:ce3beb46a72d9f2190f9e1027886bfc513702d748047b548b05dab7dfb584d2e",
+                "sha256:d26608cf178efb8faa5ff0f2d2e77c208f471c5a3709e577a7b3fd0445703ac8",
+                "sha256:d597767fcd2c3dc49d6eea360c458b65643d1e4dbed91361cf5e36e53c1f8c96",
+                "sha256:d5c32c82990e4ac4d8150fd7652b972216b204de4e83a122546dce571c1bdf25",
+                "sha256:d8d07d102f17b68966e2de0e07bfd6e139c7c02ef06d3a0f8d2f0f055e13bb76",
+                "sha256:e46fba844f4895b36f4c398c5af062a9808d1f26b2999c58909517384d5deda2",
+                "sha256:e6b5460dc5ad42ad2b36cca524491dfcaffbfd9c8df50508bddc354e787b8dc2",
+                "sha256:f040bcc6725c821a4c0665f3aa96a4d0805a7aaf2caf266d256b8ed71b9f041c",
+                "sha256:f0b059678fd549c66b89bed03efcabb009075bd131c248ecdf087bdb6faba24a",
+                "sha256:fcbb48a93e8699eae920f8d92f7160c03567b421bc17362a9ffbbd706a816f71"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==1.6.3"
+        },
+        "zipp": {
+            "hashes": [
+                "sha256:957cfda87797e389580cb8b9e3870841ca991e2125350677b2ca83a0e99390a3",
+                "sha256:f5812b1e007e48cff63449a5e9f4e7ebea716b4111f9c4f9a645f91d579bf0c4"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==3.5.0"
+        }
+    },
+    "develop": {
+        "aiohttp": {
+            "hashes": [
+                "sha256:02f46fc0e3c5ac58b80d4d56eb0a7c7d97fcef69ace9326289fb9f1955e65cfe",
+                "sha256:0563c1b3826945eecd62186f3f5c7d31abb7391fedc893b7e2b26303b5a9f3fe",
+                "sha256:114b281e4d68302a324dd33abb04778e8557d88947875cbf4e842c2c01a030c5",
+                "sha256:14762875b22d0055f05d12abc7f7d61d5fd4fe4642ce1a249abdf8c700bf1fd8",
+                "sha256:15492a6368d985b76a2a5fdd2166cddfea5d24e69eefed4630cbaae5c81d89bd",
+                "sha256:17c073de315745a1510393a96e680d20af8e67e324f70b42accbd4cb3315c9fb",
+                "sha256:209b4a8ee987eccc91e2bd3ac36adee0e53a5970b8ac52c273f7f8fd4872c94c",
+                "sha256:230a8f7e24298dea47659251abc0fd8b3c4e38a664c59d4b89cca7f6c09c9e87",
+                "sha256:2e19413bf84934d651344783c9f5e22dee452e251cfd220ebadbed2d9931dbf0",
+                "sha256:393f389841e8f2dfc86f774ad22f00923fdee66d238af89b70ea314c4aefd290",
+                "sha256:3cf75f7cdc2397ed4442594b935a11ed5569961333d49b7539ea741be2cc79d5",
+                "sha256:3d78619672183be860b96ed96f533046ec97ca067fd46ac1f6a09cd9b7484287",
+                "sha256:40eced07f07a9e60e825554a31f923e8d3997cfc7fb31dbc1328c70826e04cde",
+                "sha256:493d3299ebe5f5a7c66b9819eacdcfbbaaf1a8e84911ddffcdc48888497afecf",
+                "sha256:4b302b45040890cea949ad092479e01ba25911a15e648429c7c5aae9650c67a8",
+                "sha256:515dfef7f869a0feb2afee66b957cc7bbe9ad0cdee45aec7fdc623f4ecd4fb16",
+                "sha256:547da6cacac20666422d4882cfcd51298d45f7ccb60a04ec27424d2f36ba3eaf",
+                "sha256:5df68496d19f849921f05f14f31bd6ef53ad4b00245da3195048c69934521809",
+                "sha256:64322071e046020e8797117b3658b9c2f80e3267daec409b350b6a7a05041213",
+                "sha256:7615dab56bb07bff74bc865307aeb89a8bfd9941d2ef9d817b9436da3a0ea54f",
+                "sha256:79ebfc238612123a713a457d92afb4096e2148be17df6c50fb9bf7a81c2f8013",
+                "sha256:7b18b97cf8ee5452fa5f4e3af95d01d84d86d32c5e2bfa260cf041749d66360b",
+                "sha256:932bb1ea39a54e9ea27fc9232163059a0b8855256f4052e776357ad9add6f1c9",
+                "sha256:a00bb73540af068ca7390e636c01cbc4f644961896fa9363154ff43fd37af2f5",
+                "sha256:a5ca29ee66f8343ed336816c553e82d6cade48a3ad702b9ffa6125d187e2dedb",
+                "sha256:af9aa9ef5ba1fd5b8c948bb11f44891968ab30356d65fd0cc6707d989cd521df",
+                "sha256:bb437315738aa441251214dad17428cafda9cdc9729499f1d6001748e1d432f4",
+                "sha256:bdb230b4943891321e06fc7def63c7aace16095be7d9cf3b1e01be2f10fba439",
+                "sha256:c6e9dcb4cb338d91a73f178d866d051efe7c62a7166653a91e7d9fb18274058f",
+                "sha256:cffe3ab27871bc3ea47df5d8f7013945712c46a3cc5a95b6bee15887f1675c22",
+                "sha256:d012ad7911653a906425d8473a1465caa9f8dea7fcf07b6d870397b774ea7c0f",
+                "sha256:d9e13b33afd39ddeb377eff2c1c4f00544e191e1d1dee5b6c51ddee8ea6f0cf5",
+                "sha256:e4b2b334e68b18ac9817d828ba44d8fcb391f6acb398bcc5062b14b2cbeac970",
+                "sha256:e54962802d4b8b18b6207d4a927032826af39395a3bd9196a5af43fc4e60b009",
+                "sha256:f705e12750171c0ab4ef2a3c76b9a4024a62c4103e3a55dd6f99265b9bc6fcfc",
+                "sha256:f881853d2643a29e643609da57b96d5f9c9b93f62429dcc1cbb413c7d07f0e1a",
+                "sha256:fe60131d21b31fd1a14bd43e6bb88256f69dfc3188b3a89d736d6c71ed43ec95"
+            ],
+            "index": "pypi",
+            "version": "==3.7.4.post0"
+        },
+        "alabaster": {
+            "hashes": [
+                "sha256:446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359",
+                "sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02"
+            ],
+            "version": "==0.7.12"
+        },
+        "async-timeout": {
+            "hashes": [
+                "sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f",
+                "sha256:4291ca197d287d274d0b6cb5d6f8f8f82d434ed288f962539ff18cc9012f9ea3"
+            ],
+            "markers": "python_full_version >= '3.5.3'",
+            "version": "==3.0.1"
+        },
+        "attrs": {
+            "hashes": [
+                "sha256:149e90d6d8ac20db7a955ad60cf0e6881a3f20d37096140088356da6c716b0b1",
+                "sha256:ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==21.2.0"
+        },
+        "babel": {
+            "hashes": [
+                "sha256:ab49e12b91d937cd11f0b67cb259a57ab4ad2b59ac7a3b41d6c06c0ac5b0def9",
+                "sha256:bc0c176f9f6a994582230df350aa6e05ba2ebe4b3ac317eab29d9be5d2768da0"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.9.1"
+        },
+        "backcall": {
+            "hashes": [
+                "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e",
+                "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"
+            ],
+            "version": "==0.2.0"
+        },
+        "backports.entry-points-selectable": {
+            "hashes": [
+                "sha256:988468260ec1c196dab6ae1149260e2f5472c9110334e5d51adcb77867361f6a",
+                "sha256:a6d9a871cde5e15b4c4a53e3d43ba890cc6861ec1332c9c2428c92f977192acc"
+            ],
+            "markers": "python_version >= '2.7'",
+            "version": "==1.1.0"
+        },
+        "black": {
+            "editable": true,
+            "extras": [
+                "d"
+            ],
+            "path": "."
+        },
+        "bleach": {
+            "hashes": [
+                "sha256:c1685a132e6a9a38bf93752e5faab33a9517a6c0bb2f37b785e47bf253bdb51d",
+                "sha256:ffa9221c6ac29399cc50fcc33473366edd0cf8d5e2cbbbb63296dc327fb67cc8"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==4.0.0"
+        },
+        "certifi": {
+            "hashes": [
+                "sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee",
+                "sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8"
+            ],
+            "version": "==2021.5.30"
+        },
+        "cffi": {
+            "hashes": [
+                "sha256:06c54a68935738d206570b20da5ef2b6b6d92b38ef3ec45c5422c0ebaf338d4d",
+                "sha256:0c0591bee64e438883b0c92a7bed78f6290d40bf02e54c5bf0978eaf36061771",
+                "sha256:19ca0dbdeda3b2615421d54bef8985f72af6e0c47082a8d26122adac81a95872",
+                "sha256:22b9c3c320171c108e903d61a3723b51e37aaa8c81255b5e7ce102775bd01e2c",
+                "sha256:26bb2549b72708c833f5abe62b756176022a7b9a7f689b571e74c8478ead51dc",
+                "sha256:33791e8a2dc2953f28b8d8d300dde42dd929ac28f974c4b4c6272cb2955cb762",
+                "sha256:3c8d896becff2fa653dc4438b54a5a25a971d1f4110b32bd3068db3722c80202",
+                "sha256:4373612d59c404baeb7cbd788a18b2b2a8331abcc84c3ba40051fcd18b17a4d5",
+                "sha256:487d63e1454627c8e47dd230025780e91869cfba4c753a74fda196a1f6ad6548",
+                "sha256:48916e459c54c4a70e52745639f1db524542140433599e13911b2f329834276a",
+                "sha256:4922cd707b25e623b902c86188aca466d3620892db76c0bdd7b99a3d5e61d35f",
+                "sha256:55af55e32ae468e9946f741a5d51f9896da6b9bf0bbdd326843fec05c730eb20",
+                "sha256:57e555a9feb4a8460415f1aac331a2dc833b1115284f7ded7278b54afc5bd218",
+                "sha256:5d4b68e216fc65e9fe4f524c177b54964af043dde734807586cf5435af84045c",
+                "sha256:64fda793737bc4037521d4899be780534b9aea552eb673b9833b01f945904c2e",
+                "sha256:6d6169cb3c6c2ad50db5b868db6491a790300ade1ed5d1da29289d73bbe40b56",
+                "sha256:7bcac9a2b4fdbed2c16fa5681356d7121ecabf041f18d97ed5b8e0dd38a80224",
+                "sha256:80b06212075346b5546b0417b9f2bf467fea3bfe7352f781ffc05a8ab24ba14a",
+                "sha256:818014c754cd3dba7229c0f5884396264d51ffb87ec86e927ef0be140bfdb0d2",
+                "sha256:8eb687582ed7cd8c4bdbff3df6c0da443eb89c3c72e6e5dcdd9c81729712791a",
+                "sha256:99f27fefe34c37ba9875f224a8f36e31d744d8083e00f520f133cab79ad5e819",
+                "sha256:9f3e33c28cd39d1b655ed1ba7247133b6f7fc16fa16887b120c0c670e35ce346",
+                "sha256:a8661b2ce9694ca01c529bfa204dbb144b275a31685a075ce123f12331be790b",
+                "sha256:a9da7010cec5a12193d1af9872a00888f396aba3dc79186604a09ea3ee7c029e",
+                "sha256:aedb15f0a5a5949ecb129a82b72b19df97bbbca024081ed2ef88bd5c0a610534",
+                "sha256:b315d709717a99f4b27b59b021e6207c64620790ca3e0bde636a6c7f14618abb",
+                "sha256:ba6f2b3f452e150945d58f4badd92310449876c4c954836cfb1803bdd7b422f0",
+                "sha256:c33d18eb6e6bc36f09d793c0dc58b0211fccc6ae5149b808da4a62660678b156",
+                "sha256:c9a875ce9d7fe32887784274dd533c57909b7b1dcadcc128a2ac21331a9765dd",
+                "sha256:c9e005e9bd57bc987764c32a1bee4364c44fdc11a3cc20a40b93b444984f2b87",
+                "sha256:d2ad4d668a5c0645d281dcd17aff2be3212bc109b33814bbb15c4939f44181cc",
+                "sha256:d950695ae4381ecd856bcaf2b1e866720e4ab9a1498cba61c602e56630ca7195",
+                "sha256:e22dcb48709fc51a7b58a927391b23ab37eb3737a98ac4338e2448bef8559b33",
+                "sha256:e8c6a99be100371dbb046880e7a282152aa5d6127ae01783e37662ef73850d8f",
+                "sha256:e9dc245e3ac69c92ee4c167fbdd7428ec1956d4e754223124991ef29eb57a09d",
+                "sha256:eb687a11f0a7a1839719edd80f41e459cc5366857ecbed383ff376c4e3cc6afd",
+                "sha256:eb9e2a346c5238a30a746893f23a9535e700f8192a68c07c0258e7ece6ff3728",
+                "sha256:ed38b924ce794e505647f7c331b22a693bee1538fdf46b0222c4717b42f744e7",
+                "sha256:f0010c6f9d1a4011e429109fda55a225921e3206e7f62a0c22a35344bfd13cca",
+                "sha256:f0c5d1acbfca6ebdd6b1e3eded8d261affb6ddcf2186205518f1428b8569bb99",
+                "sha256:f10afb1004f102c7868ebfe91c28f4a712227fe4cb24974350ace1f90e1febbf",
+                "sha256:f174135f5609428cc6e1b9090f9268f5c8935fddb1b25ccb8255a2d50de6789e",
+                "sha256:f3ebe6e73c319340830a9b2825d32eb6d8475c1dac020b4f0aa774ee3b898d1c",
+                "sha256:f627688813d0a4140153ff532537fbe4afea5a3dffce1f9deb7f91f848a832b5",
+                "sha256:fd4305f86f53dfd8cd3522269ed7fc34856a8ee3709a5e28b2836b2db9d4cd69"
+            ],
+            "version": "==1.14.6"
+        },
+        "cfgv": {
+            "hashes": [
+                "sha256:9e600479b3b99e8af981ecdfc80a0296104ee610cab48a5ae4ffd0b668650eb1",
+                "sha256:b449c9c6118fe8cca7fa5e00b9ec60ba08145d281d52164230a69211c5d597a1"
+            ],
+            "markers": "python_full_version >= '3.6.1'",
+            "version": "==3.3.0"
+        },
+        "chardet": {
+            "hashes": [
+                "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa",
+                "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==4.0.0"
+        },
+        "charset-normalizer": {
+            "hashes": [
+                "sha256:0c8911edd15d19223366a194a513099a302055a962bca2cec0f54b8b63175d8b",
+                "sha256:f23667ebe1084be45f6ae0538e4a5a865206544097e4e8bbcacf42cd02a348f3"
+            ],
+            "markers": "python_version >= '3'",
+            "version": "==2.0.4"
+        },
+        "click": {
+            "hashes": [
+                "sha256:8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a",
+                "sha256:fba402a4a47334742d782209a7c79bc448911afe1149d07bdabdf480b3e2f4b6"
+            ],
+            "index": "pypi",
+            "version": "==8.0.1"
+        },
+        "colorama": {
+            "hashes": [
+                "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b",
+                "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==0.4.4"
+        },
+        "coverage": {
+            "hashes": [
+                "sha256:004d1880bed2d97151facef49f08e255a20ceb6f9432df75f4eef018fdd5a78c",
+                "sha256:01d84219b5cdbfc8122223b39a954820929497a1cb1422824bb86b07b74594b6",
+                "sha256:040af6c32813fa3eae5305d53f18875bedd079960822ef8ec067a66dd8afcd45",
+                "sha256:06191eb60f8d8a5bc046f3799f8a07a2d7aefb9504b0209aff0b47298333302a",
+                "sha256:13034c4409db851670bc9acd836243aeee299949bd5673e11844befcb0149f03",
+                "sha256:13c4ee887eca0f4c5a247b75398d4114c37882658300e153113dafb1d76de529",
+                "sha256:184a47bbe0aa6400ed2d41d8e9ed868b8205046518c52464fde713ea06e3a74a",
+                "sha256:18ba8bbede96a2c3dde7b868de9dcbd55670690af0988713f0603f037848418a",
+                "sha256:1aa846f56c3d49205c952d8318e76ccc2ae23303351d9270ab220004c580cfe2",
+                "sha256:217658ec7187497e3f3ebd901afdca1af062b42cfe3e0dafea4cced3983739f6",
+                "sha256:24d4a7de75446be83244eabbff746d66b9240ae020ced65d060815fac3423759",
+                "sha256:2910f4d36a6a9b4214bb7038d537f015346f413a975d57ca6b43bf23d6563b53",
+                "sha256:2949cad1c5208b8298d5686d5a85b66aae46d73eec2c3e08c817dd3513e5848a",
+                "sha256:2a3859cb82dcbda1cfd3e6f71c27081d18aa251d20a17d87d26d4cd216fb0af4",
+                "sha256:2cafbbb3af0733db200c9b5f798d18953b1a304d3f86a938367de1567f4b5bff",
+                "sha256:2e0d881ad471768bf6e6c2bf905d183543f10098e3b3640fc029509530091502",
+                "sha256:30c77c1dc9f253283e34c27935fded5015f7d1abe83bc7821680ac444eaf7793",
+                "sha256:3487286bc29a5aa4b93a072e9592f22254291ce96a9fbc5251f566b6b7343cdb",
+                "sha256:372da284cfd642d8e08ef606917846fa2ee350f64994bebfbd3afb0040436905",
+                "sha256:41179b8a845742d1eb60449bdb2992196e211341818565abded11cfa90efb821",
+                "sha256:44d654437b8ddd9eee7d1eaee28b7219bec228520ff809af170488fd2fed3e2b",
+                "sha256:4a7697d8cb0f27399b0e393c0b90f0f1e40c82023ea4d45d22bce7032a5d7b81",
+                "sha256:51cb9476a3987c8967ebab3f0fe144819781fca264f57f89760037a2ea191cb0",
+                "sha256:52596d3d0e8bdf3af43db3e9ba8dcdaac724ba7b5ca3f6358529d56f7a166f8b",
+                "sha256:53194af30d5bad77fcba80e23a1441c71abfb3e01192034f8246e0d8f99528f3",
+                "sha256:5fec2d43a2cc6965edc0bb9e83e1e4b557f76f843a77a2496cbe719583ce8184",
+                "sha256:6c90e11318f0d3c436a42409f2749ee1a115cd8b067d7f14c148f1ce5574d701",
+                "sha256:74d881fc777ebb11c63736622b60cb9e4aee5cace591ce274fb69e582a12a61a",
+                "sha256:7501140f755b725495941b43347ba8a2777407fc7f250d4f5a7d2a1050ba8e82",
+                "sha256:796c9c3c79747146ebd278dbe1e5c5c05dd6b10cc3bcb8389dfdf844f3ead638",
+                "sha256:869a64f53488f40fa5b5b9dcb9e9b2962a66a87dab37790f3fcfb5144b996ef5",
+                "sha256:8963a499849a1fc54b35b1c9f162f4108017b2e6db2c46c1bed93a72262ed083",
+                "sha256:8d0a0725ad7c1a0bcd8d1b437e191107d457e2ec1084b9f190630a4fb1af78e6",
+                "sha256:900fbf7759501bc7807fd6638c947d7a831fc9fdf742dc10f02956ff7220fa90",
+                "sha256:92b017ce34b68a7d67bd6d117e6d443a9bf63a2ecf8567bb3d8c6c7bc5014465",
+                "sha256:970284a88b99673ccb2e4e334cfb38a10aab7cd44f7457564d11898a74b62d0a",
+                "sha256:972c85d205b51e30e59525694670de6a8a89691186012535f9d7dbaa230e42c3",
+                "sha256:9a1ef3b66e38ef8618ce5fdc7bea3d9f45f3624e2a66295eea5e57966c85909e",
+                "sha256:af0e781009aaf59e25c5a678122391cb0f345ac0ec272c7961dc5455e1c40066",
+                "sha256:b6d534e4b2ab35c9f93f46229363e17f63c53ad01330df9f2d6bd1187e5eaacf",
+                "sha256:b7895207b4c843c76a25ab8c1e866261bcfe27bfaa20c192de5190121770672b",
+                "sha256:c0891a6a97b09c1f3e073a890514d5012eb256845c451bd48f7968ef939bf4ae",
+                "sha256:c2723d347ab06e7ddad1a58b2a821218239249a9e4365eaff6649d31180c1669",
+                "sha256:d1f8bf7b90ba55699b3a5e44930e93ff0189aa27186e96071fac7dd0d06a1873",
+                "sha256:d1f9ce122f83b2305592c11d64f181b87153fc2c2bbd3bb4a3dde8303cfb1a6b",
+                "sha256:d314ed732c25d29775e84a960c3c60808b682c08d86602ec2c3008e1202e3bb6",
+                "sha256:d636598c8305e1f90b439dbf4f66437de4a5e3c31fdf47ad29542478c8508bbb",
+                "sha256:deee1077aae10d8fa88cb02c845cfba9b62c55e1183f52f6ae6a2df6a2187160",
+                "sha256:ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c",
+                "sha256:f030f8873312a16414c0d8e1a1ddff2d3235655a2174e3648b4fa66b3f2f1079",
+                "sha256:f0b278ce10936db1a37e6954e15a3730bea96a0997c26d7fee88e6c396c2086d",
+                "sha256:f11642dddbb0253cc8853254301b51390ba0081750a8ac03f20ea8103f0c56b6"
+            ],
+            "index": "pypi",
+            "version": "==5.5"
+        },
+        "cryptography": {
+            "hashes": [
+                "sha256:0f1212a66329c80d68aeeb39b8a16d54ef57071bf22ff4e521657b27372e327d",
+                "sha256:1e056c28420c072c5e3cb36e2b23ee55e260cb04eee08f702e0edfec3fb51959",
+                "sha256:240f5c21aef0b73f40bb9f78d2caff73186700bf1bc6b94285699aff98cc16c6",
+                "sha256:26965837447f9c82f1855e0bc8bc4fb910240b6e0d16a664bb722df3b5b06873",
+                "sha256:37340614f8a5d2fb9aeea67fd159bfe4f5f4ed535b1090ce8ec428b2f15a11f2",
+                "sha256:3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713",
+                "sha256:3d8427734c781ea5f1b41d6589c293089704d4759e34597dce91014ac125aad1",
+                "sha256:7ec5d3b029f5fa2b179325908b9cd93db28ab7b85bb6c1db56b10e0b54235177",
+                "sha256:8e56e16617872b0957d1c9742a3f94b43533447fd78321514abbe7db216aa250",
+                "sha256:b01fd6f2737816cb1e08ed4807ae194404790eac7ad030b34f2ce72b332f5586",
+                "sha256:bf40af59ca2465b24e54f671b2de2c59257ddc4f7e5706dbd6930e26823668d3",
+                "sha256:de4e5f7f68220d92b7637fc99847475b59154b7a1b3868fb7385337af54ac9ca",
+                "sha256:eb8cc2afe8b05acbd84a43905832ec78e7b3873fb124ca190f574dca7389a87d",
+                "sha256:ee77aa129f481be46f8d92a1a7db57269a2f23052d5f2433b4621bb457081cc9"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==3.4.7"
+        },
+        "dataclasses": {
+            "hashes": [
+                "sha256:0201d89fa866f68c8ebd9d08ee6ff50c0b255f8ec63a71c16fda7af82bb887bf",
+                "sha256:8479067f342acf957dc82ec415d355ab5edb7e7646b90dc6e2fd1d96ad084c97"
+            ],
+            "index": "pypi",
+            "markers": "python_version < '3.7'",
+            "version": "==0.8"
+        },
+        "decorator": {
+            "hashes": [
+                "sha256:6e5c199c16f7a9f0e3a61a4a54b3d27e7dad0dbdde92b944426cb20914376323",
+                "sha256:72ecfba4320a893c53f9706bebb2d55c270c1e51a28789361aa93e4a21319ed5"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==5.0.9"
+        },
+        "distlib": {
+            "hashes": [
+                "sha256:106fef6dc37dd8c0e2c0a60d3fca3e77460a48907f335fa28420463a6f799736",
+                "sha256:23e223426b28491b1ced97dc3bbe183027419dfc7982b4fa2f05d5f3ff10711c"
+            ],
+            "version": "==0.3.2"
+        },
+        "docutils": {
+            "hashes": [
+                "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125",
+                "sha256:cf316c8370a737a022b72b56874f6602acf974a37a9fba42ec2876387549fc61"
+            ],
+            "index": "pypi",
+            "version": "==0.17.1"
+        },
+        "execnet": {
+            "hashes": [
+                "sha256:8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5",
+                "sha256:a295f7cc774947aac58dde7fdc85f4aa00c42adf5d8f5468fc630c1acf30a142"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==1.9.0"
+        },
+        "filelock": {
+            "hashes": [
+                "sha256:18d82244ee114f543149c66a6e0c14e9c4f8a1044b5cdaadd0f82159d6a6ff59",
+                "sha256:929b7d63ec5b7d6b71b0fa5ac14e030b3f70b75747cef1b10da9b879fef15836"
+            ],
+            "version": "==3.0.12"
+        },
+        "flake8": {
+            "hashes": [
+                "sha256:07528381786f2a6237b061f6e96610a4167b226cb926e2aa2b6b1d78057c576b",
+                "sha256:bf8fd333346d844f616e8d47905ef3a3384edae6b4e9beb0c5101e25e3110907"
+            ],
+            "index": "pypi",
+            "version": "==3.9.2"
+        },
+        "flake8-bugbear": {
+            "hashes": [
+                "sha256:2346c81f889955b39e4a368eb7d508de723d9de05716c287dc860a4073dc57e7",
+                "sha256:4f305dca96be62bf732a218fe6f1825472a621d3452c5b994d8f89dae21dbafa"
+            ],
+            "index": "pypi",
+            "version": "==21.4.3"
+        },
+        "identify": {
+            "hashes": [
+                "sha256:7199679b5be13a6b40e6e19ea473e789b11b4e3b60986499b1f589ffb03c217c",
+                "sha256:7bc6e829392bd017236531963d2d937d66fc27cadc643ac0aba2ce9f26157c79"
+            ],
+            "markers": "python_full_version >= '3.6.1'",
+            "version": "==2.2.13"
+        },
+        "idna": {
+            "hashes": [
+                "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a",
+                "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==3.2"
+        },
+        "idna-ssl": {
+            "hashes": [
+                "sha256:a933e3bb13da54383f9e8f35dc4f9cb9eb9b3b78c6b36f311254d6d0d92c6c7c"
+            ],
+            "markers": "python_version < '3.7'",
+            "version": "==1.1.0"
+        },
+        "imagesize": {
+            "hashes": [
+                "sha256:6965f19a6a2039c7d48bca7dba2473069ff854c36ae6f19d2cde309d998228a1",
+                "sha256:b1f6b5a4eab1f73479a50fb79fcf729514a900c341d8503d62a62dbc4127a2b1"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==1.2.0"
+        },
+        "importlib-metadata": {
+            "hashes": [
+                "sha256:7b30a78db2922d78a6f47fb30683156a14f3c6aa5cc23f77cc8967e9ab2d002f",
+                "sha256:ed5157fef23a4bc4594615a0dd8eba94b2bb36bf2a343fa3d8bb2fa0a62a99d5"
+            ],
+            "markers": "python_version < '3.8'",
+            "version": "==4.6.4"
+        },
+        "importlib-resources": {
+            "hashes": [
+                "sha256:2480d8e07d1890056cb53c96e3de44fead9c62f2ba949b0f2e4c4345f4afa977",
+                "sha256:a65882a4d0fe5fbf702273456ba2ce74fe44892c25e42e057aca526b702a6d4b"
+            ],
+            "markers": "python_version < '3.7'",
+            "version": "==5.2.2"
+        },
+        "iniconfig": {
+            "hashes": [
+                "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3",
+                "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"
+            ],
+            "version": "==1.1.1"
+        },
+        "ipython": {
+            "hashes": [
+                "sha256:2dbcc8c27ca7d3cfe4fcdff7f45b27f9a8d3edfa70ff8024a71c7a8eb5f09d64",
+                "sha256:9f4fcb31d3b2c533333893b9172264e4821c1ac91839500f31bd43f2c59b3ccf"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==7.16.1"
+        },
+        "ipython-genutils": {
+            "hashes": [
+                "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8",
+                "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"
+            ],
+            "version": "==0.2.0"
+        },
+        "jedi": {
+            "hashes": [
+                "sha256:18456d83f65f400ab0c2d3319e48520420ef43b23a086fdc05dff34132f0fb93",
+                "sha256:92550a404bad8afed881a137ec9a461fed49eca661414be45059329614ed0707"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==0.18.0"
+        },
+        "jeepney": {
+            "hashes": [
+                "sha256:1b5a0ea5c0e7b166b2f5895b91a08c14de8915afda4407fb5022a195224958ac",
+                "sha256:fa9e232dfa0c498bd0b8a3a73b8d8a31978304dcef0515adc859d4e096f96f4f"
+            ],
+            "markers": "sys_platform == 'linux'",
+            "version": "==0.7.1"
+        },
+        "jinja2": {
+            "hashes": [
+                "sha256:1f06f2da51e7b56b8f238affdd6b4e2c61e39598a378cc49345bc1bd42a978a4",
+                "sha256:703f484b47a6af502e743c9122595cc812b0271f661722403114f71a79d0f5a4"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==3.0.1"
+        },
+        "keyring": {
+            "hashes": [
+                "sha256:b32397fd7e7063f8dd74a26db910c9862fc2109285fa16e3b5208bcb42a3e579",
+                "sha256:b7e0156667f5dcc73c1f63a518005cd18a4eb23fe77321194fefcc03748b21a4"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==23.1.0"
+        },
+        "markdown-it-py": {
+            "hashes": [
+                "sha256:36be6bb3ad987bfdb839f5ba78ddf094552ca38ccbd784ae4f74a4e1419fc6e3",
+                "sha256:98080fc0bc34c4f2bcf0846a096a9429acbd9d5d8e67ed34026c03c61c464389"
+            ],
+            "markers": "python_version ~= '3.6'",
+            "version": "==1.1.0"
+        },
+        "markupsafe": {
+            "hashes": [
+                "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298",
+                "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64",
+                "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b",
+                "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567",
+                "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff",
+                "sha256:0d4b31cc67ab36e3392bbf3862cfbadac3db12bdd8b02a2731f509ed5b829724",
+                "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74",
+                "sha256:168cd0a3642de83558a5153c8bd34f175a9a6e7f6dc6384b9655d2697312a646",
+                "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35",
+                "sha256:1f2ade76b9903f39aa442b4aadd2177decb66525062db244b35d71d0ee8599b6",
+                "sha256:2a7d351cbd8cfeb19ca00de495e224dea7e7d919659c2841bbb7f420ad03e2d6",
+                "sha256:2d7d807855b419fc2ed3e631034685db6079889a1f01d5d9dac950f764da3dad",
+                "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26",
+                "sha256:36bc903cbb393720fad60fc28c10de6acf10dc6cc883f3e24ee4012371399a38",
+                "sha256:37205cac2a79194e3750b0af2a5720d95f786a55ce7df90c3af697bfa100eaac",
+                "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7",
+                "sha256:3dd007d54ee88b46be476e293f48c85048603f5f516008bee124ddd891398ed6",
+                "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75",
+                "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f",
+                "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135",
+                "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8",
+                "sha256:5855f8438a7d1d458206a2466bf82b0f104a3724bf96a1c781ab731e4201731a",
+                "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a",
+                "sha256:5bb28c636d87e840583ee3adeb78172efc47c8b26127267f54a9c0ec251d41a9",
+                "sha256:60bf42e36abfaf9aff1f50f52644b336d4f0a3fd6d8a60ca0d054ac9f713a864",
+                "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914",
+                "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18",
+                "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8",
+                "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2",
+                "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d",
+                "sha256:6fcf051089389abe060c9cd7caa212c707e58153afa2c649f00346ce6d260f1b",
+                "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b",
+                "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f",
+                "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb",
+                "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833",
+                "sha256:99df47edb6bda1249d3e80fdabb1dab8c08ef3975f69aed437cb69d0a5de1e28",
+                "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415",
+                "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902",
+                "sha256:add36cb2dbb8b736611303cd3bfcee00afd96471b09cda130da3581cbdc56a6d",
+                "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9",
+                "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d",
+                "sha256:baa1a4e8f868845af802979fcdbf0bb11f94f1cb7ced4c4b8a351bb60d108145",
+                "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066",
+                "sha256:bf5d821ffabf0ef3533c39c518f3357b171a1651c1ff6827325e4489b0e46c3c",
+                "sha256:c47adbc92fc1bb2b3274c4b3a43ae0e4573d9fbff4f54cd484555edbf030baf1",
+                "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f",
+                "sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53",
+                "sha256:e0f138900af21926a02425cf736db95be9f4af72ba1bb21453432a07f6082134",
+                "sha256:e9936f0b261d4df76ad22f8fee3ae83b60d7c3e871292cd42f40b81b70afae85",
+                "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5",
+                "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94",
+                "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509",
+                "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51",
+                "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==2.0.1"
+        },
+        "matplotlib-inline": {
+            "hashes": [
+                "sha256:5cf1176f554abb4fa98cb362aa2b55c500147e4bdbb07e3fda359143e1da0811",
+                "sha256:f41d5ff73c9f5385775d5c0bc13b424535c8402fe70ea8210f93e11f3683993e"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==0.1.2"
+        },
+        "mccabe": {
+            "hashes": [
+                "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42",
+                "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"
+            ],
+            "version": "==0.6.1"
+        },
+        "mdit-py-plugins": {
+            "hashes": [
+                "sha256:1833bf738e038e35d89cb3a07eb0d227ed647ce7dd357579b65343740c6d249c",
+                "sha256:5991cef645502e80a5388ec4fc20885d2313d4871e8b8e320ca2de14ac0c015f"
+            ],
+            "markers": "python_version ~= '3.6'",
+            "version": "==0.2.8"
+        },
+        "multidict": {
+            "hashes": [
+                "sha256:018132dbd8688c7a69ad89c4a3f39ea2f9f33302ebe567a879da8f4ca73f0d0a",
+                "sha256:051012ccee979b2b06be928a6150d237aec75dd6bf2d1eeeb190baf2b05abc93",
+                "sha256:05c20b68e512166fddba59a918773ba002fdd77800cad9f55b59790030bab632",
+                "sha256:07b42215124aedecc6083f1ce6b7e5ec5b50047afa701f3442054373a6deb656",
+                "sha256:0e3c84e6c67eba89c2dbcee08504ba8644ab4284863452450520dad8f1e89b79",
+                "sha256:0e929169f9c090dae0646a011c8b058e5e5fb391466016b39d21745b48817fd7",
+                "sha256:1ab820665e67373de5802acae069a6a05567ae234ddb129f31d290fc3d1aa56d",
+                "sha256:25b4e5f22d3a37ddf3effc0710ba692cfc792c2b9edfb9c05aefe823256e84d5",
+                "sha256:2e68965192c4ea61fff1b81c14ff712fc7dc15d2bd120602e4a3494ea6584224",
+                "sha256:2f1a132f1c88724674271d636e6b7351477c27722f2ed789f719f9e3545a3d26",
+                "sha256:37e5438e1c78931df5d3c0c78ae049092877e5e9c02dd1ff5abb9cf27a5914ea",
+                "sha256:3a041b76d13706b7fff23b9fc83117c7b8fe8d5fe9e6be45eee72b9baa75f348",
+                "sha256:3a4f32116f8f72ecf2a29dabfb27b23ab7cdc0ba807e8459e59a93a9be9506f6",
+                "sha256:46c73e09ad374a6d876c599f2328161bcd95e280f84d2060cf57991dec5cfe76",
+                "sha256:46dd362c2f045095c920162e9307de5ffd0a1bfbba0a6e990b344366f55a30c1",
+                "sha256:4b186eb7d6ae7c06eb4392411189469e6a820da81447f46c0072a41c748ab73f",
+                "sha256:54fd1e83a184e19c598d5e70ba508196fd0bbdd676ce159feb412a4a6664f952",
+                "sha256:585fd452dd7782130d112f7ddf3473ffdd521414674c33876187e101b588738a",
+                "sha256:5cf3443199b83ed9e955f511b5b241fd3ae004e3cb81c58ec10f4fe47c7dce37",
+                "sha256:6a4d5ce640e37b0efcc8441caeea8f43a06addace2335bd11151bc02d2ee31f9",
+                "sha256:7df80d07818b385f3129180369079bd6934cf70469f99daaebfac89dca288359",
+                "sha256:806068d4f86cb06af37cd65821554f98240a19ce646d3cd24e1c33587f313eb8",
+                "sha256:830f57206cc96ed0ccf68304141fec9481a096c4d2e2831f311bde1c404401da",
+                "sha256:929006d3c2d923788ba153ad0de8ed2e5ed39fdbe8e7be21e2f22ed06c6783d3",
+                "sha256:9436dc58c123f07b230383083855593550c4d301d2532045a17ccf6eca505f6d",
+                "sha256:9dd6e9b1a913d096ac95d0399bd737e00f2af1e1594a787e00f7975778c8b2bf",
+                "sha256:ace010325c787c378afd7f7c1ac66b26313b3344628652eacd149bdd23c68841",
+                "sha256:b47a43177a5e65b771b80db71e7be76c0ba23cc8aa73eeeb089ed5219cdbe27d",
+                "sha256:b797515be8743b771aa868f83563f789bbd4b236659ba52243b735d80b29ed93",
+                "sha256:b7993704f1a4b204e71debe6095150d43b2ee6150fa4f44d6d966ec356a8d61f",
+                "sha256:d5c65bdf4484872c4af3150aeebe101ba560dcfb34488d9a8ff8dbcd21079647",
+                "sha256:d81eddcb12d608cc08081fa88d046c78afb1bf8107e6feab5d43503fea74a635",
+                "sha256:dc862056f76443a0db4509116c5cd480fe1b6a2d45512a653f9a855cc0517456",
+                "sha256:ecc771ab628ea281517e24fd2c52e8f31c41e66652d07599ad8818abaad38cda",
+                "sha256:f200755768dc19c6f4e2b672421e0ebb3dd54c38d5a4f262b872d8cfcc9e93b5",
+                "sha256:f21756997ad8ef815d8ef3d34edd98804ab5ea337feedcd62fb52d22bf531281",
+                "sha256:fc13a9524bc18b6fb6e0dbec3533ba0496bbed167c56d0aabefd965584557d80"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==5.1.0"
+        },
+        "mypy": {
+            "hashes": [
+                "sha256:088cd9c7904b4ad80bec811053272986611b84221835e079be5bcad029e79dd9",
+                "sha256:0aadfb2d3935988ec3815952e44058a3100499f5be5b28c34ac9d79f002a4a9a",
+                "sha256:119bed3832d961f3a880787bf621634ba042cb8dc850a7429f643508eeac97b9",
+                "sha256:1a85e280d4d217150ce8cb1a6dddffd14e753a4e0c3cf90baabb32cefa41b59e",
+                "sha256:3c4b8ca36877fc75339253721f69603a9c7fdb5d4d5a95a1a1b899d8b86a4de2",
+                "sha256:3e382b29f8e0ccf19a2df2b29a167591245df90c0b5a2542249873b5c1d78212",
+                "sha256:42c266ced41b65ed40a282c575705325fa7991af370036d3f134518336636f5b",
+                "sha256:53fd2eb27a8ee2892614370896956af2ff61254c275aaee4c230ae771cadd885",
+                "sha256:704098302473cb31a218f1775a873b376b30b4c18229421e9e9dc8916fd16150",
+                "sha256:7df1ead20c81371ccd6091fa3e2878559b5c4d4caadaf1a484cf88d93ca06703",
+                "sha256:866c41f28cee548475f146aa4d39a51cf3b6a84246969f3759cb3e9c742fc072",
+                "sha256:a155d80ea6cee511a3694b108c4494a39f42de11ee4e61e72bc424c490e46457",
+                "sha256:adaeee09bfde366d2c13fe6093a7df5df83c9a2ba98638c7d76b010694db760e",
+                "sha256:b6fb13123aeef4a3abbcfd7e71773ff3ff1526a7d3dc538f3929a49b42be03f0",
+                "sha256:b94e4b785e304a04ea0828759172a15add27088520dc7e49ceade7834275bedb",
+                "sha256:c0df2d30ed496a08de5daed2a9ea807d07c21ae0ab23acf541ab88c24b26ab97",
+                "sha256:c6c2602dffb74867498f86e6129fd52a2770c48b7cd3ece77ada4fa38f94eba8",
+                "sha256:ceb6e0a6e27fb364fb3853389607cf7eb3a126ad335790fa1e14ed02fba50811",
+                "sha256:d9dd839eb0dc1bbe866a288ba3c1afc33a202015d2ad83b31e875b5905a079b6",
+                "sha256:e4dab234478e3bd3ce83bac4193b2ecd9cf94e720ddd95ce69840273bf44f6de",
+                "sha256:ec4e0cd079db280b6bdabdc807047ff3e199f334050db5cbb91ba3e959a67504",
+                "sha256:ecd2c3fe726758037234c93df7e98deb257fd15c24c9180dacf1ef829da5f921",
+                "sha256:ef565033fa5a958e62796867b1df10c40263ea9ded87164d67572834e57a174d"
+            ],
+            "index": "pypi",
+            "version": "==0.910"
+        },
+        "mypy-extensions": {
+            "hashes": [
+                "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d",
+                "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"
+            ],
+            "index": "pypi",
+            "version": "==0.4.3"
+        },
+        "myst-parser": {
+            "hashes": [
+                "sha256:7c3c78a36c4bc30ce6a67933ebd800a880c8d81f1688fad5c2ebd82cddbc1603",
+                "sha256:e8baa9959dac0bcf0f3ea5fc32a1a28792959471d8a8094e3ed5ee0de9733ade"
+            ],
+            "index": "pypi",
+            "version": "==0.15.1"
+        },
+        "nodeenv": {
+            "hashes": [
+                "sha256:3ef13ff90291ba2a4a7a4ff9a979b63ffdd00a464dbe04acf0ea6471517a4c2b",
+                "sha256:621e6b7076565ddcacd2db0294c0381e01fd28945ab36bcf00f41c5daf63bef7"
+            ],
+            "version": "==1.6.0"
+        },
+        "packaging": {
+            "hashes": [
+                "sha256:7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7",
+                "sha256:c86254f9220d55e31cc94d69bade760f0847da8000def4dfe1c6b872fd14ff14"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==21.0"
+        },
+        "parso": {
+            "hashes": [
+                "sha256:12b83492c6239ce32ff5eed6d3639d6a536170723c6f3f1506869f1ace413398",
+                "sha256:a8c4922db71e4fdb90e0d0bc6e50f9b273d3397925e5e60a717e719201778d22"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==0.8.2"
+        },
+        "pathspec": {
+            "hashes": [
+                "sha256:7d15c4ddb0b5c802d161efc417ec1a2558ea2653c2e8ad9c19098201dc1c993a",
+                "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"
+            ],
+            "index": "pypi",
+            "version": "==0.9.0"
+        },
+        "pexpect": {
+            "hashes": [
+                "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937",
+                "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"
+            ],
+            "markers": "sys_platform != 'win32'",
+            "version": "==4.8.0"
+        },
+        "pickleshare": {
+            "hashes": [
+                "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca",
+                "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"
+            ],
+            "version": "==0.7.5"
+        },
+        "pkginfo": {
+            "hashes": [
+                "sha256:37ecd857b47e5f55949c41ed061eb51a0bee97a87c969219d144c0e023982779",
+                "sha256:e7432f81d08adec7297633191bbf0bd47faf13cd8724c3a13250e51d542635bd"
+            ],
+            "version": "==1.7.1"
+        },
+        "platformdirs": {
+            "hashes": [
+                "sha256:4666d822218db6a262bdfdc9c39d21f23b4cfdb08af331a81e92751daf6c866c",
+                "sha256:632daad3ab546bd8e6af0537d09805cec458dce201bccfe23012df73332e181e"
+            ],
+            "index": "pypi",
+            "version": "==2.2.0"
+        },
+        "pluggy": {
+            "hashes": [
+                "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0",
+                "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==0.13.1"
+        },
+        "pre-commit": {
+            "hashes": [
+                "sha256:2386eeb4cf6633712c7cc9ede83684d53c8cafca6b59f79c738098b51c6d206c",
+                "sha256:ec3045ae62e1aa2eecfb8e86fa3025c2e3698f77394ef8d2011ce0aedd85b2d4"
+            ],
+            "index": "pypi",
+            "version": "==2.14.0"
+        },
+        "prompt-toolkit": {
+            "hashes": [
+                "sha256:6076e46efae19b1e0ca1ec003ed37a933dc94b4d20f486235d436e64771dcd5c",
+                "sha256:eb71d5a6b72ce6db177af4a7d4d7085b99756bf656d98ffcc4fecd36850eea6c"
+            ],
+            "markers": "python_full_version >= '3.6.2'",
+            "version": "==3.0.20"
+        },
+        "ptyprocess": {
+            "hashes": [
+                "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35",
+                "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"
+            ],
+            "version": "==0.7.0"
+        },
+        "py": {
+            "hashes": [
+                "sha256:21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3",
+                "sha256:3b80836aa6d1feeaa108e046da6423ab8f6ceda6468545ae8d02d9d58d18818a"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==1.10.0"
+        },
+        "pycodestyle": {
+            "hashes": [
+                "sha256:514f76d918fcc0b55c6680472f0a37970994e07bbb80725808c17089be302068",
+                "sha256:c389c1d06bf7904078ca03399a4816f974a1d590090fecea0c63ec26ebaf1cef"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.7.0"
+        },
+        "pycparser": {
+            "hashes": [
+                "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0",
+                "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.20"
+        },
+        "pyflakes": {
+            "hashes": [
+                "sha256:7893783d01b8a89811dd72d7dfd4d84ff098e5eed95cfa8905b22bbffe52efc3",
+                "sha256:f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.3.1"
+        },
+        "pygments": {
+            "hashes": [
+                "sha256:b8e67fe6af78f492b3c4b3e2970c0624cbf08beb1e493b2c99b9fa1b67a20380",
+                "sha256:f398865f7eb6874156579fdf36bc840a03cab64d1cde9e93d68f46a425ec52c6"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==2.10.0"
+        },
+        "pyparsing": {
+            "hashes": [
+                "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1",
+                "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"
+            ],
+            "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.4.7"
+        },
+        "pytest": {
+            "hashes": [
+                "sha256:50bcad0a0b9c5a72c8e4e7c9855a3ad496ca6a881a3641b4260605450772c54b",
+                "sha256:91ef2131a9bd6be8f76f1f08eac5c5317221d6ad1e143ae03894b862e8976890"
+            ],
+            "index": "pypi",
+            "version": "==6.2.4"
+        },
+        "pytest-cov": {
+            "hashes": [
+                "sha256:261bb9e47e65bd099c89c3edf92972865210c36813f80ede5277dceb77a4a62a",
+                "sha256:261ceeb8c227b726249b376b8526b600f38667ee314f910353fa318caa01f4d7"
+            ],
+            "index": "pypi",
+            "version": "==2.12.1"
+        },
+        "pytest-forked": {
+            "hashes": [
+                "sha256:6aa9ac7e00ad1a539c41bec6d21011332de671e938c7637378ec9710204e37ca",
+                "sha256:dc4147784048e70ef5d437951728825a131b81714b398d5d52f17c7c144d8815"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==1.3.0"
+        },
+        "pytest-xdist": {
+            "hashes": [
+                "sha256:e8ecde2f85d88fbcadb7d28cb33da0fa29bca5cf7d5967fa89fc0e97e5299ea5",
+                "sha256:ed3d7da961070fce2a01818b51f6888327fb88df4379edeb6b9d990e789d9c8d"
+            ],
+            "index": "pypi",
+            "version": "==2.3.0"
+        },
+        "pytz": {
+            "hashes": [
+                "sha256:83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da",
+                "sha256:eb10ce3e7736052ed3623d49975ce333bcd712c7bb19a58b9e2089d4057d0798"
+            ],
+            "version": "==2021.1"
+        },
+        "pyyaml": {
+            "hashes": [
+                "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf",
+                "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696",
+                "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393",
+                "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77",
+                "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922",
+                "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5",
+                "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8",
+                "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10",
+                "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc",
+                "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018",
+                "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e",
+                "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253",
+                "sha256:72a01f726a9c7851ca9bfad6fd09ca4e090a023c00945ea05ba1638c09dc3347",
+                "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183",
+                "sha256:895f61ef02e8fed38159bb70f7e100e00f471eae2bc838cd0f4ebb21e28f8541",
+                "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb",
+                "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185",
+                "sha256:bfb51918d4ff3d77c1c856a9699f8492c612cde32fd3bcd344af9be34999bfdc",
+                "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db",
+                "sha256:cb333c16912324fd5f769fff6bc5de372e9e7a202247b48870bc251ed40239aa",
+                "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46",
+                "sha256:d483ad4e639292c90170eb6f7783ad19490e7a8defb3e46f97dfe4bacae89122",
+                "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b",
+                "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63",
+                "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df",
+                "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc",
+                "sha256:fd7f6999a8070df521b6384004ef42833b9bd62cfee11a09bda1079b4b704247",
+                "sha256:fdc842473cd33f45ff6bce46aea678a54e3d21f1b61a7750ce3c498eedfe25d6",
+                "sha256:fe69978f3f768926cfa37b867e3843918e012cf83f680806599ddce33c2c68b0"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'",
+            "version": "==5.4.1"
+        },
+        "readme-renderer": {
+            "hashes": [
+                "sha256:63b4075c6698fcfa78e584930f07f39e05d46f3ec97f65006e430b595ca6348c",
+                "sha256:92fd5ac2bf8677f310f3303aa4bce5b9d5f9f2094ab98c29f13791d7b805a3db"
+            ],
+            "index": "pypi",
+            "version": "==29.0"
+        },
+        "regex": {
+            "hashes": [
+                "sha256:03840a07a402576b8e3a6261f17eb88abd653ad4e18ec46ef10c9a63f8c99ebd",
+                "sha256:06ba444bbf7ede3890a912bd4904bb65bf0da8f0d8808b90545481362c978642",
+                "sha256:1f9974826aeeda32a76648fc677e3125ade379869a84aa964b683984a2dea9f1",
+                "sha256:330836ad89ff0be756b58758878409f591d4737b6a8cef26a162e2a4961c3321",
+                "sha256:38600fd58c2996829480de7d034fb2d3a0307110e44dae80b6b4f9b3d2eea529",
+                "sha256:3a195e26df1fbb40ebee75865f9b64ba692a5824ecb91c078cc665b01f7a9a36",
+                "sha256:41acdd6d64cd56f857e271009966c2ffcbd07ec9149ca91f71088574eaa4278a",
+                "sha256:45f97ade892ace20252e5ccecdd7515c7df5feeb42c3d2a8b8c55920c3551c30",
+                "sha256:4b0c211c55d4aac4309c3209833c803fada3fc21cdf7b74abedda42a0c9dc3ce",
+                "sha256:5d5209c3ba25864b1a57461526ebde31483db295fc6195fdfc4f8355e10f7376",
+                "sha256:615fb5a524cffc91ab4490b69e10ae76c1ccbfa3383ea2fad72e54a85c7d47dd",
+                "sha256:61e734c2bcb3742c3f454dfa930ea60ea08f56fd1a0eb52d8cb189a2f6be9586",
+                "sha256:640ccca4d0a6fcc6590f005ecd7b16c3d8f5d52174e4854f96b16f34c39d6cb7",
+                "sha256:6dbd51c3db300ce9d3171f4106da18fe49e7045232630fe3d4c6e37cb2b39ab9",
+                "sha256:71a904da8c9c02aee581f4452a5a988c3003207cb8033db426f29e5b2c0b7aea",
+                "sha256:8021dee64899f993f4b5cca323aae65aabc01a546ed44356a0965e29d7893c94",
+                "sha256:8b8d551f1bd60b3e1c59ff55b9e8d74607a5308f66e2916948cafd13480b44a3",
+                "sha256:93f9f720081d97acee38a411e861d4ce84cbc8ea5319bc1f8e38c972c47af49f",
+                "sha256:96f0c79a70642dfdf7e6a018ebcbea7ea5205e27d8e019cad442d2acfc9af267",
+                "sha256:9966337353e436e6ba652814b0a957a517feb492a98b8f9d3b6ba76d22301dcc",
+                "sha256:a34ba9e39f8269fd66ab4f7a802794ffea6d6ac500568ec05b327a862c21ce23",
+                "sha256:a49f85f0a099a5755d0a2cc6fc337e3cb945ad6390ec892332c691ab0a045882",
+                "sha256:a795829dc522227265d72b25d6ee6f6d41eb2105c15912c230097c8f5bfdbcdc",
+                "sha256:a89ca4105f8099de349d139d1090bad387fe2b208b717b288699ca26f179acbe",
+                "sha256:ac95101736239260189f426b1e361dc1b704513963357dc474beb0f39f5b7759",
+                "sha256:ae87ab669431f611c56e581679db33b9a467f87d7bf197ac384e71e4956b4456",
+                "sha256:b091dcfee169ad8de21b61eb2c3a75f9f0f859f851f64fdaf9320759a3244239",
+                "sha256:b511c6009d50d5c0dd0bab85ed25bc8ad6b6f5611de3a63a59786207e82824bb",
+                "sha256:b79dc2b2e313565416c1e62807c7c25c67a6ff0a0f8d83a318df464555b65948",
+                "sha256:bca14dfcfd9aae06d7d8d7e105539bd77d39d06caaae57a1ce945670bae744e0",
+                "sha256:c835c30f3af5c63a80917b72115e1defb83de99c73bc727bddd979a3b449e183",
+                "sha256:ccd721f1d4fc42b541b633d6e339018a08dd0290dc67269df79552843a06ca92",
+                "sha256:d6c2b1d78ceceb6741d703508cd0e9197b34f6bf6864dab30f940f8886e04ade",
+                "sha256:d6ec4ae13760ceda023b2e5ef1f9bc0b21e4b0830458db143794a117fdbdc044",
+                "sha256:d8b623fc429a38a881ab2d9a56ef30e8ea20c72a891c193f5ebbddc016e083ee",
+                "sha256:ea9753d64cba6f226947c318a923dadaf1e21cd8db02f71652405263daa1f033",
+                "sha256:ebbceefbffae118ab954d3cd6bf718f5790db66152f95202ebc231d58ad4e2c2",
+                "sha256:ecb6e7c45f9cd199c10ec35262b53b2247fb9a408803ed00ee5bb2b54aa626f5",
+                "sha256:ef9326c64349e2d718373415814e754183057ebc092261387a2c2f732d9172b2",
+                "sha256:f93a9d8804f4cec9da6c26c8cfae2c777028b4fdd9f49de0302e26e00bb86504",
+                "sha256:faf08b0341828f6a29b8f7dd94d5cf8cc7c39bfc3e67b78514c54b494b66915a"
+            ],
+            "index": "pypi",
+            "version": "==2021.8.21"
+        },
+        "requests": {
+            "hashes": [
+                "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24",
+                "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'",
+            "version": "==2.26.0"
+        },
+        "requests-toolbelt": {
+            "hashes": [
+                "sha256:380606e1d10dc85c3bd47bf5a6095f815ec007be7a8b69c878507068df059e6f",
+                "sha256:968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0"
+            ],
+            "version": "==0.9.1"
+        },
+        "rfc3986": {
+            "hashes": [
+                "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835",
+                "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"
+            ],
+            "version": "==1.5.0"
+        },
+        "secretstorage": {
+            "hashes": [
+                "sha256:422d82c36172d88d6a0ed5afdec956514b189ddbfb72fefab0c8a1cee4eaf71f",
+                "sha256:fd666c51a6bf200643495a04abb261f83229dcb6fd8472ec393df7ffc8b6f195"
+            ],
+            "markers": "sys_platform == 'linux'",
+            "version": "==3.3.1"
+        },
+        "setuptools-scm": {
+            "extras": [
+                "toml"
+            ],
+            "hashes": [
+                "sha256:c3bd5f701c8def44a5c0bfe8d407bef3f80342217ef3492b951f3777bd2d915c",
+                "sha256:d1925a69cb07e9b29416a275b9fadb009a23c148ace905b2fb220649a6c18e92"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==6.0.1"
+        },
+        "six": {
+            "hashes": [
+                "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926",
+                "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==1.16.0"
+        },
+        "snowballstemmer": {
+            "hashes": [
+                "sha256:b51b447bea85f9968c13b650126a888aabd4cb4463fca868ec596826325dedc2",
+                "sha256:e997baa4f2e9139951b6f4c631bad912dfd3c792467e2f03d7239464af90e914"
+            ],
+            "version": "==2.1.0"
+        },
+        "sphinx": {
+            "hashes": [
+                "sha256:3092d929cd807926d846018f2ace47ba2f3b671b309c7a89cd3306e80c826b13",
+                "sha256:46d52c6cee13fec44744b8c01ed692c18a640f6910a725cbb938bc36e8d64544"
+            ],
+            "index": "pypi",
+            "version": "==4.1.2"
+        },
+        "sphinx-copybutton": {
+            "hashes": [
+                "sha256:4340d33c169dac6dd82dce2c83333412aa786a42dd01a81a8decac3b130dc8b0",
+                "sha256:8daed13a87afd5013c3a9af3575cc4d5bec052075ccd3db243f895c07a689386"
+            ],
+            "index": "pypi",
+            "version": "==0.4.0"
+        },
+        "sphinxcontrib-applehelp": {
+            "hashes": [
+                "sha256:806111e5e962be97c29ec4c1e7fe277bfd19e9652fb1a4392105b43e01af885a",
+                "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==1.0.2"
+        },
+        "sphinxcontrib-devhelp": {
+            "hashes": [
+                "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e",
+                "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==1.0.2"
+        },
+        "sphinxcontrib-htmlhelp": {
+            "hashes": [
+                "sha256:d412243dfb797ae3ec2b59eca0e52dac12e75a241bf0e4eb861e450d06c6ed07",
+                "sha256:f5f8bb2d0d629f398bf47d0d69c07bc13b65f75a81ad9e2f71a63d4b7a2f6db2"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==2.0.0"
+        },
+        "sphinxcontrib-jsmath": {
+            "hashes": [
+                "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178",
+                "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==1.0.1"
+        },
+        "sphinxcontrib-programoutput": {
+            "hashes": [
+                "sha256:0ef1c1d9159dbe7103077748214305eb4e0138e861feb71c0c346afc5fe97f84",
+                "sha256:300ee9b8caee8355d25cc74b4d1c7efd12e608d2ad165e3141d31e6fbc152b7f"
+            ],
+            "index": "pypi",
+            "version": "==0.17"
+        },
+        "sphinxcontrib-qthelp": {
+            "hashes": [
+                "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72",
+                "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==1.0.3"
+        },
+        "sphinxcontrib-serializinghtml": {
+            "hashes": [
+                "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd",
+                "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"
+            ],
+            "markers": "python_version >= '3.5'",
+            "version": "==1.1.5"
+        },
+        "tokenize-rt": {
+            "hashes": [
+                "sha256:ab339b5ff829eb5e198590477f9c03c84e762b3e455e74c018956e7e326cbc70",
+                "sha256:b37251fa28c21e8cce2e42f7769a35fba2dd2ecafb297208f9a9a8add3ca7793"
+            ],
+            "markers": "python_full_version >= '3.6.1'",
+            "version": "==4.1.0"
+        },
+        "toml": {
+            "hashes": [
+                "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
+                "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"
+            ],
+            "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==0.10.2"
+        },
+        "tomli": {
+            "hashes": [
+                "sha256:8dd0e9524d6f386271a36b41dbf6c57d8e32fd96fd22b6584679dc569d20899f",
+                "sha256:a5b75cb6f3968abb47af1b40c1819dc519ea82bcc065776a866e8d74c5ca9442"
+            ],
+            "index": "pypi",
+            "version": "==1.2.1"
+        },
+        "tox": {
+            "hashes": [
+                "sha256:9fbf8e2ab758b2a5e7cb2c72945e4728089934853076f67ef18d7575c8ab6b88",
+                "sha256:c6c4e77705ada004283610fd6d9ba4f77bc85d235447f875df9f0ba1bc23b634"
+            ],
+            "index": "pypi",
+            "version": "==3.24.3"
+        },
+        "tqdm": {
+            "hashes": [
+                "sha256:07856e19a1fe4d2d9621b539d3f072fa88c9c1ef1f3b7dd4d4953383134c3164",
+                "sha256:35540feeaca9ac40c304e916729e6b78045cbbeccd3e941b2868f09306798ac9"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==4.62.1"
+        },
+        "traitlets": {
+            "hashes": [
+                "sha256:70b4c6a1d9019d7b4f6846832288f86998aa3b9207c6821f3578a6a6a467fe44",
+                "sha256:d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7"
+            ],
+            "version": "==4.3.3"
+        },
+        "twine": {
+            "hashes": [
+                "sha256:087328e9bb405e7ce18527a2dca4042a84c7918658f951110b38bc135acab218",
+                "sha256:4caec0f1ed78dc4c9b83ad537e453d03ce485725f2aea57f1bb3fdde78dae936"
+            ],
+            "index": "pypi",
+            "version": "==3.4.2"
+        },
+        "typed-ast": {
+            "hashes": [
+                "sha256:07d49388d5bf7e863f7fa2f124b1b1d89d8aa0e2f7812faff0a5658c01c59aa1",
+                "sha256:14bf1522cdee369e8f5581238edac09150c765ec1cb33615855889cf33dcb92d",
+                "sha256:240296b27397e4e37874abb1df2a608a92df85cf3e2a04d0d4d61055c8305ba6",
+                "sha256:36d829b31ab67d6fcb30e185ec996e1f72b892255a745d3a82138c97d21ed1cd",
+                "sha256:37f48d46d733d57cc70fd5f30572d11ab8ed92da6e6b28e024e4a3edfb456e37",
+                "sha256:4c790331247081ea7c632a76d5b2a265e6d325ecd3179d06e9cf8d46d90dd151",
+                "sha256:5dcfc2e264bd8a1db8b11a892bd1647154ce03eeba94b461effe68790d8b8e07",
+                "sha256:7147e2a76c75f0f64c4319886e7639e490fee87c9d25cb1d4faef1d8cf83a440",
+                "sha256:7703620125e4fb79b64aa52427ec192822e9f45d37d4b6625ab37ef403e1df70",
+                "sha256:8368f83e93c7156ccd40e49a783a6a6850ca25b556c0fa0240ed0f659d2fe496",
+                "sha256:84aa6223d71012c68d577c83f4e7db50d11d6b1399a9c779046d75e24bed74ea",
+                "sha256:85f95aa97a35bdb2f2f7d10ec5bbdac0aeb9dafdaf88e17492da0504de2e6400",
+                "sha256:8db0e856712f79c45956da0c9a40ca4246abc3485ae0d7ecc86a20f5e4c09abc",
+                "sha256:9044ef2df88d7f33692ae3f18d3be63dec69c4fb1b5a4a9ac950f9b4ba571606",
+                "sha256:963c80b583b0661918718b095e02303d8078950b26cc00b5e5ea9ababe0de1fc",
+                "sha256:987f15737aba2ab5f3928c617ccf1ce412e2e321c77ab16ca5a293e7bbffd581",
+                "sha256:9ec45db0c766f196ae629e509f059ff05fc3148f9ffd28f3cfe75d4afb485412",
+                "sha256:9fc0b3cb5d1720e7141d103cf4819aea239f7d136acf9ee4a69b047b7986175a",
+                "sha256:a2c927c49f2029291fbabd673d51a2180038f8cd5a5b2f290f78c4516be48be2",
+                "sha256:a38878a223bdd37c9709d07cd357bb79f4c760b29210e14ad0fb395294583787",
+                "sha256:b4fcdcfa302538f70929eb7b392f536a237cbe2ed9cba88e3bf5027b39f5f77f",
+                "sha256:c0c74e5579af4b977c8b932f40a5464764b2f86681327410aa028a22d2f54937",
+                "sha256:c1c876fd795b36126f773db9cbb393f19808edd2637e00fd6caba0e25f2c7b64",
+                "sha256:c9aadc4924d4b5799112837b226160428524a9a45f830e0d0f184b19e4090487",
+                "sha256:cc7b98bf58167b7f2db91a4327da24fb93368838eb84a44c472283778fc2446b",
+                "sha256:cf54cfa843f297991b7388c281cb3855d911137223c6b6d2dd82a47ae5125a41",
+                "sha256:d003156bb6a59cda9050e983441b7fa2487f7800d76bdc065566b7d728b4581a",
+                "sha256:d175297e9533d8d37437abc14e8a83cbc68af93cc9c1c59c2c292ec59a0697a3",
+                "sha256:d746a437cdbca200622385305aedd9aef68e8a645e385cc483bdc5e488f07166",
+                "sha256:e683e409e5c45d5c9082dc1daf13f6374300806240719f95dc783d1fc942af10"
+            ],
+            "index": "pypi",
+            "version": "==1.4.3"
+        },
+        "types-dataclasses": {
+            "hashes": [
+                "sha256:248075d093d8f7c1541ce515594df7ae40233d1340afde11ce7125368c5209b8",
+                "sha256:fc372bb68b878ac7a68fd04230d923d4a6303a137ecb0b9700b90630bdfcbfc9"
+            ],
+            "index": "pypi",
+            "version": "==0.1.7"
+        },
+        "types-pyyaml": {
+            "hashes": [
+                "sha256:745dcb4b1522423026bcc83abb9925fba747f1e8602d902f71a4058f9e7fb662",
+                "sha256:96f8d3d96aa1a18a465e8f6a220e02cff2f52632314845a364ecbacb0aea6e30"
+            ],
+            "index": "pypi",
+            "version": "==5.4.6"
+        },
+        "types-typed-ast": {
+            "hashes": [
+                "sha256:b7f561796b4d002c7522b0020f58b18f715bd28a31429d424a78e2e2dbbd6785",
+                "sha256:ffa0471e0ba19c4ea0cba0436d660871b5f5215854ea9ead3cb5b60f525af75a"
+            ],
+            "index": "pypi",
+            "version": "==1.4.4"
+        },
+        "typing-extensions": {
+            "hashes": [
+                "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497",
+                "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342",
+                "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84"
+            ],
+            "index": "pypi",
+            "markers": "python_version < '3.10'",
+            "version": "==3.10.0.0"
+        },
+        "urllib3": {
+            "hashes": [
+                "sha256:39fb8672126159acb139a7718dd10806104dec1e2f0f6c88aab05d17df10c8d4",
+                "sha256:f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'",
+            "version": "==1.26.6"
+        },
+        "virtualenv": {
+            "hashes": [
+                "sha256:9ef4e8ee4710826e98ff3075c9a4739e2cb1040de6a2a8d35db0055840dc96a0",
+                "sha256:e4670891b3a03eb071748c569a87cceaefbf643c5bac46d996c5a45c34aa0f06"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'",
+            "version": "==20.7.2"
+        },
+        "wcwidth": {
+            "hashes": [
+                "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784",
+                "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"
+            ],
+            "version": "==0.2.5"
+        },
+        "webencodings": {
+            "hashes": [
+                "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78",
+                "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"
+            ],
+            "version": "==0.5.1"
+        },
+        "wheel": {
+            "hashes": [
+                "sha256:21014b2bd93c6d0034b6ba5d35e4eb284340e09d63c59aef6fc14b0f346146fd",
+                "sha256:e2ef7239991699e3355d54f8e968a21bb940a1dbf34a4d226741e64462516fad"
+            ],
+            "index": "pypi",
+            "version": "==0.37.0"
+        },
+        "yarl": {
+            "hashes": [
+                "sha256:00d7ad91b6583602eb9c1d085a2cf281ada267e9a197e8b7cae487dadbfa293e",
+                "sha256:0355a701b3998dcd832d0dc47cc5dedf3874f966ac7f870e0f3a6788d802d434",
+                "sha256:15263c3b0b47968c1d90daa89f21fcc889bb4b1aac5555580d74565de6836366",
+                "sha256:2ce4c621d21326a4a5500c25031e102af589edb50c09b321049e388b3934eec3",
+                "sha256:31ede6e8c4329fb81c86706ba8f6bf661a924b53ba191b27aa5fcee5714d18ec",
+                "sha256:324ba3d3c6fee56e2e0b0d09bf5c73824b9f08234339d2b788af65e60040c959",
+                "sha256:329412812ecfc94a57cd37c9d547579510a9e83c516bc069470db5f75684629e",
+                "sha256:4736eaee5626db8d9cda9eb5282028cc834e2aeb194e0d8b50217d707e98bb5c",
+                "sha256:4953fb0b4fdb7e08b2f3b3be80a00d28c5c8a2056bb066169de00e6501b986b6",
+                "sha256:4c5bcfc3ed226bf6419f7a33982fb4b8ec2e45785a0561eb99274ebbf09fdd6a",
+                "sha256:547f7665ad50fa8563150ed079f8e805e63dd85def6674c97efd78eed6c224a6",
+                "sha256:5b883e458058f8d6099e4420f0cc2567989032b5f34b271c0827de9f1079a424",
+                "sha256:63f90b20ca654b3ecc7a8d62c03ffa46999595f0167d6450fa8383bab252987e",
+                "sha256:68dc568889b1c13f1e4745c96b931cc94fdd0defe92a72c2b8ce01091b22e35f",
+                "sha256:69ee97c71fee1f63d04c945f56d5d726483c4762845400a6795a3b75d56b6c50",
+                "sha256:6d6283d8e0631b617edf0fd726353cb76630b83a089a40933043894e7f6721e2",
+                "sha256:72a660bdd24497e3e84f5519e57a9ee9220b6f3ac4d45056961bf22838ce20cc",
+                "sha256:73494d5b71099ae8cb8754f1df131c11d433b387efab7b51849e7e1e851f07a4",
+                "sha256:7356644cbed76119d0b6bd32ffba704d30d747e0c217109d7979a7bc36c4d970",
+                "sha256:8a9066529240171b68893d60dca86a763eae2139dd42f42106b03cf4b426bf10",
+                "sha256:8aa3decd5e0e852dc68335abf5478a518b41bf2ab2f330fe44916399efedfae0",
+                "sha256:97b5bdc450d63c3ba30a127d018b866ea94e65655efaf889ebeabc20f7d12406",
+                "sha256:9ede61b0854e267fd565e7527e2f2eb3ef8858b301319be0604177690e1a3896",
+                "sha256:b2e9a456c121e26d13c29251f8267541bd75e6a1ccf9e859179701c36a078643",
+                "sha256:b5dfc9a40c198334f4f3f55880ecf910adebdcb2a0b9a9c23c9345faa9185721",
+                "sha256:bafb450deef6861815ed579c7a6113a879a6ef58aed4c3a4be54400ae8871478",
+                "sha256:c49ff66d479d38ab863c50f7bb27dee97c6627c5fe60697de15529da9c3de724",
+                "sha256:ce3beb46a72d9f2190f9e1027886bfc513702d748047b548b05dab7dfb584d2e",
+                "sha256:d26608cf178efb8faa5ff0f2d2e77c208f471c5a3709e577a7b3fd0445703ac8",
+                "sha256:d597767fcd2c3dc49d6eea360c458b65643d1e4dbed91361cf5e36e53c1f8c96",
+                "sha256:d5c32c82990e4ac4d8150fd7652b972216b204de4e83a122546dce571c1bdf25",
+                "sha256:d8d07d102f17b68966e2de0e07bfd6e139c7c02ef06d3a0f8d2f0f055e13bb76",
+                "sha256:e46fba844f4895b36f4c398c5af062a9808d1f26b2999c58909517384d5deda2",
+                "sha256:e6b5460dc5ad42ad2b36cca524491dfcaffbfd9c8df50508bddc354e787b8dc2",
+                "sha256:f040bcc6725c821a4c0665f3aa96a4d0805a7aaf2caf266d256b8ed71b9f041c",
+                "sha256:f0b059678fd549c66b89bed03efcabb009075bd131c248ecdf087bdb6faba24a",
+                "sha256:fcbb48a93e8699eae920f8d92f7160c03567b421bc17362a9ffbbd706a816f71"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==1.6.3"
+        },
+        "zipp": {
+            "hashes": [
+                "sha256:957cfda87797e389580cb8b9e3870841ca991e2125350677b2ca83a0e99390a3",
+                "sha256:f5812b1e007e48cff63449a5e9f4e7ebea716b4111f9c4f9a645f91d579bf0c4"
+            ],
+            "markers": "python_version >= '3.6'",
+            "version": "==3.5.0"
+        }
+    }
+}
diff --git a/.vim/bundle/black/README.md b/.vim/bundle/black/README.md
new file mode 100644 (file)
index 0000000..7bf0ed8
--- /dev/null
@@ -0,0 +1,230 @@
+![Black Logo](https://raw.githubusercontent.com/psf/black/main/docs/_static/logo2-readme.png)
+
+<h2 align="center">The Uncompromising Code Formatter</h2>
+
+<p align="center">
+<a href="https://github.com/psf/black/actions"><img alt="Actions Status" src="https://github.com/psf/black/workflows/Test/badge.svg"></a>
+<a href="https://github.com/psf/black/actions"><img alt="Actions Status" src="https://github.com/psf/black/workflows/Primer/badge.svg"></a>
+<a href="https://black.readthedocs.io/en/stable/?badge=stable"><img alt="Documentation Status" src="https://readthedocs.org/projects/black/badge/?version=stable"></a>
+<a href="https://coveralls.io/github/psf/black?branch=main"><img alt="Coverage Status" src="https://coveralls.io/repos/github/psf/black/badge.svg?branch=main"></a>
+<a href="https://github.com/psf/black/blob/main/LICENSE"><img alt="License: MIT" src="https://black.readthedocs.io/en/stable/_static/license.svg"></a>
+<a href="https://pypi.org/project/black/"><img alt="PyPI" src="https://img.shields.io/pypi/v/black"></a>
+<a href="https://pepy.tech/project/black"><img alt="Downloads" src="https://pepy.tech/badge/black"></a>
+<a href="https://anaconda.org/conda-forge/black/"><img alt="conda-forge" src="https://img.shields.io/conda/dn/conda-forge/black.svg?label=conda-forge"></a>
+<a href="https://github.com/psf/black"><img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
+</p>
+
+> “Any color you like.”
+
+_Black_ is the uncompromising Python code formatter. By using it, you agree to cede
+control over minutiae of hand-formatting. In return, _Black_ gives you speed,
+determinism, and freedom from `pycodestyle` nagging about formatting. You will save time
+and mental energy for more important matters.
+
+Blackened code looks the same regardless of the project you're reading. Formatting
+becomes transparent after a while and you can focus on the content instead.
+
+_Black_ makes code review faster by producing the smallest diffs possible.
+
+Try it out now using the [Black Playground](https://black.vercel.app). Watch the
+[PyCon 2019 talk](https://youtu.be/esZLCuWs_2Y) to learn more.
+
+---
+
+**[Read the documentation on ReadTheDocs!](https://black.readthedocs.io/en/stable)**
+
+---
+
+## Installation and usage
+
+### Installation
+
+_Black_ can be installed by running `pip install black`. It requires Python 3.6.2+ to
+run. If you want to format Python 2 code as well, install with
+`pip install black[python2]`. If you want to format Jupyter Notebooks, install with
+`pip install black[jupyter]`.
+
+If you can't wait for the latest _hotness_ and want to install from GitHub, use:
+
+`pip install git+git://github.com/psf/black`
+
+### Usage
+
+To get started right away with sensible defaults:
+
+```sh
+black {source_file_or_directory}
+```
+
+You can run _Black_ as a package if running it as a script doesn't work:
+
+```sh
+python -m black {source_file_or_directory}
+```
+
+Further information can be found in our docs:
+
+- [Usage and Configuration](https://black.readthedocs.io/en/stable/usage_and_configuration/index.html)
+
+### NOTE: This is a beta product
+
+_Black_ is already [successfully used](https://github.com/psf/black#used-by) by many
+projects, small and big. Black has a comprehensive test suite, with efficient parallel
+tests, and our own auto formatting and parallel Continuous Integration runner. However,
+_Black_ is still beta. Things will probably be wonky for a while. This is made explicit
+by the "Beta" trove classifier, as well as by the "b" in the version number. What this
+means for you is that **until the formatter becomes stable, you should expect some
+formatting to change in the future**. That being said, no drastic stylistic changes are
+planned, mostly responses to bug reports.
+
+Also, as a safety measure which slows down processing, _Black_ will check that the
+reformatted code still produces a valid AST that is effectively equivalent to the
+original (see the
+[Pragmatism](https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html#ast-before-and-after-formatting)
+section for details). If you're feeling confident, use `--fast`.
+
+## The _Black_ code style
+
+_Black_ is a PEP 8 compliant opinionated formatter. _Black_ reformats entire files in
+place. Style configuration options are deliberately limited and rarely added. It doesn't
+take previous formatting into account (see [Pragmatism](#pragmatism) for exceptions).
+
+Our documentation covers the current _Black_ code style, but planned changes to it are
+also documented. They're both worth taking a look:
+
+- [The _Black_ Code Style: Current style](https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html)
+- [The _Black_ Code Style: Future style](https://black.readthedocs.io/en/stable/the_black_code_style/future_style.html)
+
+Please refer to this document before submitting an issue. What seems like a bug might be
+intended behaviour.
+
+### Pragmatism
+
+Early versions of _Black_ used to be absolutist in some respects. They took after its
+initial author. This was fine at the time as it made the implementation simpler and
+there were not many users anyway. Not many edge cases were reported. As a mature tool,
+_Black_ does make some exceptions to rules it otherwise holds.
+
+- [The _Black_ code style: Pragmatism](https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html#pragmatism)
+
+Please refer to this document before submitting an issue just like with the document
+above. What seems like a bug might be intended behaviour.
+
+## Configuration
+
+_Black_ is able to read project-specific default values for its command line options
+from a `pyproject.toml` file. This is especially useful for specifying custom
+`--include` and `--exclude`/`--force-exclude`/`--extend-exclude` patterns for your
+project.
+
+You can find more details in our documentation:
+
+- [The basics: Configuration via a file](https://black.readthedocs.io/en/stable/usage_and_configuration/the_basics.html#configuration-via-a-file)
+
+And if you're looking for more general configuration documentation:
+
+- [Usage and Configuration](https://black.readthedocs.io/en/stable/usage_and_configuration/index.html)
+
+**Pro-tip**: If you're asking yourself "Do I need to configure anything?" the answer is
+"No". _Black_ is all about sensible defaults. Applying those defaults will have your
+code in compliance with many other _Black_ formatted projects.
+
+## Used by
+
+The following notable open-source projects trust _Black_ with enforcing a consistent
+code style: pytest, tox, Pyramid, Django Channels, Hypothesis, attrs, SQLAlchemy,
+Poetry, PyPA applications (Warehouse, Bandersnatch, Pipenv, virtualenv), pandas, Pillow,
+Twisted, LocalStack, every Datadog Agent Integration, Home Assistant, Zulip, Kedro, and
+many more.
+
+The following organizations use _Black_: Facebook, Dropbox, Mozilla, Quora, Duolingo,
+QuantumBlack.
+
+Are we missing anyone? Let us know.
+
+## Testimonials
+
+**Mike Bayer**, [author of `SQLAlchemy`](https://www.sqlalchemy.org/):
+
+> I can't think of any single tool in my entire programming career that has given me a
+> bigger productivity increase by its introduction. I can now do refactorings in about
+> 1% of the keystrokes that it would have taken me previously when we had no way for
+> code to format itself.
+
+**Dusty Phillips**,
+[writer](https://smile.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=dusty+phillips):
+
+> _Black_ is opinionated so you don't have to be.
+
+**Hynek Schlawack**, [creator of `attrs`](https://www.attrs.org/), core developer of
+Twisted and CPython:
+
+> An auto-formatter that doesn't suck is all I want for Xmas!
+
+**Carl Meyer**, [Django](https://www.djangoproject.com/) core developer:
+
+> At least the name is good.
+
+**Kenneth Reitz**, creator of [`requests`](http://python-requests.org/) and
+[`pipenv`](https://readthedocs.org/projects/pipenv/):
+
+> This vastly improves the formatting of our code. Thanks a ton!
+
+## Show your style
+
+Use the badge in your project's README.md:
+
+```md
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+```
+
+Using the badge in README.rst:
+
+```
+.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
+    :target: https://github.com/psf/black
+```
+
+Looks like this:
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+## License
+
+MIT
+
+## Contributing
+
+Welcome! Happy to see you willing to make the project better. You can get started by
+reading this:
+
+- [Contributing: The basics](https://black.readthedocs.io/en/latest/contributing/the_basics.html)
+
+You can also take a look at the rest of the contributing docs or talk with the
+developers:
+
+- [Contributing documentation](https://black.readthedocs.io/en/latest/contributing/index.html)
+- [Chat on Discord](https://discord.gg/RtVdv86PrH)
+
+## Change log
+
+The log has become rather long. It moved to its own file.
+
+See [CHANGES](https://black.readthedocs.io/en/latest/change_log.html).
+
+## Authors
+
+The author list is quite long nowadays, so it lives in its own file.
+
+See [AUTHORS.md](./AUTHORS.md)
+
+## Code of Conduct
+
+Everyone participating in the _Black_ project, and in particular in the issue tracker,
+pull requests, and social media activity, is expected to treat other people with respect
+and more generally to follow the guidelines articulated in the
+[Python Community Code of Conduct](https://www.python.org/psf/codeofconduct/).
+
+At the same time, humor is encouraged. In fact, basic familiarity with Monty Python's
+Flying Circus is expected. We are not savages.
+
+And if you _really_ need to slap somebody, do it with a fish while dancing.
diff --git a/.vim/bundle/black/action.yml b/.vim/bundle/black/action.yml
new file mode 100644 (file)
index 0000000..ddf0793
--- /dev/null
@@ -0,0 +1,59 @@
+name: "Black"
+description: "The uncompromising Python code formatter."
+author: "Łukasz Langa and contributors to Black"
+inputs:
+  options:
+    description:
+      "Options passed to Black. Use `black --help` to see available options. Default:
+      '--check'"
+    required: false
+    default: "--check --diff"
+  src:
+    description: "Source to run Black. Default: '.'"
+    required: false
+    default: "."
+  black_args:
+    description: "[DEPRECATED] Black input arguments."
+    required: false
+    default: ""
+    deprecationMessage:
+      "Input `with.black_args` is deprecated. Use `with.options` and `with.src` instead."
+  version:
+    description: 'Python Version specifier (PEP440) - e.g. "21.5b1"'
+    required: false
+    default: ""
+branding:
+  color: "black"
+  icon: "check-circle"
+runs:
+  using: composite
+  steps:
+    - run: |
+        # Exists since using github.action_path + path to main script doesn't work because bash
+        # interprets the backslashes in github.action_path (which are used when the runner OS
+        # is Windows) destroying the path to the target file.
+        #
+        # Also semicolons are necessary because I can't get the newlines to work
+        entrypoint="import sys;
+        import subprocess;
+        from pathlib import Path;
+
+        MAIN_SCRIPT = Path(r'${{ github.action_path }}') / 'action' / 'main.py';
+
+        proc = subprocess.run([sys.executable, str(MAIN_SCRIPT)]);
+        sys.exit(proc.returncode)
+        "
+
+        if [ "$RUNNER_OS" == "Windows" ]; then
+          echo $entrypoint | python
+        else
+          echo $entrypoint | python3
+        fi
+      env:
+        # TODO: Remove once https://github.com/actions/runner/issues/665 is fixed.
+        INPUT_OPTIONS: ${{ inputs.options }}
+        INPUT_SRC: ${{ inputs.src }}
+        INPUT_BLACK_ARGS: ${{ inputs.black_args }}
+        INPUT_VERSION: ${{ inputs.version }}
+        pythonioencoding: utf-8
+      shell: bash
diff --git a/.vim/bundle/black/action/main.py b/.vim/bundle/black/action/main.py
new file mode 100644 (file)
index 0000000..fde3125
--- /dev/null
@@ -0,0 +1,39 @@
+import os
+import shlex
+import sys
+from pathlib import Path
+from subprocess import run, PIPE, STDOUT
+
+ACTION_PATH = Path(os.environ["GITHUB_ACTION_PATH"])
+ENV_PATH = ACTION_PATH / ".black-env"
+ENV_BIN = ENV_PATH / ("Scripts" if sys.platform == "win32" else "bin")
+OPTIONS = os.getenv("INPUT_OPTIONS", default="")
+SRC = os.getenv("INPUT_SRC", default="")
+BLACK_ARGS = os.getenv("INPUT_BLACK_ARGS", default="")
+VERSION = os.getenv("INPUT_VERSION", default="")
+
+run([sys.executable, "-m", "venv", str(ENV_PATH)], check=True)
+
+req = "black[colorama,python2]"
+if VERSION:
+    req += f"=={VERSION}"
+pip_proc = run(
+    [str(ENV_BIN / "python"), "-m", "pip", "install", req],
+    stdout=PIPE,
+    stderr=STDOUT,
+    encoding="utf-8",
+)
+if pip_proc.returncode:
+    print(pip_proc.stdout)
+    print("::error::Failed to install Black.", flush=True)
+    sys.exit(pip_proc.returncode)
+
+
+base_cmd = [str(ENV_BIN / "black")]
+if BLACK_ARGS:
+    # TODO: remove after a while since this is deprecated in favour of SRC + OPTIONS.
+    proc = run([*base_cmd, *shlex.split(BLACK_ARGS)])
+else:
+    proc = run([*base_cmd, *shlex.split(OPTIONS), *shlex.split(SRC)])
+
+sys.exit(proc.returncode)
diff --git a/.vim/bundle/black/autoload/black.vim b/.vim/bundle/black/autoload/black.vim
new file mode 100644 (file)
index 0000000..9ff5c23
--- /dev/null
@@ -0,0 +1,216 @@
+python3 << EndPython3
+import collections
+import os
+import sys
+import vim
+from distutils.util import strtobool
+
+
+class Flag(collections.namedtuple("FlagBase", "name, cast")):
+  @property
+  def var_name(self):
+    return self.name.replace("-", "_")
+
+  @property
+  def vim_rc_name(self):
+    name = self.var_name
+    if name == "line_length":
+      name = name.replace("_", "")
+    return "g:black_" + name
+
+
+FLAGS = [
+  Flag(name="line_length", cast=int),
+  Flag(name="fast", cast=strtobool),
+  Flag(name="skip_string_normalization", cast=strtobool),
+  Flag(name="quiet", cast=strtobool),
+]
+
+
+def _get_python_binary(exec_prefix):
+  try:
+    default = vim.eval("g:pymode_python").strip()
+  except vim.error:
+    default = ""
+  if default and os.path.exists(default):
+    return default
+  if sys.platform[:3] == "win":
+    return exec_prefix / 'python.exe'
+  return exec_prefix / 'bin' / 'python3'
+
+def _get_pip(venv_path):
+  if sys.platform[:3] == "win":
+    return venv_path / 'Scripts' / 'pip.exe'
+  return venv_path / 'bin' / 'pip'
+
+def _get_virtualenv_site_packages(venv_path, pyver):
+  if sys.platform[:3] == "win":
+    return venv_path / 'Lib' / 'site-packages'
+  return venv_path / 'lib' / f'python{pyver[0]}.{pyver[1]}' / 'site-packages'
+
+def _initialize_black_env(upgrade=False):
+  pyver = sys.version_info[:3]
+  if pyver < (3, 6, 2):
+    print("Sorry, Black requires Python 3.6.2+ to run.")
+    return False
+
+  from pathlib import Path
+  import subprocess
+  import venv
+  virtualenv_path = Path(vim.eval("g:black_virtualenv")).expanduser()
+  virtualenv_site_packages = str(_get_virtualenv_site_packages(virtualenv_path, pyver))
+  first_install = False
+  if not virtualenv_path.is_dir():
+    print('Please wait, one time setup for Black.')
+    _executable = sys.executable
+    _base_executable = getattr(sys, "_base_executable", _executable)
+    try:
+      executable = str(_get_python_binary(Path(sys.exec_prefix)))
+      sys.executable = executable
+      sys._base_executable = executable
+      print(f'Creating a virtualenv in {virtualenv_path}...')
+      print('(this path can be customized in .vimrc by setting g:black_virtualenv)')
+      venv.create(virtualenv_path, with_pip=True)
+    except Exception:
+      print('Encountered exception while creating virtualenv (see traceback below).')
+      print(f'Removing {virtualenv_path}...')
+      import shutil
+      shutil.rmtree(virtualenv_path)
+      raise
+    finally:
+      sys.executable = _executable
+      sys._base_executable = _base_executable
+    first_install = True
+  if first_install:
+    print('Installing Black with pip...')
+  if upgrade:
+    print('Upgrading Black with pip...')
+  if first_install or upgrade:
+    subprocess.run([str(_get_pip(virtualenv_path)), 'install', '-U', 'black'], stdout=subprocess.PIPE)
+    print('DONE! You are all set, thanks for waiting ✨ 🍰 ✨')
+  if first_install:
+    print('Pro-tip: to upgrade Black in the future, use the :BlackUpgrade command and restart Vim.\n')
+  if virtualenv_site_packages not in sys.path:
+    sys.path.insert(0, virtualenv_site_packages)
+  return True
+
+if _initialize_black_env():
+  import black
+  import time
+
+def get_target_version(tv):
+  if isinstance(tv, black.TargetVersion):
+    return tv
+  ret = None
+  try:
+    ret = black.TargetVersion[tv.upper()]
+  except KeyError:
+    print(f"WARNING: Target version {tv!r} not recognized by Black, using default target")
+  return ret
+
+def Black(**kwargs):
+  """
+  kwargs allows you to override ``target_versions`` argument of
+  ``black.FileMode``.
+
+  ``target_version`` needs to be cleaned because ``black.FileMode``
+  expects the ``target_versions`` argument to be a set of TargetVersion enums.
+
+  Allow kwargs["target_version"] to be a string to allow
+  to type it more quickly.
+
+  Using also target_version instead of target_versions to remain
+  consistent to Black's documentation of the structure of pyproject.toml.
+  """
+  start = time.time()
+  configs = get_configs()
+
+  black_kwargs = {}
+  if "target_version" in kwargs:
+    target_version = kwargs["target_version"]
+
+    if not isinstance(target_version, (list, set)):
+      target_version = [target_version]
+    target_version = set(filter(lambda x: x, map(lambda tv: get_target_version(tv), target_version)))
+    black_kwargs["target_versions"] = target_version
+
+  mode = black.FileMode(
+    line_length=configs["line_length"],
+    string_normalization=not configs["skip_string_normalization"],
+    is_pyi=vim.current.buffer.name.endswith('.pyi'),
+    **black_kwargs,
+  )
+  quiet = configs["quiet"]
+
+  buffer_str = '\n'.join(vim.current.buffer) + '\n'
+  try:
+    new_buffer_str = black.format_file_contents(
+      buffer_str,
+      fast=configs["fast"],
+      mode=mode,
+    )
+  except black.NothingChanged:
+    if not quiet:
+      print(f'Already well formatted, good job. (took {time.time() - start:.4f}s)')
+  except Exception as exc:
+    print(exc)
+  else:
+    current_buffer = vim.current.window.buffer
+    cursors = []
+    for i, tabpage in enumerate(vim.tabpages):
+      if tabpage.valid:
+        for j, window in enumerate(tabpage.windows):
+          if window.valid and window.buffer == current_buffer:
+            cursors.append((i, j, window.cursor))
+    vim.current.buffer[:] = new_buffer_str.split('\n')[:-1]
+    for i, j, cursor in cursors:
+      window = vim.tabpages[i].windows[j]
+      try:
+        window.cursor = cursor
+      except vim.error:
+        window.cursor = (len(window.buffer), 0)
+    if not quiet:
+      print(f'Reformatted in {time.time() - start:.4f}s.')
+
+def get_configs():
+  filename = vim.eval("@%")
+  path_pyproject_toml = black.find_pyproject_toml((filename,))
+  if path_pyproject_toml:
+    toml_config = black.parse_pyproject_toml(path_pyproject_toml)
+  else:
+    toml_config = {}
+
+  return {
+    flag.var_name: toml_config.get(flag.name, flag.cast(vim.eval(flag.vim_rc_name)))
+    for flag in FLAGS
+  }
+
+
+def BlackUpgrade():
+  _initialize_black_env(upgrade=True)
+
+def BlackVersion():
+  print(f'Black, version {black.__version__} on Python {sys.version}.')
+
+EndPython3
+
+function black#Black(...)
+    let kwargs = {}
+    for arg in a:000
+        let arg_list = split(arg, '=')
+        let kwargs[arg_list[0]] = arg_list[1]
+    endfor
+python3 << EOF
+import vim
+kwargs = vim.eval("kwargs")
+EOF
+  :py3 Black(**kwargs)
+endfunction
+
+function black#BlackUpgrade()
+  :py3 BlackUpgrade()
+endfunction
+
+function black#BlackVersion()
+  :py3 BlackVersion()
+endfunction
diff --git a/.vim/bundle/black/docs/Makefile b/.vim/bundle/black/docs/Makefile
new file mode 100644 (file)
index 0000000..cb0463c
--- /dev/null
@@ -0,0 +1,20 @@
+# Minimal makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS    =
+SPHINXBUILD   = sphinx-build
+SPHINXPROJ    = black
+SOURCEDIR     = .
+BUILDDIR      = _build
+
+# Put it first so that "make" without argument is like "make help".
+help:
+       @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+.PHONY: help Makefile
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option.  $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+       @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/.vim/bundle/black/docs/_static/custom.css b/.vim/bundle/black/docs/_static/custom.css
new file mode 100644 (file)
index 0000000..eacd69c
--- /dev/null
@@ -0,0 +1,44 @@
+/* Make the sidebar scrollable. Fixes https://github.com/psf/black/issues/990 */
+div.sphinxsidebar {
+  max-height: calc(100% - 18px);
+  overflow-y: auto;
+}
+
+/* Hide scrollbar for Chrome, Safari and Opera */
+div.sphinxsidebar::-webkit-scrollbar {
+  display: none;
+}
+
+/* Hide scrollbar for IE 6, 7 and 8 */
+@media \0screen\, screen\9 {
+  div.sphinxsidebar {
+    -ms-overflow-style: none;
+  }
+}
+
+/* Hide scrollbar for IE 9 and 10 */
+/* backslash-9 removes ie11+ & old Safari 4 */
+@media screen and (min-width: 0\0) {
+  div.sphinxsidebar {
+    -ms-overflow-style: none\9;
+  }
+}
+
+/* Hide scrollbar for IE 11 and up */
+_:-ms-fullscreen,
+:root div.sphinxsidebar {
+  -ms-overflow-style: none;
+}
+
+/* Hide scrollbar for Edge */
+@supports (-ms-ime-align: auto) {
+  div.sphinxsidebar {
+    -ms-overflow-style: none;
+  }
+}
+
+/* Nicer style for local document toc */
+.contents.topic {
+  background: none;
+  border: none;
+}
diff --git a/.vim/bundle/black/docs/_static/license.svg b/.vim/bundle/black/docs/_static/license.svg
new file mode 100644 (file)
index 0000000..25aa18b
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="78" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="78" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h47v20H0z"/><path fill="#7900CA" d="M47 0h31v20H47z"/><path fill="url(#b)" d="M0 0h78v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="110"><text x="245" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="370">license</text><text x="245" y="140" transform="scale(.1)" textLength="370">license</text><text x="615" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="210">MIT</text><text x="615" y="140" transform="scale(.1)" textLength="210">MIT</text></g> </svg>
diff --git a/.vim/bundle/black/docs/_static/logo2-readme.png b/.vim/bundle/black/docs/_static/logo2-readme.png
new file mode 100644 (file)
index 0000000..7704ec0
Binary files /dev/null and b/.vim/bundle/black/docs/_static/logo2-readme.png differ
diff --git a/.vim/bundle/black/docs/_static/logo2.png b/.vim/bundle/black/docs/_static/logo2.png
new file mode 100644 (file)
index 0000000..7c06e41
Binary files /dev/null and b/.vim/bundle/black/docs/_static/logo2.png differ
diff --git a/.vim/bundle/black/docs/_static/pypi_template.svg b/.vim/bundle/black/docs/_static/pypi_template.svg
new file mode 100644 (file)
index 0000000..0a0d2e9
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="88" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="88" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h33v20H0z"/><path fill="#007ec6" d="M33 0h55v20H33z"/><path fill="url(#b)" d="M0 0h88v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="110"><text x="175" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="230">pypi</text><text x="175" y="140" transform="scale(.1)" textLength="230">pypi</text><text x="595" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="450">$version</text><text x="595" y="140" transform="scale(.1)" textLength="450">$version</text></g> </svg>
diff --git a/.vim/bundle/black/docs/authors.md b/.vim/bundle/black/docs/authors.md
new file mode 100644 (file)
index 0000000..21b0e1a
--- /dev/null
@@ -0,0 +1,3 @@
+```{include} ../AUTHORS.md
+
+```
diff --git a/.vim/bundle/black/docs/change_log.md b/.vim/bundle/black/docs/change_log.md
new file mode 100644 (file)
index 0000000..e5f67e7
--- /dev/null
@@ -0,0 +1,3 @@
+```{include} ../CHANGES.md
+
+```
diff --git a/.vim/bundle/black/docs/compatible_configs/flake8/.flake8 b/.vim/bundle/black/docs/compatible_configs/flake8/.flake8
new file mode 100644 (file)
index 0000000..8dd399a
--- /dev/null
@@ -0,0 +1,3 @@
+[flake8]
+max-line-length = 88
+extend-ignore = E203
diff --git a/.vim/bundle/black/docs/compatible_configs/flake8/setup.cfg b/.vim/bundle/black/docs/compatible_configs/flake8/setup.cfg
new file mode 100644 (file)
index 0000000..8dd399a
--- /dev/null
@@ -0,0 +1,3 @@
+[flake8]
+max-line-length = 88
+extend-ignore = E203
diff --git a/.vim/bundle/black/docs/compatible_configs/flake8/tox.ini b/.vim/bundle/black/docs/compatible_configs/flake8/tox.ini
new file mode 100644 (file)
index 0000000..8dd399a
--- /dev/null
@@ -0,0 +1,3 @@
+[flake8]
+max-line-length = 88
+extend-ignore = E203
diff --git a/.vim/bundle/black/docs/compatible_configs/isort/.editorconfig b/.vim/bundle/black/docs/compatible_configs/isort/.editorconfig
new file mode 100644 (file)
index 0000000..edc849a
--- /dev/null
@@ -0,0 +1,2 @@
+[*.py]
+profile = black
diff --git a/.vim/bundle/black/docs/compatible_configs/isort/.isort.cfg b/.vim/bundle/black/docs/compatible_configs/isort/.isort.cfg
new file mode 100644 (file)
index 0000000..f238bf7
--- /dev/null
@@ -0,0 +1,2 @@
+[settings]
+profile = black
diff --git a/.vim/bundle/black/docs/compatible_configs/isort/pyproject.toml b/.vim/bundle/black/docs/compatible_configs/isort/pyproject.toml
new file mode 100644 (file)
index 0000000..2dc02c8
--- /dev/null
@@ -0,0 +1,2 @@
+[tool.isort]
+profile = 'black'
diff --git a/.vim/bundle/black/docs/compatible_configs/isort/setup.cfg b/.vim/bundle/black/docs/compatible_configs/isort/setup.cfg
new file mode 100644 (file)
index 0000000..c76db01
--- /dev/null
@@ -0,0 +1,2 @@
+[isort]
+profile = black
diff --git a/.vim/bundle/black/docs/compatible_configs/pylint/pylintrc b/.vim/bundle/black/docs/compatible_configs/pylint/pylintrc
new file mode 100644 (file)
index 0000000..7abddd2
--- /dev/null
@@ -0,0 +1,5 @@
+[MESSAGES CONTROL]
+disable = C0330, C0326
+
+[format]
+max-line-length = 88
diff --git a/.vim/bundle/black/docs/compatible_configs/pylint/pyproject.toml b/.vim/bundle/black/docs/compatible_configs/pylint/pyproject.toml
new file mode 100644 (file)
index 0000000..49ad7a2
--- /dev/null
@@ -0,0 +1,5 @@
+[tool.pylint.messages_control]
+disable = "C0330, C0326"
+
+[tool.pylint.format]
+max-line-length = "88"
diff --git a/.vim/bundle/black/docs/compatible_configs/pylint/setup.cfg b/.vim/bundle/black/docs/compatible_configs/pylint/setup.cfg
new file mode 100644 (file)
index 0000000..3ada245
--- /dev/null
@@ -0,0 +1,5 @@
+[pylint]
+max-line-length = 88
+
+[pylint.messages_control]
+disable = C0330, C0326
diff --git a/.vim/bundle/black/docs/conf.py b/.vim/bundle/black/docs/conf.py
new file mode 100644 (file)
index 0000000..55d0fa9
--- /dev/null
@@ -0,0 +1,233 @@
+# -*- coding: utf-8 -*-
+#
+# Configuration file for the Sphinx documentation builder.
+#
+# This file does only contain a selection of the most common options. For a
+# full list see the documentation:
+# http://www.sphinx-doc.org/en/stable/config
+
+# -- Path setup --------------------------------------------------------------
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+#
+
+import os
+import string
+from pathlib import Path
+
+from pkg_resources import get_distribution
+
+CURRENT_DIR = Path(__file__).parent
+
+
+def make_pypi_svg(version: str) -> None:
+    template: Path = CURRENT_DIR / "_static" / "pypi_template.svg"
+    target: Path = CURRENT_DIR / "_static" / "pypi.svg"
+    with open(str(template), "r", encoding="utf8") as f:
+        svg: str = string.Template(f.read()).substitute(version=version)
+    with open(str(target), "w", encoding="utf8") as f:
+        f.write(svg)
+
+
+# Necessary so Click doesn't hit an encode error when called by
+# sphinxcontrib-programoutput on Windows.
+os.putenv("pythonioencoding", "utf-8")
+
+# -- Project information -----------------------------------------------------
+
+project = "Black"
+copyright = "2018-Present, Łukasz Langa and contributors to Black"
+author = "Łukasz Langa and contributors to Black"
+
+# Autopopulate version
+# The version, including alpha/beta/rc tags, but not commit hash and datestamps
+release = get_distribution("black").version.split("+")[0]
+# The short X.Y version.
+version = release
+for sp in "abcfr":
+    version = version.split(sp)[0]
+
+make_pypi_svg(release)
+
+
+# -- General configuration ---------------------------------------------------
+
+# If your documentation needs a minimal Sphinx version, state it here.
+needs_sphinx = "3.0"
+
+# Add any Sphinx extension module names here, as strings. They can be
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+# ones.
+extensions = [
+    "sphinx.ext.autodoc",
+    "sphinx.ext.intersphinx",
+    "sphinx.ext.napoleon",
+    "myst_parser",
+    "sphinxcontrib.programoutput",
+    "sphinx_copybutton",
+]
+
+# If you need extensions of a certain version or higher, list them here.
+needs_extensions = {"myst_parser": "0.13.7"}
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ["_templates"]
+
+# The suffix(es) of source filenames.
+# You can specify multiple suffix as a list of string:
+source_suffix = [".rst", ".md"]
+
+# The master toctree document.
+master_doc = "index"
+
+# The language for content autogenerated by Sphinx. Refer to documentation
+# for a list of supported languages.
+#
+# This is also used if you do content translation via gettext catalogs.
+# Usually you set "language" from the command line for these cases.
+language = None
+
+# List of patterns, relative to source directory, that match files and
+# directories to ignore when looking for source files.
+# This pattern also affects html_static_path and html_extra_path .
+
+exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = "sphinx"
+
+# We need headers to be linkable to so ask MyST-Parser to autogenerate anchor IDs for
+# headers up to and including level 3.
+myst_heading_anchors = 3
+
+# Prettier support formatting some MyST syntax but not all, so let's disable the
+# unsupported yet still enabled by default ones.
+myst_disable_syntax = [
+    "myst_block_break",
+    "myst_line_comment",
+    "math_block",
+]
+
+# -- Options for HTML output -------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages.  See the documentation for
+# a list of builtin themes.
+#
+html_theme = "alabaster"
+
+html_sidebars = {
+    "**": [
+        "about.html",
+        "navigation.html",
+        "relations.html",
+        "searchbox.html",
+    ]
+}
+
+html_theme_options = {
+    "show_related": False,
+    "description": "“Any color you like.”",
+    "github_button": True,
+    "github_user": "psf",
+    "github_repo": "black",
+    "github_type": "star",
+    "show_powered_by": True,
+    "fixed_sidebar": True,
+    "logo": "logo2.png",
+}
+
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ["_static"]
+
+# Custom sidebar templates, must be a dictionary that maps document names
+# to template names.
+#
+# The default sidebars (for documents that don't match any pattern) are
+# defined by theme itself.  Builtin themes are using these templates by
+# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
+# 'searchbox.html']``.
+#
+# html_sidebars = {}
+
+
+# -- Options for HTMLHelp output ---------------------------------------------
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = "blackdoc"
+
+
+# -- Options for LaTeX output ------------------------------------------------
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title,
+#  author, documentclass [howto, manual, or own class]).
+latex_documents = [
+    (
+        master_doc,
+        "black.tex",
+        "Documentation for Black",
+        "Łukasz Langa and contributors to Black",
+        "manual",
+    )
+]
+
+
+# -- Options for manual page output ------------------------------------------
+
+# One entry per manual page. List of tuples
+# (source start file, name, description, authors, manual section).
+man_pages = [(master_doc, "black", "Documentation for Black", [author], 1)]
+
+
+# -- Options for Texinfo output ----------------------------------------------
+
+# Grouping the document tree into Texinfo files. List of tuples
+# (source start file, target name, title, author,
+#  dir menu entry, description, category)
+texinfo_documents = [
+    (
+        master_doc,
+        "Black",
+        "Documentation for Black",
+        author,
+        "Black",
+        "The uncompromising Python code formatter",
+        "Miscellaneous",
+    )
+]
+
+
+# -- Options for Epub output -------------------------------------------------
+
+# Bibliographic Dublin Core info.
+epub_title = project
+epub_author = author
+epub_publisher = author
+epub_copyright = copyright
+
+# The unique identifier of the text. This can be a ISBN number
+# or the project homepage.
+#
+# epub_identifier = ''
+
+# A unique identification for the text.
+#
+# epub_uid = ''
+
+# A list of files that should not be packed into the epub file.
+epub_exclude_files = ["search.html"]
+
+
+# -- Extension configuration -------------------------------------------------
+
+autodoc_member_order = "bysource"
+
+# -- Options for intersphinx extension ---------------------------------------
+
+# Example configuration for intersphinx: refer to the Python standard library.
+intersphinx_mapping = {"https://docs.python.org/3/": None}
diff --git a/.vim/bundle/black/docs/contributing/gauging_changes.md b/.vim/bundle/black/docs/contributing/gauging_changes.md
new file mode 100644 (file)
index 0000000..b41c7a3
--- /dev/null
@@ -0,0 +1,42 @@
+# Gauging changes
+
+A lot of the time, your change will affect formatting and/or performance. Quantifying
+these changes is hard, so we have tooling to help make it easier.
+
+It's recommended you evaluate the quantifiable changes your _Black_ formatting
+modification causes before submitting a PR. Think about if the change seems disruptive
+enough to cause frustration to projects that are already "black formatted".
+
+## black-primer
+
+`black-primer` is a tool built for CI (and humans) to have _Black_ `--check` a number of
+Git accessible projects in parallel. (configured in `primer.json`) _(A PR will be
+accepted to add Mercurial support.)_
+
+### Run flow
+
+- Ensure we have a `black` + `git` in PATH
+- Load projects from `primer.json`
+- Run projects in parallel with `--worker` workers (defaults to CPU count / 2)
+  - Checkout projects
+  - Run black and record result
+  - Clean up repository checkout _(can optionally be disabled via `--keep`)_
+- Display results summary to screen
+- Default to cleaning up `--work-dir` (which defaults to tempfile schemantics)
+- Return
+  - 0 for successful run
+  - \< 0 for environment / internal error
+  - \> 0 for each project with an error
+
+### Speed up runs 🏎
+
+If you're running locally yourself to test black on lots of code try:
+
+- Using `-k` / `--keep` + `-w` / `--work-dir` so you don't have to re-checkout the repo
+  each run
+
+### CLI arguments
+
+```{program-output} black-primer --help
+
+```
diff --git a/.vim/bundle/black/docs/contributing/index.rst b/.vim/bundle/black/docs/contributing/index.rst
new file mode 100644 (file)
index 0000000..480dbd6
--- /dev/null
@@ -0,0 +1,43 @@
+Contributing
+============
+
+.. toctree::
+  :hidden:
+
+  the_basics
+  gauging_changes
+  issue_triage
+  release_process
+  reference/reference_summary
+
+Welcome! Happy to see you willing to make the project better. Have you read the entire
+`user documentation <https://black.readthedocs.io/en/latest/>`_ yet?
+
+.. rubric:: Bird's eye view
+
+In terms of inspiration, *Black* is about as configurable as *gofmt* (which is to say,
+not very). This is deliberate. *Black* aims to provide a consistent style and take away
+opportunities for arguing about style.
+
+Bug reports and fixes are always welcome! Please follow the
+`issue template on GitHub <https://github.com/psf/black/issues/new>`_ for best results.
+
+Before you suggest a new feature or configuration knob, ask yourself why you want it. If
+it enables better integration with some workflow, fixes an inconsistency, speeds things
+up, and so on - go for it! On the other hand, if your answer is "because I don't like a
+particular formatting" then you're not ready to embrace *Black* yet. Such changes are
+unlikely to get accepted. You can still try but prepare to be disappointed.
+
+.. rubric:: Contents
+
+This section covers the following topics:
+
+- :doc:`the_basics`
+- :doc:`gauging_changes`
+- :doc:`release_process`
+- :doc:`reference/reference_summary`
+
+For an overview on contributing to the *Black*, please checkout :doc:`the_basics`.
+
+If you need a reference of the functions, classes, etc. available to you while
+developing *Black*, there's the :doc:`reference/reference_summary` docs.
diff --git a/.vim/bundle/black/docs/contributing/issue_triage.md b/.vim/bundle/black/docs/contributing/issue_triage.md
new file mode 100644 (file)
index 0000000..9b987fb
--- /dev/null
@@ -0,0 +1,169 @@
+# Issue triage
+
+Currently, _Black_ uses the issue tracker for bugs, feature requests, proposed design
+modifications, and general user support. Each of these issues have to be triaged so they
+can be eventually be resolved somehow. This document outlines the triaging process and
+also the current guidelines and recommendations.
+
+```{tip}
+If you're looking for a way to contribute without submitting patches, this might be
+the area for you. Since _Black_ is a popular project, its issue tracker is quite busy
+and always needs more attention than is available. While triage isn't the most
+glamorous or technically challenging form of contribution, it's still important.
+For example, we would love to know whether that old bug report is still reproducible!
+
+You can get easily started by reading over this document and then responding to issues.
+
+If you contribute enough and have stayed for a long enough time, you may even be
+given Triage permissions!
+```
+
+## The basics
+
+_Black_ gets a whole bunch of different issues, they range from bug reports to user
+support issues. To triage is to identify, organize, and kickstart the issue's journey
+through its lifecycle to resolution.
+
+More specifically, to triage an issue means to:
+
+- identify what type and categories the issue falls under
+- confirm bugs
+- ask questions / for further information if necessary
+- link related issues
+- provide the first initial feedback / support
+
+Note that triage is typically the first response to an issue, so don't fret if the issue
+doesn't make much progress after initial triage. The main goal of triaging to prepare
+the issue for future more specific development or discussion, so _eventually_ it will be
+resolved.
+
+The lifecycle of a bug report or user support issue typically goes something like this:
+
+1. _the issue is waiting for triage_
+2. **identified** - has been marked with a type label and other relevant labels, more
+   details or a functional reproduction may be still needed (and therefore should be
+   marked with `S: needs repro` or `S: awaiting reponse`)
+3. **confirmed** - the issue can reproduced and necessary details have been provided
+4. **discussion** - initial triage has been done and now the general details on how the
+   issue should be best resolved are being hashed out
+5. **awaiting fix** - no further discussion on the issue is necessary and a resolving PR
+   is the next step
+6. **closed** - the issue has been resolved, reasons include:
+   - the issue couldn't be reproduced
+   - the issue has been fixed
+   - duplicate of another pre-existing issue or is invalid
+
+For enhancement, documentation, and design issues, the lifecycle looks very similar but
+the details are different:
+
+1. _the issue is waiting for triage_
+2. **identified** - has been marked with a type label and other relevant labels
+3. **discussion** - the merits of the suggested changes are currently being discussed, a
+   PR would be acceptable but would be at sigificant risk of being rejected
+4. **accepted & awaiting PR** - it's been determined the suggested changes are OK and a
+   PR would be welcomed (`S: accepted`)
+5. **closed**: - the issue has been resolved, reasons include:
+   - the suggested changes were implemented
+   - it was rejected (due to technical concerns, ethos conflicts, etc.)
+   - duplicate of a pre-existing issue or is invalid
+
+**Note**: documentation issues don't use the `S: accepted` label currently since they're
+less likely to be rejected.
+
+## Labelling
+
+We use labels to organize, track progress, and help effectively divvy up work.
+
+Our labels are divided up into several groups identified by their prefix:
+
+- **T - Type**: the general flavor of issue / PR
+- **C - Category**: areas of concerns, ranges from bug types to project maintenance
+- **F - Formatting Area**: like C but for formatting specifically
+- **S - Status**: what stage of resolution is this issue currently in?
+- **R - Resolution**: how / why was the issue / PR resolved?
+
+We also have a few standalone labels:
+
+- **`good first issue`**: issues that are beginner-friendly (and will show up in GitHub
+  banners for first-time visitors to the repository)
+- **`help wanted`**: complex issues that need and are looking for a fair bit of work as
+  to progress (will also show up in various GitHub pages)
+- **`skip news`**: for PRs that are trivial and don't need a CHANGELOG entry (and skips
+  the CHANGELOG entry check)
+
+```{note}
+We do use labels for PRs, in particular the `skip news` label, but we aren't that
+rigorous about it. Just follow your judgement on what labels make sense for the
+specific PR (if any even make sense).
+```
+
+## Projects
+
+For more general and broad goals we use projects to track work. Some may be longterm
+projects with no true end (e.g. the "Amazing documentation" project) while others may be
+more focused and have a definite end (like the "Getting to beta" project).
+
+```{note}
+To modify GitHub Projects you need the [Write repository permission level or higher](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization#repository-access-for-each-permission-level).
+```
+
+## Closing issues
+
+Closing an issue signifies the issue has reached the end of its life, so closing issues
+should be taken with care. The following is the general recommendation for each type of
+issue. Note that these are only guidelines and if your judgement says something else
+it's totally cool to go with it instead.
+
+For most issues, closing the issue manually or automatically after a resolving PR is
+ideal. For bug reports specifically, if the bug has already been fixed, try to check in
+with the issue opener that their specific case has been resolved before closing. Note
+that we close issues as soon as they're fixed in the `main` branch. This doesn't
+necessarily mean they've been released yet.
+
+Design and enhancement issues should be also closed when it's clear the proposed change
+won't be implemented, whether that has been determined after a lot of discussion or just
+simply goes against _Black_'s ethos. If such an issue turns heated, closing and locking
+is acceptable if it's severe enough (although checking in with the core team is probably
+a good idea).
+
+User support issues are best closed by the author or when it's clear the issue has been
+resolved in some sort of manner.
+
+Duplicates and invalid issues should always be closed since they serve no purpose and
+add noise to an already busy issue tracker. Although be careful to make sure it's truly
+a duplicate and not just very similar before labelling and closing an issue as
+duplicate.
+
+## Common reports
+
+Some issues are frequently opened, like issues about _Black_ formatted code causing E203
+messages. Even though these issues are probably heavily duplicated, they still require
+triage sucking up valuable time from other things (although they usually skip most of
+their lifecycle since they're closed on triage).
+
+Here's some of the most common issues and also pre-made responses you can use:
+
+### "The trailing comma isn't being removed by Black!"
+
+```text
+Black used to remove the trailing comma if the expression fits in a single line, but this was changed by #826 and #1288. Now a trailing comma tells Black to always explode the expression. This change was made mostly for the cases where you _know_ a collection or whatever will grow in the future. Having it always exploded as one element per line reduces diff noise when adding elements. Before the "magic trailing comma" feature, you couldn't anticipate a collection's growth reliably since collections that fitted in one line were ruthlessly collapsed regardless of your intentions. One of Black's goals is reducing diff noise, so this was a good pragmatic change.
+
+So no, this is not a bug, but an intended feature. Anyway, [here's the documentation](https://github.com/psf/black/blob/master/docs/the_black_code_style.md#the-magic-trailing-comma) on the "magic trailing comma", including the ability to skip this functionality with the `--skip-magic-trailing-comma` option. Hopefully that helps solve the possible confusion.
+```
+
+### "Black formatted code is violating Flake8's E203!"
+
+```text
+Hi,
+
+This is expected behaviour, please see the documentation regarding this case (emphasis
+mine):
+
+> PEP 8 recommends to treat : in slices as a binary operator with the lowest priority, and to leave an equal amount of space on either side, **except if a parameter is omitted (e.g. ham[1 + 1 :])**. It recommends no spaces around : operators for “simple expressions” (ham[lower:upper]), and **extra space for “complex expressions” (ham[lower : upper + offset])**. **Black treats anything more than variable names as “complex” (ham[lower : upper + 1]).** It also states that for extended slices, both : operators have to have the same amount of spacing, except if a parameter is omitted (ham[1 + 1 ::]). Black enforces these rules consistently.
+
+> This behaviour may raise E203 whitespace before ':' warnings in style guide enforcement tools like Flake8. **Since E203 is not PEP 8 compliant, you should tell Flake8 to ignore these warnings**.
+
+https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html#slices
+
+Have a good day!
+```
diff --git a/.vim/bundle/black/docs/contributing/reference/reference_classes.rst b/.vim/bundle/black/docs/contributing/reference/reference_classes.rst
new file mode 100644 (file)
index 0000000..fa76596
--- /dev/null
@@ -0,0 +1,76 @@
+*Black* classes
+===============
+
+*Contents are subject to change.*
+
+.. currentmodule:: black
+
+:class:`BracketTracker`
+-----------------------
+
+.. autoclass:: black.brackets.BracketTracker
+    :members:
+
+:class:`EmptyLineTracker`
+-------------------------
+
+.. autoclass:: black.EmptyLineTracker
+    :members:
+
+:class:`Line`
+-------------
+
+.. autoclass:: black.Line
+    :members:
+    :special-members: __str__, __bool__
+
+:class:`LineGenerator`
+----------------------
+
+.. autoclass:: black.LineGenerator
+    :show-inheritance:
+    :members:
+
+:class:`ProtoComment`
+---------------------
+
+.. autoclass:: black.comments.ProtoComment
+    :members:
+
+:class:`Report`
+---------------
+
+.. autoclass:: black.Report
+    :members:
+    :special-members: __str__
+
+:class:`Visitor`
+----------------
+
+.. autoclass:: black.nodes.Visitor
+    :show-inheritance:
+    :members:
+
+Enums
+=====
+
+:class:`Changed`
+----------------
+
+.. autoclass:: black.Changed
+    :show-inheritance:
+    :members:
+
+:class:`Mode`
+-----------------
+
+.. autoclass:: black.Mode
+    :show-inheritance:
+    :members:
+
+:class:`WriteBack`
+------------------
+
+.. autoclass:: black.WriteBack
+    :show-inheritance:
+    :members:
diff --git a/.vim/bundle/black/docs/contributing/reference/reference_exceptions.rst b/.vim/bundle/black/docs/contributing/reference/reference_exceptions.rst
new file mode 100644 (file)
index 0000000..aafe61e
--- /dev/null
@@ -0,0 +1,12 @@
+*Black* exceptions
+==================
+
+*Contents are subject to change.*
+
+.. currentmodule:: black
+
+.. autoexception:: black.linegen.CannotSplit
+
+.. autoexception:: black.NothingChanged
+
+.. autoexception:: black.InvalidInput
diff --git a/.vim/bundle/black/docs/contributing/reference/reference_functions.rst b/.vim/bundle/black/docs/contributing/reference/reference_functions.rst
new file mode 100644 (file)
index 0000000..4353d1b
--- /dev/null
@@ -0,0 +1,178 @@
+*Black* functions
+=================
+
+*Contents are subject to change.*
+
+.. currentmodule:: black
+
+Assertions and checks
+---------------------
+
+.. autofunction:: black.assert_equivalent
+
+.. autofunction:: black.assert_stable
+
+.. autofunction:: black.lines.can_be_split
+
+.. autofunction:: black.lines.can_omit_invisible_parens
+
+.. autofunction:: black.nodes.is_empty_tuple
+
+.. autofunction:: black.nodes.is_import
+
+.. autofunction:: black.lines.is_line_short_enough
+
+.. autofunction:: black.nodes.is_multiline_string
+
+.. autofunction:: black.nodes.is_one_tuple
+
+.. autofunction:: black.brackets.is_split_after_delimiter
+
+.. autofunction:: black.brackets.is_split_before_delimiter
+
+.. autofunction:: black.nodes.is_stub_body
+
+.. autofunction:: black.nodes.is_stub_suite
+
+.. autofunction:: black.nodes.is_vararg
+
+.. autofunction:: black.nodes.is_yield
+
+
+Formatting
+----------
+
+.. autofunction:: black.format_file_contents
+
+.. autofunction:: black.format_file_in_place
+
+.. autofunction:: black.format_stdin_to_stdout
+
+.. autofunction:: black.format_str
+
+.. autofunction:: black.reformat_one
+
+.. autofunction:: black.schedule_formatting
+
+File operations
+---------------
+
+.. autofunction:: black.dump_to_file
+
+.. autofunction:: black.find_project_root
+
+.. autofunction:: black.gen_python_files
+
+.. autofunction:: black.read_pyproject_toml
+
+Parsing
+-------
+
+.. autofunction:: black.decode_bytes
+
+.. autofunction:: black.parsing.lib2to3_parse
+
+.. autofunction:: black.parsing.lib2to3_unparse
+
+Split functions
+---------------
+
+.. autofunction:: black.linegen.bracket_split_build_line
+
+.. autofunction:: black.linegen.bracket_split_succeeded_or_raise
+
+.. autofunction:: black.linegen.delimiter_split
+
+.. autofunction:: black.linegen.left_hand_split
+
+.. autofunction:: black.linegen.right_hand_split
+
+.. autofunction:: black.linegen.standalone_comment_split
+
+.. autofunction:: black.linegen.transform_line
+
+Caching
+-------
+
+.. autofunction:: black.cache.filter_cached
+
+.. autofunction:: black.cache.get_cache_file
+
+.. autofunction:: black.cache.get_cache_info
+
+.. autofunction:: black.cache.read_cache
+
+.. autofunction:: black.cache.write_cache
+
+Utilities
+---------
+
+.. py:function:: black.debug.DebugVisitor.show(code: str) -> None
+
+    Pretty-print the lib2to3 AST of a given string of `code`.
+
+.. autofunction:: black.concurrency.cancel
+
+.. autofunction:: black.nodes.child_towards
+
+.. autofunction:: black.nodes.container_of
+
+.. autofunction:: black.comments.convert_one_fmt_off_pair
+
+.. autofunction:: black.diff
+
+.. autofunction:: black.linegen.dont_increase_indentation
+
+.. autofunction:: black.numerics.format_float_or_int_string
+
+.. autofunction:: black.nodes.ensure_visible
+
+.. autofunction:: black.lines.enumerate_reversed
+
+.. autofunction:: black.comments.generate_comments
+
+.. autofunction:: black.comments.generate_ignored_nodes
+
+.. autofunction:: black.comments.is_fmt_on
+
+.. autofunction:: black.comments.contains_fmt_on_at_column
+
+.. autofunction:: black.nodes.first_leaf_column
+
+.. autofunction:: black.linegen.generate_trailers_to_omit
+
+.. autofunction:: black.get_future_imports
+
+.. autofunction:: black.comments.list_comments
+
+.. autofunction:: black.comments.make_comment
+
+.. autofunction:: black.linegen.maybe_make_parens_invisible_in_atom
+
+.. autofunction:: black.brackets.max_delimiter_priority_in_atom
+
+.. autofunction:: black.normalize_fmt_off
+
+.. autofunction:: black.numerics.normalize_numeric_literal
+
+.. autofunction:: black.linegen.normalize_prefix
+
+.. autofunction:: black.strings.normalize_string_prefix
+
+.. autofunction:: black.strings.normalize_string_quotes
+
+.. autofunction:: black.linegen.normalize_invisible_parens
+
+.. autofunction:: black.patch_click
+
+.. autofunction:: black.nodes.preceding_leaf
+
+.. autofunction:: black.re_compile_maybe_verbose
+
+.. autofunction:: black.linegen.should_split_line
+
+.. autofunction:: black.shutdown
+
+.. autofunction:: black.strings.sub_twice
+
+.. autofunction:: black.nodes.whitespace
diff --git a/.vim/bundle/black/docs/contributing/reference/reference_summary.rst b/.vim/bundle/black/docs/contributing/reference/reference_summary.rst
new file mode 100644 (file)
index 0000000..f6ff468
--- /dev/null
@@ -0,0 +1,16 @@
+Developer reference
+===================
+
+.. note::
+
+  The documentation here is quite outdated and has been neglected. Many objects worthy
+  of inclusion aren't documented. Contributions are appreciated!
+
+*Contents are subject to change.*
+
+.. toctree::
+   :maxdepth: 2
+
+   reference_classes
+   reference_functions
+   reference_exceptions
diff --git a/.vim/bundle/black/docs/contributing/release_process.md b/.vim/bundle/black/docs/contributing/release_process.md
new file mode 100644 (file)
index 0000000..718ea3d
--- /dev/null
@@ -0,0 +1,89 @@
+# Release process
+
+_Black_ has had a lot of work automating its release process. This document sets out to
+explain what everything does and how to release _Black_ using said automation.
+
+## Cutting a Release
+
+To cut a release, you must be a _Black_ maintainer with `GitHub Release` creation
+access. Using this access, the release process is:
+
+1. Cut a new PR editing `CHANGES.md` to version the latest changes
+   1. Example PR: https://github.com/psf/black/pull/2192
+   2. Example title: `Update CHANGES.md for XX.X release`
+2. Once the release PR is merged ensure all CI passes
+   1. If not, ensure there is an Issue open for the cause of failing CI (generally we'd
+      want this fixed before cutting a release)
+3. Open `CHANGES.md` and copy the _raw markdown_ of the latest changes to use in the
+   description of the GitHub Release.
+4. Go and [cut a release](https://github.com/psf/black/releases) using the GitHub UI so
+   that all workflows noted below are triggered.
+   1. The release version and tag should be the [CalVer](https://calver.org) version
+      _Black_ used for the current release e.g. `21.6` / `21.5b1`
+   2. _Black_ uses [setuptools scm](https://pypi.org/project/setuptools-scm/) to pull
+      the current version for the package builds and release.
+5. Once the release is cut, you're basically done. It's a good practice to go and watch
+   to make sure all the [GitHub Actions](https://github.com/psf/black/actions) pass,
+   although you should receive an email to your registered GitHub email address should
+   one fail.
+   1. You should see all the release workflows and lint/unittests workflows running on
+      the new tag in the Actions UI
+
+If anything fails, please go read the respective action's log output and configuration
+file to reverse engineer your way to a fix/soluton.
+
+## Release workflows
+
+All _Blacks_'s automation workflows use GitHub Actions. All workflows are therefore
+configured using `.yml` files in the `.github/workflows` directory of the _Black_
+repository.
+
+Below are descriptions of our release workflows.
+
+### Docker
+
+This workflow uses the QEMU powered `buildx` feature of docker to upload a `arm64` and
+`amd64`/`x86_64` build of the official _Black_ docker image™.
+
+- Currently this workflow uses an API Token associated with @cooperlees account
+
+### pypi_upload
+
+This workflow builds a Python
+[sdist](https://docs.python.org/3/distutils/sourcedist.html) and
+[wheel](https://pythonwheels.com) using the latest
+[setuptools](https://pypi.org/project/setuptools/) and
+[wheel](https://pypi.org/project/wheel/) modules.
+
+It will then use [twine](https://pypi.org/project/twine/) to upload both release formats
+to PyPI for general downloading of the _Black_ Python package. This is where
+[pip](https://pypi.org/project/pip/) looks by default.
+
+- Currently this workflow uses an API token associated with @ambv's PyPI account
+
+### Upload self-contained binaries
+
+This workflow builds self-contained binaries for multiple platforms. This allows people
+to download the executable for their platform and run _Black_ without a
+[Python Runtime](https://wiki.python.org/moin/PythonImplementations) installed.
+
+The created binaries are attached/stored on the associated
+[GitHub Release](https://github.com/psf/black/releases) for download over _IPv4 only_
+(GitHub still does not have IPv6 access 😢).
+
+## Moving the `stable` tag
+
+_Black_ provides a stable tag for people who want to move along as _Black_ developers
+deem the newest version reliable. Here the _Black_ developers will move once the release
+has been problem free for at least ~24 hours from release. Given the large _Black_
+userbase we hear about bad bugs quickly. We do strive to continually improve our CI too.
+
+### Tag moving process
+
+#### stable
+
+From a rebased `main` checkout:
+
+1. `git tag -f stable VERSION_TAG`
+   1. e.g. `git tag -f stable 21.5b1`
+1. `git push --tags -f`
diff --git a/.vim/bundle/black/docs/contributing/the_basics.md b/.vim/bundle/black/docs/contributing/the_basics.md
new file mode 100644 (file)
index 0000000..d61f3ec
--- /dev/null
@@ -0,0 +1,101 @@
+# The basics
+
+An overview on contributing to the _Black_ project.
+
+## Technicalities
+
+Development on the latest version of Python is preferred. As of this writing it's 3.9.
+You can use any operating system.
+
+Install all development dependencies using:
+
+```console
+$ pipenv install --dev
+$ pipenv shell
+$ pre-commit install
+```
+
+If you haven't used `pipenv` before but are comfortable with virtualenvs, just run
+`pip install pipenv` in the virtualenv you're already using and invoke the command above
+from the cloned _Black_ repo. It will do the correct thing.
+
+Non pipenv install works too:
+
+```console
+$ pip install -r test_requirements.txt
+$ pip install -e .[d]
+```
+
+Before submitting pull requests, run lints and tests with the following commands from
+the root of the black repo:
+
+```console
+# Linting
+$ pre-commit run -a
+
+# Unit tests
+$ tox -e py
+
+# Optional Fuzz testing
+$ tox -e fuzz
+
+# Optional CI run to test your changes on many popular python projects
+$ black-primer [-k -w /tmp/black_test_repos]
+```
+
+### News / Changelog Requirement
+
+`Black` has CI that will check for an entry corresponding to your PR in `CHANGES.md`. If
+you feel this PR does not require a changelog entry please state that in a comment and a
+maintainer can add a `skip news` label to make the CI pass. Otherwise, please ensure you
+have a line in the following format:
+
+```md
+- `Black` is now more awesome (#X)
+```
+
+Note that X should be your PR number, not issue number! To workout X, please use
+[Next PR Number](https://ichard26.github.io/next-pr-number/?owner=psf&name=black). This
+is not perfect but saves a lot of release overhead as now the releaser does not need to
+go back and workout what to add to the `CHANGES.md` for each release.
+
+### Style Changes
+
+If a change would affect the advertised code style, please modify the documentation (The
+_Black_ code style) to reflect that change. Patches that fix unintended bugs in
+formatting don't need to be mentioned separately though.
+
+### Docs Testing
+
+If you make changes to docs, you can test they still build locally too.
+
+```console
+$ pip install -r docs/requirements.txt
+$ pip install [-e] .[d]
+$ sphinx-build -a -b html -W docs/ docs/_build/
+```
+
+## black-primer
+
+`black-primer` is used by CI to pull down well-known _Black_ formatted projects and see
+if we get source code changes. It will error on formatting changes or errors. Please run
+before pushing your PR to see if you get the actions you would expect from _Black_ with
+your PR. You may need to change
+[primer.json](https://github.com/psf/black/blob/main/src/black_primer/primer.json)
+configuration for it to pass.
+
+For more `black-primer` information visit the
+[documentation](./gauging_changes.md#black-primer).
+
+## Hygiene
+
+If you're fixing a bug, add a test. Run it first to confirm it fails, then fix the bug,
+run it again to confirm it's really fixed.
+
+If adding a new feature, add a test. In fact, always add a test. But wait, before adding
+any large feature, first open an issue for us to discuss the idea first.
+
+## Finally
+
+Thanks again for your interest in improving the project! You're taking action when most
+people decide to sit and watch.
diff --git a/.vim/bundle/black/docs/faq.md b/.vim/bundle/black/docs/faq.md
new file mode 100644 (file)
index 0000000..c361add
--- /dev/null
@@ -0,0 +1,84 @@
+# Frequently Asked Questions
+
+The most common questions and issues users face are aggregated to this FAQ.
+
+```{contents}
+:local:
+:backlinks: none
+```
+
+## Does Black have an API?
+
+Not yet. _Black_ is fundamentally a command line tool. Many
+[integrations](integrations/index.rst) are provided, but a Python interface is not one
+of them. A simple API is being [planned](https://github.com/psf/black/issues/779)
+though.
+
+## Is Black safe to use?
+
+Yes, for the most part. _Black_ is strictly about formatting, nothing else. But because
+_Black_ is still in [beta](index.rst), some edges are still a bit rough. To combat
+issues, the equivalence of code after formatting is
+[checked](the_black_code_style/current_style.md#ast-before-and-after-formatting) with
+limited special cases where the code is allowed to differ. If issues are found, an error
+is raised and the file is left untouched. Magical comments that influence linters and
+other tools, such as `# noqa`, may be moved by _Black_. See below for more details.
+
+## How stable is Black's style?
+
+Quite stable. _Black_ aims to enforce one style and one style only, with some room for
+pragmatism. However, _Black_ is still in beta so style changes are both planned and
+still proposed on the issue tracker. See
+[The Black Code Style](the_black_code_style/index.rst) for more details.
+
+## Why is my file not formatted?
+
+Most likely because it is ignored in `.gitignore` or excluded with configuration. See
+[file collection and discovery](usage_and_configuration/file_collection_and_discovery.md)
+for details.
+
+## Why is my Jupyter Notebook cell not formatted?
+
+_Black_ is timid about formatting Jupyter Notebooks. Cells containing any of the
+following will not be formatted:
+
+- automagics (e.g. `pip install black`)
+- multiline magics, e.g.:
+
+  ```python
+  %timeit f(1, \
+          2, \
+          3)
+  ```
+
+- code which `IPython`'s `TransformerManager` would transform magics into, e.g.:
+
+  ```python
+  get_ipython().system('ls')
+  ```
+
+- invalid syntax, as it can't be safely distinguished from automagics in the absence of
+  a running `IPython` kernel.
+
+## Why are Flake8's E203 and W503 violated?
+
+Because they go against PEP 8. E203 falsely triggers on list
+[slices](the_black_code_style/current_style.md#slices), and adhering to W503 hinders
+readability because operators are misaligned. Disable W503 and enable the
+disabled-by-default counterpart W504. E203 should be disabled while changes are still
+[discussed](https://github.com/PyCQA/pycodestyle/issues/373).
+
+## Does Black support Python 2?
+
+For formatting, yes! [Install](getting_started.md#installation) with the `python2` extra
+to format Python 2 files too! There are no current plans to drop support, but most
+likely it is bound to happen. Sometime. Eventually. In terms of running _Black_ though,
+Python 3.6 or newer is required.
+
+## Why does my linter or typechecker complain after I format my code?
+
+Some linters and other tools use magical comments (e.g., `# noqa`, `# type: ignore`) to
+influence their behavior. While Black does its best to recognize such comments and leave
+them in the right place, this detection is not and cannot be perfect. Therefore, you'll
+sometimes have to manually move these comments to the right place after you format your
+codebase with _Black_.
diff --git a/.vim/bundle/black/docs/getting_started.md b/.vim/bundle/black/docs/getting_started.md
new file mode 100644 (file)
index 0000000..c79dc60
--- /dev/null
@@ -0,0 +1,50 @@
+# Getting Started
+
+New to _Black_? Don't worry, you've found the perfect place to get started!
+
+## Do you like the _Black_ code style?
+
+Before using _Black_ on some of your code, it might be a good idea to first understand
+how _Black_ will format your code. _Black_ isn't for everyone and you may find something
+that is a dealbreaker for you personally, which is okay! The current _Black_ code style
+[is described here](./the_black_code_style/current_style.md).
+
+## Try it out online
+
+Also, you can try out _Black_ online for minimal fuss on the
+[Black Playground](https://black.vercel.app) generously created by José Padilla.
+
+## Installation
+
+_Black_ can be installed by running `pip install black`. It requires Python 3.6.2+ to
+run, but can format Python 2 code too. Python 2 support needs the `typed_ast`
+dependency, which be installed with `pip install black[python2]`. If you want to format
+Jupyter Notebooks, install with `pip install black[jupyter]`.
+
+If you can't wait for the latest _hotness_ and want to install from GitHub, use:
+
+`pip install git+git://github.com/psf/black`
+
+## Basic usage
+
+To get started right away with sensible defaults:
+
+```sh
+black {source_file_or_directory}...
+```
+
+You can run _Black_ as a package if running it as a script doesn't work:
+
+```sh
+python -m black {source_file_or_directory}...
+```
+
+## Next steps
+
+Took a look at [the _Black_ code style](./the_black_code_style/current_style.md) and
+tried out _Black_? Fantastic, you're ready for more. Why not explore some more on using
+_Black_ by reading
+[Usage and Configuration: The basics](./usage_and_configuration/the_basics.md).
+Alternatively, you can check out the
+[Introducing _Black_ to your project](./guides/introducing_black_to_your_project.md)
+guide.
diff --git a/.vim/bundle/black/docs/guides/index.rst b/.vim/bundle/black/docs/guides/index.rst
new file mode 100644 (file)
index 0000000..717c5c4
--- /dev/null
@@ -0,0 +1,14 @@
+Guides
+======
+
+.. toctree::
+  :hidden:
+
+  introducing_black_to_your_project
+  using_black_with_other_tools
+
+Wondering how to do something specific? You've found the right place! Listed below
+are topic specific guides available:
+
+- :doc:`introducing_black_to_your_project`
+- :doc:`using_black_with_other_tools`
diff --git a/.vim/bundle/black/docs/guides/introducing_black_to_your_project.md b/.vim/bundle/black/docs/guides/introducing_black_to_your_project.md
new file mode 100644 (file)
index 0000000..71ccf7c
--- /dev/null
@@ -0,0 +1,50 @@
+# Introducing _Black_ to your project
+
+```{note}
+This guide is incomplete. Contributions are welcomed and would be deeply
+appreciated!
+```
+
+## Avoiding ruining git blame
+
+A long-standing argument against moving to automated code formatters like _Black_ is
+that the migration will clutter up the output of `git blame`. This was a valid argument,
+but since Git version 2.23, Git natively supports
+[ignoring revisions in blame](https://git-scm.com/docs/git-blame#Documentation/git-blame.txt---ignore-revltrevgt)
+with the `--ignore-rev` option. You can also pass a file listing the revisions to ignore
+using the `--ignore-revs-file` option. The changes made by the revision will be ignored
+when assigning blame. Lines modified by an ignored revision will be blamed on the
+previous revision that modified those lines.
+
+So when migrating your project's code style to _Black_, reformat everything and commit
+the changes (preferably in one massive commit). Then put the full 40 characters commit
+identifier(s) into a file.
+
+```text
+# Migrate code style to Black
+5b4ab991dede475d393e9d69ec388fd6bd949699
+```
+
+Afterwards, you can pass that file to `git blame` and see clean and meaningful blame
+information.
+
+```console
+$ git blame important.py --ignore-revs-file .git-blame-ignore-revs
+7a1ae265 (John Smith 2019-04-15 15:55:13 -0400 1) def very_important_function(text, file):
+abdfd8b0 (Alice Doe  2019-09-23 11:39:32 -0400 2)     text = text.lstrip()
+7a1ae265 (John Smith 2019-04-15 15:55:13 -0400 3)     with open(file, "r+") as f:
+7a1ae265 (John Smith 2019-04-15 15:55:13 -0400 4)         f.write(formatted)
+```
+
+You can even configure `git` to automatically ignore revisions listed in a file on every
+call to `git blame`.
+
+```console
+$ git config blame.ignoreRevsFile .git-blame-ignore-revs
+```
+
+**The one caveat is that GitHub and GitLab do not yet support ignoring revisions using
+their native UI of blame.** So blame information will be cluttered with a reformatting
+commit on those platforms. (If you'd like this feature, there's an open issue for
+[GitLab](https://gitlab.com/gitlab-org/gitlab/-/issues/31423) and please let GitHub
+know!)
diff --git a/.vim/bundle/black/docs/guides/using_black_with_other_tools.md b/.vim/bundle/black/docs/guides/using_black_with_other_tools.md
new file mode 100644 (file)
index 0000000..0942181
--- /dev/null
@@ -0,0 +1,278 @@
+# Using _Black_ with other tools
+
+## Black compatible configurations
+
+All of Black's changes are harmless (or at least, they should be), but a few do conflict
+against other tools. It is not uncommon to be using other tools alongside _Black_ like
+linters and type checkers. Some of them need a bit of tweaking to resolve the conflicts.
+Listed below are _Black_ compatible configurations in various formats for the common
+tools out there.
+
+**Please note** that _Black_ only supports the TOML file format for its configuration
+(e.g. `pyproject.toml`). The provided examples are to only configure their corresponding
+tools, using **their** supported file formats.
+
+Compatible configuration files can be
+[found here](https://github.com/psf/black/blob/main/docs/compatible_configs/).
+
+### isort
+
+[isort](https://pypi.org/p/isort/) helps to sort and format imports in your Python code.
+_Black_ also formats imports, but in a different way from isort's defaults which leads
+to conflicting changes.
+
+#### Profile
+
+Since version 5.0.0, isort supports
+[profiles](https://pycqa.github.io/isort/docs/configuration/profiles.html) to allow easy
+interoperability with common code styles. You can set the black profile in any of the
+[config files](https://pycqa.github.io/isort/docs/configuration/config_files.html)
+supported by isort. Below, an example for `pyproject.toml`:
+
+```toml
+[tool.isort]
+profile = "black"
+```
+
+#### Custom Configuration
+
+If you're using an isort version that is older than 5.0.0 or you have some custom
+configuration for _Black_, you can tweak your isort configuration to make it compatible
+with _Black_. Below, an example for `.isort.cfg`:
+
+```
+multi_line_output = 3
+include_trailing_comma = True
+force_grid_wrap = 0
+use_parentheses = True
+ensure_newline_before_comments = True
+line_length = 88
+```
+
+#### Why those options above?
+
+_Black_ wraps imports that surpass `line-length` by moving identifiers into their own
+indented line. If that still doesn't fit the bill, it will put all of them in separate
+lines and put a trailing comma. A more detailed explanation of this behaviour can be
+[found here](../the_black_code_style/current_style.md#how-black-wraps-lines).
+
+isort's default mode of wrapping imports that extend past the `line_length` limit is
+"Grid".
+
+```py3
+from third_party import (lib1, lib2, lib3,
+                         lib4, lib5, ...)
+```
+
+This style is incompatible with _Black_, but isort can be configured to use a different
+wrapping mode called "Vertical Hanging Indent" which looks like this:
+
+```py3
+from third_party import (
+    lib1,
+    lib2,
+    lib3,
+    lib4,
+)
+```
+
+This style is _Black_ compatible and can be achieved by `multi-line-output = 3`. Also,
+as mentioned above, when wrapping long imports _Black_ puts a trailing comma and uses
+parentheses. isort should follow the same behaviour and passing the options
+`include_trailing_comma = True` and `use_parentheses = True` configures that.
+
+The option `force_grid_wrap = 0` is just to tell isort to only wrap imports that surpass
+the `line_length` limit.
+
+Finally, isort should be told to wrap imports when they surpass _Black_'s default limit
+of 88 characters via `line_length = 88` as well as
+`ensure_newline_before_comments = True` to ensure spacing import sections with comments
+works the same as with _Black_.
+
+**Please note** `ensure_newline_before_comments = True` only works since isort >= 5 but
+does not break older versions so you can keep it if you are running previous versions.
+
+#### Formats
+
+<details>
+<summary>.isort.cfg</summary>
+
+```cfg
+[settings]
+profile = black
+```
+
+</details>
+
+<details>
+<summary>setup.cfg</summary>
+
+```cfg
+[isort]
+profile = black
+```
+
+</details>
+
+<details>
+<summary>pyproject.toml</summary>
+
+```toml
+[tool.isort]
+profile = 'black'
+```
+
+</details>
+
+<details>
+<summary>.editorconfig</summary>
+
+```ini
+[*.py]
+profile = black
+```
+
+</details>
+
+### Flake8
+
+[Flake8](https://pypi.org/p/flake8/) is a code linter. It warns you of syntax errors,
+possible bugs, stylistic errors, etc. For the most part, Flake8 follows
+[PEP 8](https://www.python.org/dev/peps/pep-0008/) when warning about stylistic errors.
+There are a few deviations that cause incompatibilities with _Black_.
+
+#### Configuration
+
+```
+max-line-length = 88
+extend-ignore = E203
+```
+
+#### Why those options above?
+
+In some cases, as determined by PEP 8, _Black_ will enforce an equal amount of
+whitespace around slice operators. Due to this, Flake8 will raise
+`E203 whitespace before ':'` warnings. Since this warning is not PEP 8 compliant, Flake8
+should be configured to ignore it via `extend-ignore = E203`.
+
+When breaking a line, _Black_ will break it before a binary operator. This is compliant
+with PEP 8 as of
+[April 2016](https://github.com/python/peps/commit/c59c4376ad233a62ca4b3a6060c81368bd21e85b#diff-64ec08cc46db7540f18f2af46037f599).
+There's a disabled-by-default warning in Flake8 which goes against this PEP 8
+recommendation called `W503 line break before binary operator`. It should not be enabled
+in your configuration.
+
+Also, as like with isort, flake8 should be configured to allow lines up to the length
+limit of `88`, _Black_'s default. This explains `max-line-length = 88`.
+
+#### Formats
+
+<details>
+<summary>.flake8</summary>
+
+```ini
+[flake8]
+max-line-length = 88
+extend-ignore = E203
+```
+
+</details>
+
+<details>
+<summary>setup.cfg</summary>
+
+```cfg
+[flake8]
+max-line-length = 88
+extend-ignore = E203
+```
+
+</details>
+
+<details>
+<summary>tox.ini</summary>
+
+```ini
+[flake8]
+max-line-length = 88
+extend-ignore = E203
+```
+
+</details>
+
+### Pylint
+
+[Pylint](https://pypi.org/p/pylint/) is also a code linter like Flake8. It has the same
+checks as flake8 and more. In particular, it has more formatting checks regarding style
+conventions like variable naming. With so many checks, Pylint is bound to have some
+mixed feelings about _Black_'s formatting style.
+
+#### Configuration
+
+```
+disable = C0330, C0326
+max-line-length = 88
+```
+
+#### Why those options above?
+
+When _Black_ is folding very long expressions, the closing brackets will
+[be dedented](../the_black_code_style/current_style.md#how-black-wraps-lines).
+
+```py3
+ImportantClass.important_method(
+    exc, limit, lookup_lines, capture_locals, callback
+)
+```
+
+Although this style is PEP 8 compliant, Pylint will raise
+`C0330: Wrong hanging indentation before block (add 4 spaces)` warnings. Since _Black_
+isn't configurable on this style, Pylint should be told to ignore these warnings via
+`disable = C0330`.
+
+Also, since _Black_ deals with whitespace around operators and brackets, Pylint's
+warning `C0326: Bad whitespace` should be disabled using `disable = C0326`.
+
+And as usual, Pylint should be configured to only complain about lines that surpass `88`
+characters via `max-line-length = 88`.
+
+#### Formats
+
+<details>
+<summary>pylintrc</summary>
+
+```ini
+[MESSAGES CONTROL]
+disable = C0330, C0326
+
+[format]
+max-line-length = 88
+```
+
+</details>
+
+<details>
+<summary>setup.cfg</summary>
+
+```cfg
+[pylint]
+max-line-length = 88
+
+[pylint.messages_control]
+disable = C0330, C0326
+```
+
+</details>
+
+<details>
+<summary>pyproject.toml</summary>
+
+```toml
+[tool.pylint.messages_control]
+disable = "C0330, C0326"
+
+[tool.pylint.format]
+max-line-length = "88"
+```
+
+</details>
diff --git a/.vim/bundle/black/docs/index.rst b/.vim/bundle/black/docs/index.rst
new file mode 100644 (file)
index 0000000..1515697
--- /dev/null
@@ -0,0 +1,128 @@
+.. black documentation master file, created by
+   sphinx-quickstart on Fri Mar 23 10:53:30 2018.
+
+The uncompromising code formatter
+=================================
+
+By using *Black*, you agree to cede control over minutiae of
+hand-formatting. In return, *Black* gives you speed, determinism, and
+freedom from `pycodestyle` nagging about formatting. You will save time
+and mental energy for more important matters.
+
+*Black* makes code review faster by producing the smallest diffs
+possible. Blackened code looks the same regardless of the project
+you're reading. Formatting becomes transparent after a while and you
+can focus on the content instead.
+
+Try it out now using the `Black Playground <https://black.vercel.app>`_.
+
+.. admonition:: Note - this is a beta product
+
+   *Black* is already `successfully used <https://github.com/psf/black#used-by>`_ by
+   many projects, small and big. *Black* has a comprehensive test suite, with efficient
+   parallel tests, our own auto  formatting and parallel Continuous Integration runner.
+   However, *Black* is still beta. Things will probably be wonky for a while. This is
+   made explicit by the "Beta" trove classifier, as well as by the "b" in the version
+   number. What this means for you is that **until the formatter becomes stable, you
+   should expect some formatting to change in the future**. That being said, no drastic
+   stylistic changes are planned, mostly responses to bug reports.
+
+   Also, as a safety measure which slows down processing, *Black* will check that the
+   reformatted code still produces a valid AST that is effectively equivalent to the
+   original (see the
+   `Pragmatism <./the_black_code_style/current_style.html#pragmatism>`_
+   section for details). If you're feeling confident, use ``--fast``.
+
+.. note::
+   :doc:`Black is licensed under the MIT license <license>`.
+
+Testimonials
+------------
+
+**Mike Bayer**, author of `SQLAlchemy <https://www.sqlalchemy.org/>`_:
+
+   *I can't think of any single tool in my entire programming career that has given me a
+   bigger productivity increase by its introduction. I can now do refactorings in about
+   1% of the keystrokes that it would have taken me previously when we had no way for
+   code to format itself.*
+
+**Dusty Phillips**, `writer <https://smile.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=dusty+phillips>`_:
+
+   *Black is opinionated so you don't have to be.*
+
+**Hynek Schlawack**, creator of `attrs <https://www.attrs.org/>`_, core
+developer of Twisted and CPython:
+
+   *An auto-formatter that doesn't suck is all I want for Xmas!*
+
+**Carl Meyer**, `Django <https://www.djangoproject.com/>`_ core developer:
+
+   *At least the name is good.*
+
+**Kenneth Reitz**, creator of `requests <http://python-requests.org/>`_
+and `pipenv <https://docs.pipenv.org/>`_:
+
+   *This vastly improves the formatting of our code. Thanks a ton!*
+
+
+Show your style
+---------------
+
+Use the badge in your project's README.md:
+
+.. code-block:: md
+
+   [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+
+Using the badge in README.rst:
+
+.. code-block:: rst
+
+   .. image:: https://img.shields.io/badge/code%20style-black-000000.svg
+      :target: https://github.com/psf/black
+
+Looks like this:
+
+.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
+   :target: https://github.com/psf/black
+
+Contents
+--------
+
+.. toctree::
+   :maxdepth: 3
+   :includehidden:
+
+   the_black_code_style/index
+
+.. toctree::
+   :maxdepth: 3
+   :includehidden:
+
+   getting_started
+   usage_and_configuration/index
+   integrations/index
+   guides/index
+   faq
+
+.. toctree::
+   :maxdepth: 3
+   :includehidden:
+
+   contributing/index
+   change_log
+   authors
+
+.. toctree::
+   :hidden:
+
+   GitHub ↪ <https://github.com/psf/black>
+   PyPI ↪ <https://pypi.org/project/black>
+   Chat ↪ <https://discord.gg/RtVdv86PrH>
+
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`search`
diff --git a/.vim/bundle/black/docs/integrations/editors.md b/.vim/bundle/black/docs/integrations/editors.md
new file mode 100644 (file)
index 0000000..d3be7c0
--- /dev/null
@@ -0,0 +1,324 @@
+# Editor integration
+
+## Emacs
+
+Options include the following:
+
+- [wbolster/emacs-python-black](https://github.com/wbolster/emacs-python-black)
+- [proofit404/blacken](https://github.com/pythonic-emacs/blacken)
+- [Elpy](https://github.com/jorgenschaefer/elpy).
+
+## PyCharm/IntelliJ IDEA
+
+1. Install `black`.
+
+   ```console
+   $ pip install black
+   ```
+
+1. Locate your `black` installation folder.
+
+   On macOS / Linux / BSD:
+
+   ```console
+   $ which black
+   /usr/local/bin/black  # possible location
+   ```
+
+   On Windows:
+
+   ```console
+   $ where black
+   %LocalAppData%\Programs\Python\Python36-32\Scripts\black.exe  # possible location
+   ```
+
+   Note that if you are using a virtual environment detected by PyCharm, this is an
+   unneeded step. In this case the path to `black` is `$PyInterpreterDirectory$/black`.
+
+1. Open External tools in PyCharm/IntelliJ IDEA
+
+   On macOS:
+
+   `PyCharm -> Preferences -> Tools -> External Tools`
+
+   On Windows / Linux / BSD:
+
+   `File -> Settings -> Tools -> External Tools`
+
+1. Click the + icon to add a new external tool with the following values:
+
+   - Name: Black
+   - Description: Black is the uncompromising Python code formatter.
+   - Program: \<install_location_from_step_2>
+   - Arguments: `"$FilePath$"`
+
+1. Format the currently opened file by selecting `Tools -> External Tools -> black`.
+
+   - Alternatively, you can set a keyboard shortcut by navigating to
+     `Preferences or Settings -> Keymap -> External Tools -> External Tools - Black`.
+
+1. Optionally, run _Black_ on every file save:
+
+   1. Make sure you have the
+      [File Watchers](https://plugins.jetbrains.com/plugin/7177-file-watchers) plugin
+      installed.
+   1. Go to `Preferences or Settings -> Tools -> File Watchers` and click `+` to add a
+      new watcher:
+      - Name: Black
+      - File type: Python
+      - Scope: Project Files
+      - Program: \<install_location_from_step_2>
+      - Arguments: `$FilePath$`
+      - Output paths to refresh: `$FilePath$`
+      - Working directory: `$ProjectFileDir$`
+
+   - In Advanced Options
+     - Uncheck "Auto-save edited files to trigger the watcher"
+     - Uncheck "Trigger the watcher on external changes"
+
+## Wing IDE
+
+Wing supports black via the OS Commands tool, as explained in the Wing documentation on
+[pep8 formatting](https://wingware.com/doc/edit/pep8). The detailed procedure is:
+
+1. Install `black`.
+
+   ```console
+   $ pip install black
+   ```
+
+1. Make sure it runs from the command line, e.g.
+
+   ```console
+   $ black --help
+   ```
+
+1. In Wing IDE, activate the **OS Commands** panel and define the command **black** to
+   execute black on the currently selected file:
+
+   - Use the Tools -> OS Commands menu selection
+   - click on **+** in **OS Commands** -> New: Command line..
+     - Title: black
+     - Command Line: black %s
+     - I/O Encoding: Use Default
+     - Key Binding: F1
+     - [x] Raise OS Commands when executed
+     - [x] Auto-save files before execution
+     - [x] Line mode
+
+1. Select a file in the editor and press **F1** , or whatever key binding you selected
+   in step 3, to reformat the file.
+
+## Vim
+
+### Official plugin
+
+Commands and shortcuts:
+
+- `:Black` to format the entire file (ranges not supported);
+  - you can optionally pass `target_version=<version>` with the same values as in the
+    command line.
+- `:BlackUpgrade` to upgrade _Black_ inside the virtualenv;
+- `:BlackVersion` to get the current version of _Black_ inside the virtualenv.
+
+Configuration:
+
+- `g:black_fast` (defaults to `0`)
+- `g:black_linelength` (defaults to `88`)
+- `g:black_skip_string_normalization` (defaults to `0`)
+- `g:black_virtualenv` (defaults to `~/.vim/black` or `~/.local/share/nvim/black`)
+- `g:black_quiet` (defaults to `0`)
+
+To install with [vim-plug](https://github.com/junegunn/vim-plug):
+
+```
+Plug 'psf/black', { 'branch': 'stable' }
+```
+
+or with [Vundle](https://github.com/VundleVim/Vundle.vim):
+
+```
+Plugin 'psf/black'
+```
+
+and execute the following in a terminal:
+
+```console
+$ cd ~/.vim/bundle/black
+$ git checkout origin/stable -b stable
+```
+
+or you can copy the plugin files from
+[plugin/black.vim](https://github.com/psf/black/blob/stable/plugin/black.vim) and
+[autoload/black.vim](https://github.com/psf/black/blob/stable/autoload/black.vim).
+
+```
+mkdir -p ~/.vim/pack/python/start/black/plugin
+mkdir -p ~/.vim/pack/python/start/black/autoload
+curl https://raw.githubusercontent.com/psf/black/stable/plugin/black.vim -o ~/.vim/pack/python/start/black/plugin/black.vim
+curl https://raw.githubusercontent.com/psf/black/stable/autoload/black.vim -o ~/.vim/pack/python/start/black/autoload/black.vim
+```
+
+Let me know if this requires any changes to work with Vim 8's builtin `packadd`, or
+Pathogen, and so on.
+
+This plugin **requires Vim 7.0+ built with Python 3.6+ support**. It needs Python 3.6 to
+be able to run _Black_ inside the Vim process which is much faster than calling an
+external command.
+
+On first run, the plugin creates its own virtualenv using the right Python version and
+automatically installs _Black_. You can upgrade it later by calling `:BlackUpgrade` and
+restarting Vim.
+
+If you need to do anything special to make your virtualenv work and install _Black_ (for
+example you want to run a version from main), create a virtualenv manually and point
+`g:black_virtualenv` to it. The plugin will use it.
+
+To run _Black_ on save, add the following line to `.vimrc` or `init.vim`:
+
+```
+autocmd BufWritePre *.py execute ':Black'
+```
+
+To run _Black_ on a key press (e.g. F9 below), add this:
+
+```
+nnoremap <F9> :Black<CR>
+```
+
+**How to get Vim with Python 3.6?** On Ubuntu 17.10 Vim comes with Python 3.6 by
+default. On macOS with Homebrew run: `brew install vim`. When building Vim from source,
+use: `./configure --enable-python3interp=yes`. There's many guides online how to do
+this.
+
+**I get an import error when using _Black_ from a virtual environment**: If you get an
+error message like this:
+
+```text
+Traceback (most recent call last):
+  File "<string>", line 63, in <module>
+  File "/home/gui/.vim/black/lib/python3.7/site-packages/black.py", line 45, in <module>
+    from typed_ast import ast3, ast27
+  File "/home/gui/.vim/black/lib/python3.7/site-packages/typed_ast/ast3.py", line 40, in <module>
+    from typed_ast import _ast3
+ImportError: /home/gui/.vim/black/lib/python3.7/site-packages/typed_ast/_ast3.cpython-37m-x86_64-linux-gnu.so: undefined symbool: PyExc_KeyboardInterrupt
+```
+
+Then you need to install `typed_ast` and `regex` directly from the source code. The
+error happens because `pip` will download [Python wheels](https://pythonwheels.com/) if
+they are available. Python wheels are a new standard of distributing Python packages and
+packages that have Cython and extensions written in C are already compiled, so the
+installation is much more faster. The problem here is that somehow the Python
+environment inside Vim does not match with those already compiled C extensions and these
+kind of errors are the result. Luckily there is an easy fix: installing the packages
+from the source code.
+
+The two packages that cause the problem are:
+
+- [regex](https://pypi.org/project/regex/)
+- [typed-ast](https://pypi.org/project/typed-ast/)
+
+Now remove those two packages:
+
+```console
+$ pip uninstall regex typed-ast -y
+```
+
+And now you can install them with:
+
+```console
+$ pip install --no-binary :all: regex typed-ast
+```
+
+The C extensions will be compiled and now Vim's Python environment will match. Note that
+you need to have the GCC compiler and the Python development files installed (on
+Ubuntu/Debian do `sudo apt-get install build-essential python3-dev`).
+
+If you later want to update _Black_, you should do it like this:
+
+```console
+$ pip install -U black --no-binary regex,typed-ast
+```
+
+### With ALE
+
+1. Install [`ale`](https://github.com/dense-analysis/ale)
+
+1. Install `black`
+
+1. Add this to your vimrc:
+
+   ```vim
+   let g:ale_fixers = {}
+   let g:ale_fixers.python = ['black']
+   ```
+
+## Gedit
+
+gedit is the default text editor of the GNOME, Unix like Operating Systems. Open gedit
+as
+
+```console
+$ gedit <file_name>
+```
+
+1. `Go to edit > preferences > plugins`
+1. Search for `external tools` and activate it.
+1. In `Tools menu -> Manage external tools`
+1. Add a new tool using `+` button.
+1. Copy the below content to the code window.
+
+```console
+#!/bin/bash
+Name=$GEDIT_CURRENT_DOCUMENT_NAME
+black $Name
+```
+
+- Set a keyboard shortcut if you like, Ex. `ctrl-B`
+- Save: `Nothing`
+- Input: `Nothing`
+- Output: `Display in bottom pane` if you like.
+- Change the name of the tool if you like.
+
+Use your keyboard shortcut or `Tools -> External Tools` to use your new tool. When you
+close and reopen your File, _Black_ will be done with its job.
+
+## Visual Studio Code
+
+Use the
+[Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
+([instructions](https://code.visualstudio.com/docs/python/editing#_formatting)).
+
+## SublimeText 3
+
+Use [sublack plugin](https://github.com/jgirardet/sublack).
+
+## Python LSP Server
+
+If your editor supports the [Language Server Protocol](https://langserver.org/) (Atom,
+Sublime Text, Visual Studio Code and many more), you can use the
+[Python LSP Server](https://github.com/python-lsp/python-lsp-server) with the
+[python-lsp-black](https://github.com/python-lsp/python-lsp-black) plugin.
+
+## Atom/Nuclide
+
+Use [python-black](https://atom.io/packages/python-black) or
+[formatters-python](https://atom.io/packages/formatters-python).
+
+## Gradle (the build tool)
+
+Use the [Spotless](https://github.com/diffplug/spotless/tree/main/plugin-gradle) plugin.
+
+## Kakoune
+
+Add the following hook to your kakrc, then run _Black_ with `:format`.
+
+```
+hook global WinSetOption filetype=python %{
+    set-option window formatcmd 'black -q  -'
+}
+```
+
+## Thonny
+
+Use [Thonny-black-code-format](https://github.com/Franccisco/thonny-black-code-format).
diff --git a/.vim/bundle/black/docs/integrations/github_actions.md b/.vim/bundle/black/docs/integrations/github_actions.md
new file mode 100644 (file)
index 0000000..e866a3c
--- /dev/null
@@ -0,0 +1,50 @@
+# GitHub Actions integration
+
+You can use _Black_ within a GitHub Actions workflow without setting your own Python
+environment. Great for enforcing that your code matches the _Black_ code style.
+
+## Compatibility
+
+This action is known to support all GitHub-hosted runner OSes. In addition, only
+published versions of _Black_ are supported (i.e. whatever is available on PyPI).
+
+Finally, this action installs _Black_ with both the `colorama` and `python2` extras so
+the `--color` flag and formatting Python 2 code are supported.
+
+## Usage
+
+Create a file named `.github/workflows/black.yml` inside your repository with:
+
+```yaml
+name: Lint
+
+on: [push, pull_request]
+
+jobs:
+  lint:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - uses: psf/black@stable
+```
+
+We recommend the use of the `@stable` tag, but per version tags also exist if you prefer
+that. Note that the action's version you select is independent of the version of _Black_
+the action will use.
+
+The version of _Black_ the action will use can be configured via `version`. The action
+defaults to the latest release available on PyPI. Only versions available from PyPI are
+supported, so no commit SHAs or branch names.
+
+You can also configure the arguments passed to _Black_ via `options` (defaults to
+`'--check --diff'`) and `src` (default is `'.'`)
+
+Here's an example configuration:
+
+```yaml
+- uses: psf/black@stable
+  with:
+    options: "--check --verbose"
+    src: "./src"
+    version: "21.5b1"
+```
diff --git a/.vim/bundle/black/docs/integrations/index.rst b/.vim/bundle/black/docs/integrations/index.rst
new file mode 100644 (file)
index 0000000..ed62ebc
--- /dev/null
@@ -0,0 +1,28 @@
+Integrations
+============
+
+.. toctree::
+    :hidden:
+
+    editors
+    github_actions
+    source_version_control
+
+*Black* can be integrated into many environments, providing a better and smoother experience. Documentation for integrating *Black* with a tool can be found for the
+following areas:
+
+- :doc:`Editor / IDE <./editors>`
+- :doc:`GitHub Actions <./github_actions>`
+- :doc:`Source version control <./source_version_control>`
+
+Editors and tools not listed will require external contributions.
+
+Patches welcome! ✨ 🍰 ✨
+
+Any tool can pipe code through *Black* using its stdio mode (just
+`use \`-\` as the file name <https://www.tldp.org/LDP/abs/html/special-chars.html#DASHREF2>`_).
+The formatted code will be returned on stdout (unless ``--check`` was passed). *Black*
+will still emit messages on stderr but that shouldn't affect your use case.
+
+This can be used for example with PyCharm's or IntelliJ's
+`File Watchers <https://www.jetbrains.com/help/pycharm/file-watchers.html>`_.
diff --git a/.vim/bundle/black/docs/integrations/source_version_control.md b/.vim/bundle/black/docs/integrations/source_version_control.md
new file mode 100644 (file)
index 0000000..6a1aa36
--- /dev/null
@@ -0,0 +1,31 @@
+# Version control integration
+
+Use [pre-commit](https://pre-commit.com/). Once you
+[have it installed](https://pre-commit.com/#install), add this to the
+`.pre-commit-config.yaml` in your repository:
+
+```yaml
+repos:
+  - repo: https://github.com/psf/black
+    rev: 21.9b0
+    hooks:
+      - id: black
+        # It is recommended to specify the latest version of Python
+        # supported by your project here, or alternatively use
+        # pre-commit's default_language_version, see
+        # https://pre-commit.com/#top_level-default_language_version
+        language_version: python3.9
+```
+
+Feel free to switch out the `rev` value to something else, like another
+[tag/version][black-tags] or even a specific commit. Although we discourage the use of
+branches or other mutable refs since the hook [won't auto update as you may
+expect][pre-commit-mutable-rev].
+
+If you want support for Jupyter Notebooks as well, then replace `id: black` with
+`id: black-jupyter` (though note that it's only available from version `21.8b0`
+onwards).
+
+[black-tags]: https://github.com/psf/black/tags
+[pre-commit-mutable-rev]:
+  https://pre-commit.com/#using-the-latest-version-for-a-repository
diff --git a/.vim/bundle/black/docs/license.rst b/.vim/bundle/black/docs/license.rst
new file mode 100644 (file)
index 0000000..2dc20a2
--- /dev/null
@@ -0,0 +1,6 @@
+:orphan:
+
+License
+=======
+
+.. include:: ../LICENSE
diff --git a/.vim/bundle/black/docs/make.bat b/.vim/bundle/black/docs/make.bat
new file mode 100644 (file)
index 0000000..eecd650
--- /dev/null
@@ -0,0 +1,36 @@
+@ECHO OFF
+
+pushd %~dp0
+
+REM Command file for Sphinx documentation
+
+if "%SPHINXBUILD%" == "" (
+       set SPHINXBUILD=sphinx-build
+)
+set SOURCEDIR=.
+set BUILDDIR=_build
+set SPHINXPROJ=black
+
+if "%1" == "" goto help
+
+%SPHINXBUILD% >NUL 2>NUL
+if errorlevel 9009 (
+       echo.
+       echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
+       echo.installed, then set the SPHINXBUILD environment variable to point
+       echo.to the full path of the 'sphinx-build' executable. Alternatively you
+       echo.may add the Sphinx directory to PATH.
+       echo.
+       echo.If you don't have Sphinx installed, grab it from
+       echo.http://sphinx-doc.org/
+       exit /b 1
+)
+
+%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
+goto end
+
+:help
+%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
+
+:end
+popd
diff --git a/.vim/bundle/black/docs/requirements.txt b/.vim/bundle/black/docs/requirements.txt
new file mode 100644 (file)
index 0000000..4c5b700
--- /dev/null
@@ -0,0 +1,6 @@
+# Used by ReadTheDocs; pinned requirements for stability.
+
+myst-parser==0.15.1
+Sphinx==4.1.2
+sphinxcontrib-programoutput==0.17
+sphinx_copybutton==0.4.0
diff --git a/.vim/bundle/black/docs/the_black_code_style/current_style.md b/.vim/bundle/black/docs/the_black_code_style/current_style.md
new file mode 100644 (file)
index 0000000..b9ab350
--- /dev/null
@@ -0,0 +1,468 @@
+# The _Black_ code style
+
+## Code style
+
+_Black_ reformats entire files in place. Style configuration options are deliberately
+limited and rarely added. It doesn't take previous formatting into account, except for
+the magic trailing comma and preserving newlines. It doesn't reformat blocks that start
+with `# fmt: off` and end with `# fmt: on`, or lines that ends with `# fmt: skip`.
+`# fmt: on/off` have to be on the same level of indentation. It also recognizes
+[YAPF](https://github.com/google/yapf)'s block comments to the same effect, as a
+courtesy for straddling code.
+
+### How _Black_ wraps lines
+
+_Black_ ignores previous formatting and applies uniform horizontal and vertical
+whitespace to your code. The rules for horizontal whitespace can be summarized as: do
+whatever makes `pycodestyle` happy. The coding style used by _Black_ can be viewed as a
+strict subset of PEP 8.
+
+As for vertical whitespace, _Black_ tries to render one full expression or simple
+statement per line. If this fits the allotted line length, great.
+
+```py3
+# in:
+
+j = [1,
+     2,
+     3
+]
+
+# out:
+
+j = [1, 2, 3]
+```
+
+If not, _Black_ will look at the contents of the first outer matching brackets and put
+that in a separate indented line.
+
+```py3
+# in:
+
+ImportantClass.important_method(exc, limit, lookup_lines, capture_locals, extra_argument)
+
+# out:
+
+ImportantClass.important_method(
+    exc, limit, lookup_lines, capture_locals, extra_argument
+)
+```
+
+If that still doesn't fit the bill, it will decompose the internal expression further
+using the same rule, indenting matching brackets every time. If the contents of the
+matching brackets pair are comma-separated (like an argument list, or a dict literal,
+and so on) then _Black_ will first try to keep them on the same line with the matching
+brackets. If that doesn't work, it will put all of them in separate lines.
+
+```py3
+# in:
+
+def very_important_function(template: str, *variables, file: os.PathLike, engine: str, header: bool = True, debug: bool = False):
+    """Applies `variables` to the `template` and writes to `file`."""
+    with open(file, 'w') as f:
+        ...
+
+# out:
+
+def very_important_function(
+    template: str,
+    *variables,
+    file: os.PathLike,
+    engine: str,
+    header: bool = True,
+    debug: bool = False,
+):
+    """Applies `variables` to the `template` and writes to `file`."""
+    with open(file, "w") as f:
+        ...
+```
+
+(labels/why-no-backslashes)=
+
+_Black_ prefers parentheses over backslashes, and will remove backslashes if found.
+
+```py3
+# in:
+
+if some_short_rule1 \
+  and some_short_rule2:
+      ...
+
+# out:
+
+if some_short_rule1 and some_short_rule2:
+  ...
+
+
+# in:
+
+if some_long_rule1 \
+  and some_long_rule2:
+    ...
+
+# out:
+
+if (
+    some_long_rule1
+    and some_long_rule2
+):
+    ...
+
+```
+
+Backslashes and multiline strings are one of the two places in the Python grammar that
+break significant indentation. You never need backslashes, they are used to force the
+grammar to accept breaks that would otherwise be parse errors. That makes them confusing
+to look at and brittle to modify. This is why _Black_ always gets rid of them.
+
+If you're reaching for backslashes, that's a clear signal that you can do better if you
+slightly refactor your code. I hope some of the examples above show you that there are
+many ways in which you can do it.
+
+You might have noticed that closing brackets are always dedented and that a trailing
+comma is always added. Such formatting produces smaller diffs; when you add or remove an
+element, it's always just one line. Also, having the closing bracket dedented provides a
+clear delimiter between two distinct sections of the code that otherwise share the same
+indentation level (like the arguments list and the docstring in the example above).
+
+If a data structure literal (tuple, list, set, dict) or a line of "from" imports cannot
+fit in the allotted length, it's always split into one element per line. This minimizes
+diffs as well as enables readers of code to find which commit introduced a particular
+entry. This also makes _Black_ compatible with
+[isort](../guides/using_black_with_other_tools.md#isort) with the ready-made `black`
+profile or manual configuration.
+
+### Line length
+
+You probably noticed the peculiar default line length. _Black_ defaults to 88 characters
+per line, which happens to be 10% over 80. This number was found to produce
+significantly shorter files than sticking with 80 (the most popular), or even 79 (used
+by the standard library). In general,
+[90-ish seems like the wise choice](https://youtu.be/wf-BqAjZb8M?t=260).
+
+If you're paid by the line of code you write, you can pass `--line-length` with a lower
+number. _Black_ will try to respect that. However, sometimes it won't be able to without
+breaking other rules. In those rare cases, auto-formatted code will exceed your allotted
+limit.
+
+You can also increase it, but remember that people with sight disabilities find it
+harder to work with line lengths exceeding 100 characters. It also adversely affects
+side-by-side diff review on typical screen resolutions. Long lines also make it harder
+to present code neatly in documentation or talk slides.
+
+If you're using Flake8, you can bump `max-line-length` to 88 and mostly forget about it.
+However, it's better if you use [Bugbear](https://github.com/PyCQA/flake8-bugbear)'s
+B950 warning instead of E501, and bump the max line length to 88 (or the `--line-length`
+you used for black), which will align more with black's _"try to respect
+`--line-length`, but don't become crazy if you can't"_. You'd do it like this:
+
+```ini
+[flake8]
+max-line-length = 88
+...
+select = C,E,F,W,B,B950
+extend-ignore = E203, E501
+```
+
+Explanation of why E203 is disabled can be found further in this documentation. And if
+you're curious about the reasoning behind B950,
+[Bugbear's documentation](https://github.com/PyCQA/flake8-bugbear#opinionated-warnings)
+explains it. The tl;dr is "it's like highway speed limits, we won't bother you if you
+overdo it by a few km/h".
+
+**If you're looking for a minimal, black-compatible flake8 configuration:**
+
+```ini
+[flake8]
+max-line-length = 88
+extend-ignore = E203
+```
+
+### Empty lines
+
+_Black_ avoids spurious vertical whitespace. This is in the spirit of PEP 8 which says
+that in-function vertical whitespace should only be used sparingly.
+
+_Black_ will allow single empty lines inside functions, and single and double empty
+lines on module level left by the original editors, except when they're within
+parenthesized expressions. Since such expressions are always reformatted to fit minimal
+space, this whitespace is lost.
+
+It will also insert proper spacing before and after function definitions. It's one line
+before and after inner functions and two lines before and after module-level functions
+and classes. _Black_ will not put empty lines between function/class definitions and
+standalone comments that immediately precede the given function/class.
+
+_Black_ will enforce single empty lines between a class-level docstring and the first
+following field or method. This conforms to
+[PEP 257](https://www.python.org/dev/peps/pep-0257/#multi-line-docstrings).
+
+_Black_ won't insert empty lines after function docstrings unless that empty line is
+required due to an inner function starting immediately after.
+
+### Comments
+
+_Black_ does not format comment contents, but it enforces two spaces between code and a
+comment on the same line, and a space before the comment text begins. Some types of
+comments that require specific spacing rules are respected: doc comments (`#: comment`),
+section comments with long runs of hashes, and Spyder cells. Non-breaking spaces after
+hashes are also preserved. Comments may sometimes be moved because of formatting
+changes, which can break tools that assign special meaning to them. See
+[AST before and after formatting](#ast-before-and-after-formatting) for more discussion.
+
+### Trailing commas
+
+_Black_ will add trailing commas to expressions that are split by comma where each
+element is on its own line. This includes function signatures.
+
+One exception to adding trailing commas is function signatures containing `*`, `*args`,
+or `**kwargs`. In this case a trailing comma is only safe to use on Python 3.6. _Black_
+will detect if your file is already 3.6+ only and use trailing commas in this situation.
+If you wonder how it knows, it looks for f-strings and existing use of trailing commas
+in function signatures that have stars in them. In other words, if you'd like a trailing
+comma in this situation and _Black_ didn't recognize it was safe to do so, put it there
+manually and _Black_ will keep it.
+
+A pre-existing trailing comma informs _Black_ to always explode contents of the current
+bracket pair into one item per line. Read more about this in the
+[Pragmatism](#pragmatism) section below.
+
+### Strings
+
+_Black_ prefers double quotes (`"` and `"""`) over single quotes (`'` and `'''`). It
+will replace the latter with the former as long as it does not result in more backslash
+escapes than before.
+
+_Black_ also standardizes string prefixes, making them always lowercase. On top of that,
+if your code is already Python 3.6+ only or it's using the `unicode_literals` future
+import, _Black_ will remove `u` from the string prefix as it is meaningless in those
+scenarios.
+
+The main reason to standardize on a single form of quotes is aesthetics. Having one kind
+of quotes everywhere reduces reader distraction. It will also enable a future version of
+_Black_ to merge consecutive string literals that ended up on the same line (see
+[#26](https://github.com/psf/black/issues/26) for details).
+
+Why settle on double quotes? They anticipate apostrophes in English text. They match the
+docstring standard described in
+[PEP 257](https://www.python.org/dev/peps/pep-0257/#what-is-a-docstring). An empty
+string in double quotes (`""`) is impossible to confuse with a one double-quote
+regardless of fonts and syntax highlighting used. On top of this, double quotes for
+strings are consistent with C which Python interacts a lot with.
+
+On certain keyboard layouts like US English, typing single quotes is a bit easier than
+double quotes. The latter requires use of the Shift key. My recommendation here is to
+keep using whatever is faster to type and let _Black_ handle the transformation.
+
+If you are adopting _Black_ in a large project with pre-existing string conventions
+(like the popular
+["single quotes for data, double quotes for human-readable strings"](https://stackoverflow.com/a/56190)),
+you can pass `--skip-string-normalization` on the command line. This is meant as an
+adoption helper, avoid using this for new projects.
+
+(labels/experimental-string)=
+
+As an experimental option (can be enabled by `--experimental-string-processing`),
+_Black_ splits long strings (using parentheses where appropriate) and merges short ones.
+When split, parts of f-strings that don't need formatting are converted to plain
+strings. User-made splits are respected when they do not exceed the line length limit.
+Line continuation backslashes are converted into parenthesized strings. Unnecessary
+parentheses are stripped. Because the functionality is experimental, feedback and issue
+reports are highly encouraged!
+
+_Black_ also processes docstrings. Firstly the indentation of docstrings is corrected
+for both quotations and the text within, although relative indentation in the text is
+preserved. Superfluous trailing whitespace on each line and unnecessary new lines at the
+end of the docstring are removed. All leading tabs are converted to spaces, but tabs
+inside text are preserved. Whitespace leading and trailing one-line docstrings is
+removed.
+
+### Numeric literals
+
+_Black_ standardizes most numeric literals to use lowercase letters for the syntactic
+parts and uppercase letters for the digits themselves: `0xAB` instead of `0XAB` and
+`1e10` instead of `1E10`. Python 2 long literals are styled as `2L` instead of `2l` to
+avoid confusion between `l` and `1`.
+
+### Line breaks & binary operators
+
+_Black_ will break a line before a binary operator when splitting a block of code over
+multiple lines. This is so that _Black_ is compliant with the recent changes in the
+[PEP 8](https://www.python.org/dev/peps/pep-0008/#should-a-line-break-before-or-after-a-binary-operator)
+style guide, which emphasizes that this approach improves readability.
+
+### Slices
+
+PEP 8
+[recommends](https://www.python.org/dev/peps/pep-0008/#whitespace-in-expressions-and-statements)
+to treat `:` in slices as a binary operator with the lowest priority, and to leave an
+equal amount of space on either side, except if a parameter is omitted (e.g.
+`ham[1 + 1 :]`). It recommends no spaces around `:` operators for "simple expressions"
+(`ham[lower:upper]`), and extra space for "complex expressions"
+(`ham[lower : upper + offset]`). _Black_ treats anything more than variable names as
+"complex" (`ham[lower : upper + 1]`). It also states that for extended slices, both `:`
+operators have to have the same amount of spacing, except if a parameter is omitted
+(`ham[1 + 1 ::]`). _Black_ enforces these rules consistently.
+
+This behaviour may raise `E203 whitespace before ':'` warnings in style guide
+enforcement tools like Flake8. Since `E203` is not PEP 8 compliant, you should tell
+Flake8 to ignore these warnings.
+
+### Parentheses
+
+Some parentheses are optional in the Python grammar. Any expression can be wrapped in a
+pair of parentheses to form an atom. There are a few interesting cases:
+
+- `if (...):`
+- `while (...):`
+- `for (...) in (...):`
+- `assert (...), (...)`
+- `from X import (...)`
+- assignments like:
+  - `target = (...)`
+  - `target: type = (...)`
+  - `some, *un, packing = (...)`
+  - `augmented += (...)`
+
+In those cases, parentheses are removed when the entire statement fits in one line, or
+if the inner expression doesn't have any delimiters to further split on. If there is
+only a single delimiter and the expression starts or ends with a bracket, the
+parentheses can also be successfully omitted since the existing bracket pair will
+organize the expression neatly anyway. Otherwise, the parentheses are added.
+
+Please note that _Black_ does not add or remove any additional nested parentheses that
+you might want to have for clarity or further code organization. For example those
+parentheses are not going to be removed:
+
+```py3
+return not (this or that)
+decision = (maybe.this() and values > 0) or (maybe.that() and values < 0)
+```
+
+### Call chains
+
+Some popular APIs, like ORMs, use call chaining. This API style is known as a
+[fluent interface](https://en.wikipedia.org/wiki/Fluent_interface). _Black_ formats
+those by treating dots that follow a call or an indexing operation like a very low
+priority delimiter. It's easier to show the behavior than to explain it. Look at the
+example:
+
+```py3
+def example(session):
+    result = (
+        session.query(models.Customer.id)
+        .filter(
+            models.Customer.account_id == account_id,
+            models.Customer.email == email_address,
+        )
+        .order_by(models.Customer.id.asc())
+        .all()
+    )
+```
+
+### Typing stub files
+
+PEP 484 describes the syntax for type hints in Python. One of the use cases for typing
+is providing type annotations for modules which cannot contain them directly (they might
+be written in C, or they might be third-party, or their implementation may be overly
+dynamic, and so on).
+
+To solve this,
+[stub files with the `.pyi` file extension](https://www.python.org/dev/peps/pep-0484/#stub-files)
+can be used to describe typing information for an external module. Those stub files omit
+the implementation of classes and functions they describe, instead they only contain the
+structure of the file (listing globals, functions, and classes with their members). The
+recommended code style for those files is more terse than PEP 8:
+
+- prefer `...` on the same line as the class/function signature;
+- avoid vertical whitespace between consecutive module-level functions, names, or
+  methods and fields within a single class;
+- use a single blank line between top-level class definitions, or none if the classes
+  are very small.
+
+_Black_ enforces the above rules. There are additional guidelines for formatting `.pyi`
+file that are not enforced yet but might be in a future version of the formatter:
+
+- all function bodies should be empty (contain `...` instead of the body);
+- do not use docstrings;
+- prefer `...` over `pass`;
+- for arguments with a default, use `...` instead of the actual default;
+- avoid using string literals in type annotations, stub files support forward references
+  natively (like Python 3.7 code with `from __future__ import annotations`);
+- use variable annotations instead of type comments, even for stubs that target older
+  versions of Python;
+- for arguments that default to `None`, use `Optional[]` explicitly;
+- use `float` instead of `Union[int, float]`.
+
+## Pragmatism
+
+Early versions of _Black_ used to be absolutist in some respects. They took after its
+initial author. This was fine at the time as it made the implementation simpler and
+there were not many users anyway. Not many edge cases were reported. As a mature tool,
+_Black_ does make some exceptions to rules it otherwise holds. This section documents
+what those exceptions are and why this is the case.
+
+### The magic trailing comma
+
+_Black_ in general does not take existing formatting into account.
+
+However, there are cases where you put a short collection or function call in your code
+but you anticipate it will grow in the future.
+
+For example:
+
+```py3
+TRANSLATIONS = {
+    "en_us": "English (US)",
+    "pl_pl": "polski",
+}
+```
+
+Early versions of _Black_ used to ruthlessly collapse those into one line (it fits!).
+Now, you can communicate that you don't want that by putting a trailing comma in the
+collection yourself. When you do, _Black_ will know to always explode your collection
+into one item per line.
+
+How do you make it stop? Just delete that trailing comma and _Black_ will collapse your
+collection into one line if it fits.
+
+If you must, you can recover the behaviour of early versions of _Black_ with the option
+`--skip-magic-trailing-comma` / `-C`.
+
+### r"strings" and R"strings"
+
+_Black_ normalizes string quotes as well as string prefixes, making them lowercase. One
+exception to this rule is r-strings. It turns out that the very popular
+[MagicPython](https://github.com/MagicStack/MagicPython/) syntax highlighter, used by
+default by (among others) GitHub and Visual Studio Code, differentiates between
+r-strings and R-strings. The former are syntax highlighted as regular expressions while
+the latter are treated as true raw strings with no special semantics.
+
+### AST before and after formatting
+
+When run with `--safe`, _Black_ checks that the code before and after is semantically
+equivalent. This check is done by comparing the AST of the source with the AST of the
+target. There are three limited cases in which the AST does differ:
+
+1. _Black_ cleans up leading and trailing whitespace of docstrings, re-indenting them if
+   needed. It's been one of the most popular user-reported features for the formatter to
+   fix whitespace issues with docstrings. While the result is technically an AST
+   difference, due to the various possibilities of forming docstrings, all realtime use
+   of docstrings that we're aware of sanitizes indentation and leading/trailing
+   whitespace anyway.
+
+1. _Black_ manages optional parentheses for some statements. In the case of the `del`
+   statement, presence of wrapping parentheses or lack of thereof changes the resulting
+   AST but is semantically equivalent in the interpreter.
+
+1. _Black_ might move comments around, which includes type comments. Those are part of
+   the AST as of Python 3.8. While the tool implements a number of special cases for
+   those comments, there is no guarantee they will remain where they were in the source.
+   Note that this doesn't change runtime behavior of the source code.
+
+To put things in perspective, the code equivalence check is a feature of _Black_ which
+other formatters don't implement at all. It is of crucial importance to us to ensure
+code behaves the way it did before it got reformatted. We treat this as a feature and
+there are no plans to relax this in the future. The exceptions enumerated above stem
+from either user feedback or implementation details of the tool. In each case we made
+due diligence to ensure that the AST divergence is of no practical consequence.
diff --git a/.vim/bundle/black/docs/the_black_code_style/future_style.md b/.vim/bundle/black/docs/the_black_code_style/future_style.md
new file mode 100644 (file)
index 0000000..a767609
--- /dev/null
@@ -0,0 +1,42 @@
+# The (future of the) Black code style
+
+```{warning}
+Changes to this document often aren't tied and don't relate to releases of
+_Black_. It's recommended that you read the latest version available.
+```
+
+## Using backslashes for with statements
+
+[Backslashes are bad and should be never be used](labels/why-no-backslashes) however
+there is one exception: `with` statements using multiple context managers. Before Python
+3.9 Python's grammar does not allow organizing parentheses around the series of context
+managers.
+
+We don't want formatting like:
+
+```py3
+with make_context_manager1() as cm1, make_context_manager2() as cm2, make_context_manager3() as cm3, make_context_manager4() as cm4:
+    ...  # nothing to split on - line too long
+```
+
+So _Black_ will eventually format it like this:
+
+```py3
+with \
+     make_context_manager(1) as cm1, \
+     make_context_manager(2) as cm2, \
+     make_context_manager(3) as cm3, \
+     make_context_manager(4) as cm4 \
+:
+    ...  # backslashes and an ugly stranded colon
+```
+
+Although when the target version is Python 3.9 or higher, _Black_ will use parentheses
+instead since they're allowed in Python 3.9 and higher.
+
+## Improved string processing
+
+Currently, _Black_ does not split long strings to fit the line length limit. Currently,
+there is [an experimental option](labels/experimental-string) to enable splitting
+strings. We plan to enable this option by default once it is fully stable. This is
+tracked in [this issue](https://github.com/psf/black/issues/2188).
diff --git a/.vim/bundle/black/docs/the_black_code_style/index.rst b/.vim/bundle/black/docs/the_black_code_style/index.rst
new file mode 100644 (file)
index 0000000..4693437
--- /dev/null
@@ -0,0 +1,19 @@
+The Black Code Style
+====================
+
+.. toctree::
+    :hidden:
+
+    Current style <current_style>
+    Future style <future_style>
+
+*Black* is a PEP 8 compliant opinionated formatter with its own style.
+
+It should be noted that while keeping the style unchanged throughout releases is a
+goal, the *Black* code style isn't set in stone. Sometimes it's modified in response to
+user feedback or even changes to the Python language!
+
+Documentation for both the current and future styles can be found:
+
+- :doc:`current_style`
+- :doc:`future_style`
diff --git a/.vim/bundle/black/docs/usage_and_configuration/black_as_a_server.md b/.vim/bundle/black/docs/usage_and_configuration/black_as_a_server.md
new file mode 100644 (file)
index 0000000..75a4d92
--- /dev/null
@@ -0,0 +1,78 @@
+# Black as a server (blackd)
+
+`blackd` is a small HTTP server that exposes _Black_'s functionality over a simple
+protocol. The main benefit of using it is to avoid the cost of starting up a new _Black_
+process every time you want to blacken a file.
+
+## Usage
+
+`blackd` is not packaged alongside _Black_ by default because it has additional
+dependencies. You will need to execute `pip install black[d]` to install it.
+
+You can start the server on the default port, binding only to the local interface by
+running `blackd`. You will see a single line mentioning the server's version, and the
+host and port it's listening on. `blackd` will then print an access log similar to most
+web servers on standard output, merged with any exception traces caused by invalid
+formatting requests.
+
+`blackd` provides even less options than _Black_. You can see them by running
+`blackd --help`:
+
+```{program-output} blackd --help
+
+```
+
+There is no official `blackd` client tool (yet!). You can test that blackd is working
+using `curl`:
+
+```sh
+blackd --bind-port 9090 &  # or let blackd choose a port
+curl -s -XPOST "localhost:9090" -d "print('valid')"
+```
+
+## Protocol
+
+`blackd` only accepts `POST` requests at the `/` path. The body of the request should
+contain the python source code to be formatted, encoded according to the `charset` field
+in the `Content-Type` request header. If no `charset` is specified, `blackd` assumes
+`UTF-8`.
+
+There are a few HTTP headers that control how the source code is formatted. These
+correspond to command line flags for _Black_. There is one exception to this:
+`X-Protocol-Version` which if present, should have the value `1`, otherwise the request
+is rejected with `HTTP 501` (Not Implemented).
+
+The headers controlling how source code is formatted are:
+
+- `X-Line-Length`: corresponds to the `--line-length` command line flag.
+- `X-Skip-String-Normalization`: corresponds to the `--skip-string-normalization`
+  command line flag. If present and its value is not the empty string, no string
+  normalization will be performed.
+- `X-Skip-Magic-Trailing-Comma`: corresponds to the `--skip-magic-trailing-comma`
+  command line flag. If present and its value is not the empty string, trailing commas
+  will not be used as a reason to split lines.
+- `X-Fast-Or-Safe`: if set to `fast`, `blackd` will act as _Black_ does when passed the
+  `--fast` command line flag.
+- `X-Python-Variant`: if set to `pyi`, `blackd` will act as _Black_ does when passed the
+  `--pyi` command line flag. Otherwise, its value must correspond to a Python version or
+  a set of comma-separated Python versions, optionally prefixed with `py`. For example,
+  to request code that is compatible with Python 3.5 and 3.6, set the header to
+  `py3.5,py3.6`.
+- `X-Diff`: corresponds to the `--diff` command line flag. If present, a diff of the
+  formats will be output.
+
+If any of these headers are set to invalid values, `blackd` returns a `HTTP 400` error
+response, mentioning the name of the problematic header in the message body.
+
+Apart from the above, `blackd` can produce the following response codes:
+
+- `HTTP 204`: If the input is already well-formatted. The response body is empty.
+- `HTTP 200`: If formatting was needed on the input. The response body contains the
+  blackened Python code, and the `Content-Type` header is set accordingly.
+- `HTTP 400`: If the input contains a syntax error. Details of the error are returned in
+  the response body.
+- `HTTP 500`: If there was any other kind of error while trying to format the input. The
+  response body contains a textual representation of the error.
+
+The response headers include a `X-Black-Version` header containing the version of
+_Black_.
diff --git a/.vim/bundle/black/docs/usage_and_configuration/file_collection_and_discovery.md b/.vim/bundle/black/docs/usage_and_configuration/file_collection_and_discovery.md
new file mode 100644 (file)
index 0000000..1f43618
--- /dev/null
@@ -0,0 +1,36 @@
+# File collection and discovery
+
+You can directly pass _Black_ files, but you can also pass directories and _Black_ will
+walk them, collecting files to format. It determines what files to format or skip
+automatically using the inclusion and exclusion regexes and as well their modification
+time.
+
+## Ignoring unmodified files
+
+_Black_ remembers files it has already formatted, unless the `--diff` flag is used or
+code is passed via standard input. This information is stored per-user. The exact
+location of the file depends on the _Black_ version and the system on which _Black_ is
+run. The file is non-portable. The standard location on common operating systems is:
+
+- Windows:
+  `C:\\Users\<username>\AppData\Local\black\black\Cache\<version>\cache.<line-length>.<file-mode>.pickle`
+- macOS:
+  `/Users/<username>/Library/Caches/black/<version>/cache.<line-length>.<file-mode>.pickle`
+- Linux:
+  `/home/<username>/.cache/black/<version>/cache.<line-length>.<file-mode>.pickle`
+
+`file-mode` is an int flag that determines whether the file was formatted as 3.6+ only,
+as .pyi, and whether string normalization was omitted.
+
+To override the location of these files on macOS or Linux, set the environment variable
+`XDG_CACHE_HOME` to your preferred location. For example, if you want to put the cache
+in the directory you're running _Black_ from, set `XDG_CACHE_HOME=.cache`. _Black_ will
+then write the above files to `.cache/black/<version>/`.
+
+## .gitignore
+
+If `--exclude` is not set, _Black_ will automatically ignore files and directories in
+`.gitignore` file(s), if present.
+
+If you want _Black_ to continue using `.gitignore` while also configuring the exclusion
+rules, please use `--extend-exclude`.
diff --git a/.vim/bundle/black/docs/usage_and_configuration/index.rst b/.vim/bundle/black/docs/usage_and_configuration/index.rst
new file mode 100644 (file)
index 0000000..84a9c0c
--- /dev/null
@@ -0,0 +1,24 @@
+Usage and Configuration
+=======================
+
+.. toctree::
+  :hidden:
+
+  the_basics
+  file_collection_and_discovery
+  black_as_a_server
+
+Sometimes, running *Black* with its defaults and passing filepaths to it just won't cut
+it. Passing each file using paths will become burdensome, and maybe you would like
+*Black* to not touch your files and just output diffs. And yes, you *can* tweak certain
+parts of *Black*'s style, but please know that configurability in this area is
+purposefully limited.
+
+Using many of these more advanced features of *Black* will require some configuration.
+Configuration that will either live on the command line or in a TOML configuration file.
+
+This section covers features of *Black* and configuring *Black* in detail:
+
+- :doc:`The basics <./the_basics>`
+- :doc:`File collection and discovery <file_collection_and_discovery>`
+- :doc:`Black as a server (blackd) <./black_as_a_server>`
diff --git a/.vim/bundle/black/docs/usage_and_configuration/the_basics.md b/.vim/bundle/black/docs/usage_and_configuration/the_basics.md
new file mode 100644 (file)
index 0000000..49268b4
--- /dev/null
@@ -0,0 +1,292 @@
+# The basics
+
+Foundational knowledge on using and configuring Black.
+
+_Black_ is a well-behaved Unix-style command-line tool:
+
+- it does nothing if no sources are passed to it;
+- it will read from standard input and write to standard output if `-` is used as the
+  filename;
+- it only outputs messages to users on standard error;
+- exits with code 0 unless an internal error occurred (or `--check` was used).
+
+## Usage
+
+To get started right away with sensible defaults:
+
+```sh
+black {source_file_or_directory}
+```
+
+You can run _Black_ as a package if running it as a script doesn't work:
+
+```sh
+python -m black {source_file_or_directory}
+```
+
+### Command line options
+
+_Black_ has quite a few knobs these days, although _Black_ is opinionated so style
+configuration options are deliberately limited and rarely added. You can list them by
+running `black --help`.
+
+<details>
+
+<summary>Help output</summary>
+
+```{program-output} black --help
+
+```
+
+</details>
+
+### Code input alternatives
+
+#### Standard Input
+
+_Black_ supports formatting code via stdin, with the result being printed to stdout.
+Just let _Black_ know with `-` as the path.
+
+```console
+$ echo "print ( 'hello, world' )" | black -
+print("hello, world")
+reformatted -
+All done! ✨ 🍰 ✨
+1 file reformatted.
+```
+
+**Tip:** if you need _Black_ to treat stdin input as a file passed directly via the CLI,
+use `--stdin-filename`. Useful to make sure _Black_ will respect the `--force-exclude`
+option on some editors that rely on using stdin.
+
+#### As a string
+
+You can also pass code as a string using the `-c` / `--code` option.
+
+```console
+$ black --code "print ( 'hello, world' )"
+print("hello, world")
+```
+
+### Writeback and reporting
+
+By default _Black_ reformats the files given and/or found in place. Sometimes you need
+_Black_ to just tell you what it _would_ do without actually rewriting the Python files.
+
+There's two variations to this mode that are independently enabled by their respective
+flags. Both variations can be enabled at once.
+
+#### Exit code
+
+Passing `--check` will make _Black_ exit with:
+
+- code 0 if nothing would change;
+- code 1 if some files would be reformatted; or
+- code 123 if there was an internal error
+
+```console
+$ black test.py --check
+All done! ✨ 🍰 ✨
+1 file would be left unchanged.
+$ echo $?
+0
+
+$ black test.py --check
+would reformat test.py
+Oh no! 💥 💔 💥
+1 file would be reformatted.
+$ echo $?
+1
+
+$ black test.py --check
+error: cannot format test.py: INTERNAL ERROR: Black produced code that is not equivalent to the source.  Please report a bug on https://github.com/psf/black/issues.  This diff might be helpful: /tmp/blk_kjdr1oog.log
+Oh no! 💥 💔 💥
+1 file would fail to reformat.
+$ echo $?
+123
+```
+
+#### Diffs
+
+Passing `--diff` will make _Black_ print out diffs that indicate what changes _Black_
+would've made. They are printed to stdout so capturing them is simple.
+
+If you'd like colored diffs, you can enable them with the `--color`.
+
+```console
+$ black test.py --diff
+--- test.py     2021-03-08 22:23:40.848954 +0000
++++ test.py     2021-03-08 22:23:47.126319 +0000
+@@ -1 +1 @@
+-print ( 'hello, world' )
++print("hello, world")
+would reformat test.py
+All done! ✨ 🍰 ✨
+1 file would be reformatted.
+```
+
+### Output verbosity
+
+_Black_ in general tries to produce the right amount of output, balancing between
+usefulness and conciseness. By default, _Black_ emits files modified and error messages,
+plus a short summary.
+
+```console
+$ black src/
+error: cannot format src/black_primer/cli.py: Cannot parse: 5:6: mport asyncio
+reformatted src/black_primer/lib.py
+reformatted src/blackd/__init__.py
+reformatted src/black/__init__.py
+Oh no! 💥 💔 💥
+3 files reformatted, 2 files left unchanged, 1 file failed to reformat.
+```
+
+Passing `-v` / `--verbose` will cause _Black_ to also emit messages about files that
+were not changed or were ignored due to exclusion patterns. If _Black_ is using a
+configuration file, a blue message detailing which one it is using will be emitted.
+
+```console
+$ black src/ -v
+Using configuration from /tmp/pyproject.toml.
+src/blib2to3 ignored: matches the --extend-exclude regular expression
+src/_black_version.py wasn't modified on disk since last run.
+src/black/__main__.py wasn't modified on disk since last run.
+error: cannot format src/black_primer/cli.py: Cannot parse: 5:6: mport asyncio
+reformatted src/black_primer/lib.py
+reformatted src/blackd/__init__.py
+reformatted src/black/__init__.py
+Oh no! 💥 💔 💥
+3 files reformatted, 2 files left unchanged, 1 file failed to reformat
+```
+
+Passing `-q` / `--quiet` will cause _Black_ to stop emitting all non-critial output.
+Error messages will still be emitted (which can silenced by `2>/dev/null`).
+
+```console
+$ black src/ -q
+error: cannot format src/black_primer/cli.py: Cannot parse: 5:6: mport asyncio
+```
+
+### Versions
+
+You can check the version of _Black_ you have installed using the `--version` flag.
+
+```console
+$ black --version
+black, version 21.9b0
+```
+
+An option to require a specific version to be running is also provided.
+
+```console
+$ black --required-version 21.9b0 -c "format = 'this'"
+format = "this"
+$ black --required-version 31.5b2 -c "still = 'beta?!'"
+Oh no! 💥 💔 💥 The required version does not match the running version!
+```
+
+This is useful for example when running _Black_ in multiple environments that haven't
+necessarily installed the correct version. This option can be set in a configuration
+file for consistent results across environments.
+
+## Configuration via a file
+
+_Black_ is able to read project-specific default values for its command line options
+from a `pyproject.toml` file. This is especially useful for specifying custom
+`--include` and `--exclude`/`--force-exclude`/`--extend-exclude` patterns for your
+project.
+
+**Pro-tip**: If you're asking yourself "Do I need to configure anything?" the answer is
+"No". _Black_ is all about sensible defaults. Applying those defaults will have your
+code in compliance with many other _Black_ formatted projects.
+
+### What on Earth is a `pyproject.toml` file?
+
+[PEP 518](https://www.python.org/dev/peps/pep-0518/) defines `pyproject.toml` as a
+configuration file to store build system requirements for Python projects. With the help
+of tools like [Poetry](https://python-poetry.org/) or
+[Flit](https://flit.readthedocs.io/en/latest/) it can fully replace the need for
+`setup.py` and `setup.cfg` files.
+
+### Where _Black_ looks for the file
+
+By default _Black_ looks for `pyproject.toml` starting from the common base directory of
+all files and directories passed on the command line. If it's not there, it looks in
+parent directories. It stops looking when it finds the file, or a `.git` directory, or a
+`.hg` directory, or the root of the file system, whichever comes first.
+
+If you're formatting standard input, _Black_ will look for configuration starting from
+the current working directory.
+
+You can use a "global" configuration, stored in a specific location in your home
+directory. This will be used as a fallback configuration, that is, it will be used if
+and only if _Black_ doesn't find any configuration as mentioned above. Depending on your
+operating system, this configuration file should be stored as:
+
+- Windows: `~\.black`
+- Unix-like (Linux, MacOS, etc.): `$XDG_CONFIG_HOME/black` (`~/.config/black` if the
+  `XDG_CONFIG_HOME` environment variable is not set)
+
+Note that these are paths to the TOML file itself (meaning that they shouldn't be named
+as `pyproject.toml`), not directories where you store the configuration. Here, `~`
+refers to the path to your home directory. On Windows, this will be something like
+`C:\\Users\UserName`.
+
+You can also explicitly specify the path to a particular file that you want with
+`--config`. In this situation _Black_ will not look for any other file.
+
+If you're running with `--verbose`, you will see a blue message if a file was found and
+used.
+
+Please note `blackd` will not use `pyproject.toml` configuration.
+
+### Configuration format
+
+As the file extension suggests, `pyproject.toml` is a
+[TOML](https://github.com/toml-lang/toml) file. It contains separate sections for
+different tools. _Black_ is using the `[tool.black]` section. The option keys are the
+same as long names of options on the command line.
+
+Note that you have to use single-quoted strings in TOML for regular expressions. It's
+the equivalent of r-strings in Python. Multiline strings are treated as verbose regular
+expressions by Black. Use `[ ]` to denote a significant space character.
+
+<details>
+<summary>Example <code>pyproject.toml</code></summary>
+
+```toml
+[tool.black]
+line-length = 88
+target-version = ['py37']
+include = '\.pyi?$'
+extend-exclude = '''
+# A regex preceded with ^/ will apply only to files and directories
+# in the root of the project.
+^/foo.py  # exclude a file named foo.py in the root of the project (in addition to the defaults)
+'''
+```
+
+</details>
+
+### Lookup hierarchy
+
+Command-line options have defaults that you can see in `--help`. A `pyproject.toml` can
+override those defaults. Finally, options provided by the user on the command line
+override both.
+
+_Black_ will only ever use one `pyproject.toml` file during an entire run. It doesn't
+look for multiple files, and doesn't compose configuration from different levels of the
+file hierarchy.
+
+## Next steps
+
+You've probably noted that not all of the options you can pass to _Black_ have been
+covered. Don't worry, the rest will be covered in a later section.
+
+A good next step would be configuring auto-discovery so `black .` is all you need
+instead of laborously listing every file or directory. You can get started by heading
+over to [File collection and discovery](./file_collection_and_discovery.md).
+
+Another good choice would be setting up an
+[integration with your editor](../integrations/editors.md) of choice or with
+[pre-commit for source version control](../integrations/source_version_control.md).
diff --git a/.vim/bundle/black/fuzz.py b/.vim/bundle/black/fuzz.py
new file mode 100644 (file)
index 0000000..a9ca8ef
--- /dev/null
@@ -0,0 +1,85 @@
+"""Property-based tests for Black.
+
+By Zac Hatfield-Dodds, based on my Hypothesmith tool for source code
+generation.  You can run this file with `python`, `pytest`, or (soon)
+a coverage-guided fuzzer I'm working on.
+"""
+
+import re
+
+import hypothesmith
+from hypothesis import HealthCheck, given, settings, strategies as st
+
+import black
+from blib2to3.pgen2.tokenize import TokenError
+
+
+# This test uses the Hypothesis and Hypothesmith libraries to generate random
+# syntatically-valid Python source code and run Black in odd modes.
+@settings(
+    max_examples=1000,  # roughly 1k tests/minute, or half that under coverage
+    derandomize=True,  # deterministic mode to avoid CI flakiness
+    deadline=None,  # ignore Hypothesis' health checks; we already know that
+    suppress_health_check=HealthCheck.all(),  # this is slow and filter-heavy.
+)
+@given(
+    # Note that while Hypothesmith might generate code unlike that written by
+    # humans, it's a general test that should pass for any *valid* source code.
+    # (so e.g. running it against code scraped of the internet might also help)
+    src_contents=hypothesmith.from_grammar() | hypothesmith.from_node(),
+    # Using randomly-varied modes helps us to exercise less common code paths.
+    mode=st.builds(
+        black.FileMode,
+        line_length=st.just(88) | st.integers(0, 200),
+        string_normalization=st.booleans(),
+        is_pyi=st.booleans(),
+    ),
+)
+def test_idempotent_any_syntatically_valid_python(
+    src_contents: str, mode: black.FileMode
+) -> None:
+    # Before starting, let's confirm that the input string is valid Python:
+    compile(src_contents, "<string>", "exec")  # else the bug is in hypothesmith
+
+    # Then format the code...
+    try:
+        dst_contents = black.format_str(src_contents, mode=mode)
+    except black.InvalidInput:
+        # This is a bug - if it's valid Python code, as above, Black should be
+        # able to cope with it.  See issues #970, #1012, #1358, and #1557.
+        # TODO: remove this try-except block when issues are resolved.
+        return
+    except TokenError as e:
+        if (  # Special-case logic for backslashes followed by newlines or end-of-input
+            e.args[0] == "EOF in multi-line statement"
+            and re.search(r"\\($|\r?\n)", src_contents) is not None
+        ):
+            # This is a bug - if it's valid Python code, as above, Black should be
+            # able to cope with it.  See issue #1012.
+            # TODO: remove this block when the issue is resolved.
+            return
+        raise
+
+    # And check that we got equivalent and stable output.
+    black.assert_equivalent(src_contents, dst_contents)
+    black.assert_stable(src_contents, dst_contents, mode=mode)
+
+    # Future test: check that pure-python and mypyc versions of black
+    # give identical output for identical input?
+
+
+if __name__ == "__main__":
+    # Run tests, including shrinking and reporting any known failures.
+    test_idempotent_any_syntatically_valid_python()
+
+    # If Atheris is available, run coverage-guided fuzzing.
+    # (if you want only bounded fuzzing, just use `pytest fuzz.py`)
+    try:
+        import sys
+        import atheris
+    except ImportError:
+        pass
+    else:
+        test = test_idempotent_any_syntatically_valid_python
+        atheris.Setup(sys.argv, test.hypothesis.fuzz_one_input)
+        atheris.Fuzz()
diff --git a/.vim/bundle/black/gallery/Dockerfile b/.vim/bundle/black/gallery/Dockerfile
new file mode 100644 (file)
index 0000000..7a18b7e
--- /dev/null
@@ -0,0 +1,11 @@
+FROM python:3.8.2-slim
+
+# note: a single RUN to avoid too many image layers being produced
+RUN apt-get update \
+ && apt-get upgrade -y \
+ && apt-get install git apt-utils -y \
+ && git config --global user.email "black@psf.github.com" \
+ && git config --global user.name "Gallery/Black"
+
+COPY gallery.py /
+ENTRYPOINT ["python", "/gallery.py"]
diff --git a/.vim/bundle/black/gallery/README.md b/.vim/bundle/black/gallery/README.md
new file mode 100644 (file)
index 0000000..ea48e81
--- /dev/null
@@ -0,0 +1,45 @@
+# Gallery
+
+Gallery is a script that automates the process of applying different _Black_ versions to
+a selected PyPI package and seeing the results between _Black_ versions.
+
+## Build
+
+```console
+$ docker build -t black_gallery .
+```
+
+## Run
+
+```console
+$ docker run -it -v /host/output:/output -v /host/input:/input black_gallery:latest [args]
+```
+
+```
+usage: gallery.py [-h] (-p PYPI_PACKAGE | -t TOP_PACKAGES) [-b BLACK_REPO] [-v VERSION] [-w WORKERS] [-i INPUT] [-o OUTPUT]
+                  [versions [versions ...]]
+
+Black Gallery is a script that automates the process of applying different Black versions to a selected PyPI package and
+seeing the results between versions.
+
+positional arguments:
+  versions
+
+optional arguments:
+  -h, --help            show this help message and exit
+  -p PYPI_PACKAGE, --pypi-package PYPI_PACKAGE
+                        PyPI package to download.
+  -t TOP_PACKAGES, --top-packages TOP_PACKAGES
+                        Top n PyPI packages to download.
+  -b BLACK_REPO, --black-repo BLACK_REPO
+                        Black's Git repository.
+  -v VERSION, --version VERSION
+                        Version for given PyPI package. Will be discarded if used with -t option.
+  -w WORKERS, --workers WORKERS
+                        Maximum number of threads to download with at the same time. Will be discarded if used with -p
+                        option.
+  -i INPUT, --input INPUT
+                        Input directory to read configuration.
+  -o OUTPUT, --output OUTPUT
+                        Output directory to download and put result artifacts.
+```
diff --git a/.vim/bundle/black/gallery/gallery.py b/.vim/bundle/black/gallery/gallery.py
new file mode 100755 (executable)
index 0000000..3df05c1
--- /dev/null
@@ -0,0 +1,307 @@
+import atexit
+import json
+import subprocess
+import tarfile
+import tempfile
+import traceback
+import venv
+import zipfile
+from argparse import ArgumentParser, Namespace
+from concurrent.futures import ThreadPoolExecutor
+from functools import lru_cache, partial
+from pathlib import Path
+from typing import (  # type: ignore # typing can't see Literal
+    Generator,
+    List,
+    Literal,
+    NamedTuple,
+    Optional,
+    Tuple,
+    Union,
+    cast,
+)
+from urllib.request import urlopen, urlretrieve
+
+PYPI_INSTANCE = "https://pypi.org/pypi"
+PYPI_TOP_PACKAGES = (
+    "https://hugovk.github.io/top-pypi-packages/top-pypi-packages-{days}-days.json"
+)
+INTERNAL_BLACK_REPO = f"{tempfile.gettempdir()}/__black"
+
+ArchiveKind = Union[tarfile.TarFile, zipfile.ZipFile]
+Days = Union[Literal[30], Literal[365]]
+
+subprocess.run = partial(subprocess.run, check=True)  # type: ignore
+# https://github.com/python/mypy/issues/1484
+
+
+class BlackVersion(NamedTuple):
+    version: str
+    config: Optional[str] = None
+
+
+def get_pypi_download_url(package: str, version: Optional[str]) -> str:
+    with urlopen(PYPI_INSTANCE + f"/{package}/json") as page:
+        metadata = json.load(page)
+
+    if version is None:
+        sources = metadata["urls"]
+    else:
+        if version in metadata["releases"]:
+            sources = metadata["releases"][version]
+        else:
+            raise ValueError(
+                f"No releases found with version ('{version}') tag. "
+                f"Found releases: {metadata['releases'].keys()}"
+            )
+
+    for source in sources:
+        if source["python_version"] == "source":
+            break
+    else:
+        raise ValueError(f"Couldn't find any sources for {package}")
+
+    return cast(str, source["url"])
+
+
+def get_top_packages(days: Days) -> List[str]:
+    with urlopen(PYPI_TOP_PACKAGES.format(days=days)) as page:
+        result = json.load(page)
+
+    return [package["project"] for package in result["rows"]]
+
+
+def get_package_source(package: str, version: Optional[str]) -> str:
+    if package == "cpython":
+        if version is None:
+            version = "main"
+        return f"https://github.com/python/cpython/archive/{version}.zip"
+    elif package == "pypy":
+        if version is None:
+            version = "branch/default"
+        return (
+            f"https://foss.heptapod.net/pypy/pypy/repository/{version}/archive.tar.bz2"
+        )
+    else:
+        return get_pypi_download_url(package, version)
+
+
+def get_archive_manager(local_file: str) -> ArchiveKind:
+    if tarfile.is_tarfile(local_file):
+        return tarfile.open(local_file)
+    elif zipfile.is_zipfile(local_file):
+        return zipfile.ZipFile(local_file)
+    else:
+        raise ValueError("Unknown archive kind.")
+
+
+def get_first_archive_member(archive: ArchiveKind) -> str:
+    if isinstance(archive, tarfile.TarFile):
+        return archive.getnames()[0]
+    elif isinstance(archive, zipfile.ZipFile):
+        return archive.namelist()[0]
+
+
+def download_and_extract(package: str, version: Optional[str], directory: Path) -> Path:
+    source = get_package_source(package, version)
+
+    local_file, _ = urlretrieve(source, directory / f"{package}-src")
+    with get_archive_manager(local_file) as archive:
+        archive.extractall(path=directory)
+        result_dir = get_first_archive_member(archive)
+    return directory / result_dir
+
+
+def get_package(
+    package: str, version: Optional[str], directory: Path
+) -> Optional[Path]:
+    try:
+        return download_and_extract(package, version, directory)
+    except Exception:
+        print(f"Caught an exception while downloading {package}.")
+        traceback.print_exc()
+        return None
+
+
+DEFAULT_SLICE = slice(None)  # for flake8
+
+
+def download_and_extract_top_packages(
+    directory: Path,
+    days: Days = 365,
+    workers: int = 8,
+    limit: slice = DEFAULT_SLICE,
+) -> Generator[Path, None, None]:
+    with ThreadPoolExecutor(max_workers=workers) as executor:
+        bound_downloader = partial(get_package, version=None, directory=directory)
+        for package in executor.map(bound_downloader, get_top_packages(days)[limit]):
+            if package is not None:
+                yield package
+
+
+def git_create_repository(repo: Path) -> None:
+    subprocess.run(["git", "init"], cwd=repo)
+    git_add_and_commit(msg="Initial commit", repo=repo)
+
+
+def git_add_and_commit(msg: str, repo: Path) -> None:
+    subprocess.run(["git", "add", "."], cwd=repo)
+    subprocess.run(["git", "commit", "-m", msg, "--allow-empty"], cwd=repo)
+
+
+def git_switch_branch(
+    branch: str, repo: Path, new: bool = False, from_branch: Optional[str] = None
+) -> None:
+    args = ["git", "checkout"]
+    if new:
+        args.append("-b")
+    args.append(branch)
+    if from_branch:
+        args.append(from_branch)
+    subprocess.run(args, cwd=repo)
+
+
+def init_repos(options: Namespace) -> Tuple[Path, ...]:
+    options.output.mkdir(exist_ok=True)
+
+    if options.top_packages:
+        source_directories = tuple(
+            download_and_extract_top_packages(
+                directory=options.output,
+                workers=options.workers,
+                limit=slice(None, options.top_packages),
+            )
+        )
+    else:
+        source_directories = (
+            download_and_extract(
+                package=options.pypi_package,
+                version=options.version,
+                directory=options.output,
+            ),
+        )
+
+    for source_directory in source_directories:
+        git_create_repository(source_directory)
+
+    if options.black_repo is None:
+        subprocess.run(
+            ["git", "clone", "https://github.com/psf/black.git", INTERNAL_BLACK_REPO],
+            cwd=options.output,
+        )
+        options.black_repo = options.output / INTERNAL_BLACK_REPO
+
+    return source_directories
+
+
+@lru_cache(8)
+def black_runner(version: str, black_repo: Path) -> Path:
+    directory = tempfile.TemporaryDirectory()
+    venv.create(directory.name, with_pip=True)
+
+    python = Path(directory.name) / "bin" / "python"
+    subprocess.run([python, "-m", "pip", "install", "-e", black_repo])
+
+    atexit.register(directory.cleanup)
+    return python
+
+
+def format_repo_with_version(
+    repo: Path,
+    from_branch: Optional[str],
+    black_repo: Path,
+    black_version: BlackVersion,
+    input_directory: Path,
+) -> str:
+    current_branch = f"black-{black_version.version}"
+    git_switch_branch(black_version.version, repo=black_repo)
+    git_switch_branch(current_branch, repo=repo, new=True, from_branch=from_branch)
+
+    format_cmd: List[Union[Path, str]] = [
+        black_runner(black_version.version, black_repo),
+        (black_repo / "black.py").resolve(),
+        ".",
+    ]
+    if black_version.config:
+        format_cmd.extend(["--config", input_directory / black_version.config])
+
+    subprocess.run(format_cmd, cwd=repo, check=False)  # ensure the process
+    # continuess to run even it can't format some files. Reporting those
+    # should be enough
+    git_add_and_commit(f"Format with black:{black_version.version}", repo=repo)
+
+    return current_branch
+
+
+def format_repos(repos: Tuple[Path, ...], options: Namespace) -> None:
+    black_versions = tuple(
+        BlackVersion(*version.split(":")) for version in options.versions
+    )
+
+    for repo in repos:
+        from_branch = None
+        for black_version in black_versions:
+            from_branch = format_repo_with_version(
+                repo=repo,
+                from_branch=from_branch,
+                black_repo=options.black_repo,
+                black_version=black_version,
+                input_directory=options.input,
+            )
+        git_switch_branch("main", repo=repo)
+
+    git_switch_branch("main", repo=options.black_repo)
+
+
+def main() -> None:
+    parser = ArgumentParser(
+        description="""Black Gallery is a script that
+    automates the process of applying different Black versions to a selected
+    PyPI package and seeing the results between versions."""
+    )
+
+    group = parser.add_mutually_exclusive_group(required=True)
+    group.add_argument("-p", "--pypi-package", help="PyPI package to download.")
+    group.add_argument(
+        "-t", "--top-packages", help="Top n PyPI packages to download.", type=int
+    )
+
+    parser.add_argument("-b", "--black-repo", help="Black's Git repository.", type=Path)
+    parser.add_argument(
+        "-v",
+        "--version",
+        help=(
+            "Version for given PyPI package. Will be discarded if used with -t option."
+        ),
+    )
+    parser.add_argument(
+        "-w",
+        "--workers",
+        help=(
+            "Maximum number of threads to download with at the same time. "
+            "Will be discarded if used with -p option."
+        ),
+    )
+    parser.add_argument(
+        "-i",
+        "--input",
+        default=Path("/input"),
+        type=Path,
+        help="Input directory to read configuration.",
+    )
+    parser.add_argument(
+        "-o",
+        "--output",
+        default=Path("/output"),
+        type=Path,
+        help="Output directory to download and put result artifacts.",
+    )
+    parser.add_argument("versions", nargs="*", default=("main",), help="")
+
+    options = parser.parse_args()
+    repos = init_repos(options)
+    format_repos(repos, options)
+
+
+if __name__ == "__main__":
+    main()
diff --git a/.vim/bundle/black/mypy.ini b/.vim/bundle/black/mypy.ini
new file mode 100644 (file)
index 0000000..7e563e6
--- /dev/null
@@ -0,0 +1,41 @@
+[mypy]
+# Specify the target platform details in config, so your developers are
+# free to run mypy on Windows, Linux, or macOS and get consistent
+# results.
+python_version=3.6
+platform=linux
+
+mypy_path=src
+
+show_column_numbers=True
+
+# show error messages from unrelated files
+follow_imports=normal
+
+# suppress errors about unsatisfied imports
+ignore_missing_imports=True
+
+# be strict
+disallow_untyped_calls=True
+warn_return_any=True
+strict_optional=True
+warn_no_return=True
+warn_redundant_casts=True
+warn_unused_ignores=True
+# Until we're not supporting 3.6 primer needs this
+disallow_any_generics=False
+
+# The following are off by default.  Flip them on if you feel
+# adventurous.
+disallow_untyped_defs=True
+check_untyped_defs=True
+
+# No incremental mode
+cache_dir=/dev/null
+
+[mypy-aiohttp.*]
+follow_imports=skip
+[mypy-black]
+# The following is because of `patch_click()`. Remove when
+# we drop Python 3.6 support.
+warn_unused_ignores=False
diff --git a/.vim/bundle/black/plugin/black.vim b/.vim/bundle/black/plugin/black.vim
new file mode 100644 (file)
index 0000000..90d2047
--- /dev/null
@@ -0,0 +1,72 @@
+" black.vim
+" Author: Łukasz Langa
+" Created: Mon Mar 26 23:27:53 2018 -0700
+" Requires: Vim Ver7.0+
+" Version:  1.2
+"
+" Documentation:
+"   This plugin formats Python files.
+"
+" History:
+"  1.0:
+"    - initial version
+"  1.1:
+"    - restore cursor/window position after formatting
+"  1.2:
+"    - use autoload script
+
+if v:version < 700 || !has('python3')
+    func! __BLACK_MISSING()
+        echo "The black.vim plugin requires vim7.0+ with Python 3.6 support."
+    endfunc
+    command! Black :call __BLACK_MISSING()
+    command! BlackUpgrade :call __BLACK_MISSING()
+    command! BlackVersion :call __BLACK_MISSING()
+    finish
+endif
+
+if exists("g:load_black")
+  finish
+endif
+
+let g:load_black = "py1.0"
+if !exists("g:black_virtualenv")
+  if has("nvim")
+    let g:black_virtualenv = "~/.local/share/nvim/black"
+  else
+    let g:black_virtualenv = "~/.vim/black"
+  endif
+endif
+if !exists("g:black_fast")
+  let g:black_fast = 0
+endif
+if !exists("g:black_linelength")
+  let g:black_linelength = 88
+endif
+if !exists("g:black_skip_string_normalization")
+  if exists("g:black_string_normalization")
+    let g:black_skip_string_normalization = !g:black_string_normalization
+  else
+    let g:black_skip_string_normalization = 0
+  endif
+endif
+if !exists("g:black_quiet")
+  let g:black_quiet = 0
+endif
+if !exists("g:black_target_version")
+  let g:black_target_version = ""
+endif
+
+function BlackComplete(ArgLead, CmdLine, CursorPos)
+  return [
+\    'target_version=py27',
+\    'target_version=py36',
+\    'target_version=py37',
+\    'target_version=py38',
+\    'target_version=py39',
+\  ]
+endfunction
+
+command! -nargs=* -complete=customlist,BlackComplete Black :call black#Black(<f-args>)
+command! BlackUpgrade :call black#BlackUpgrade()
+command! BlackVersion :call black#BlackVersion()
diff --git a/.vim/bundle/black/profiling/dict_big.py b/.vim/bundle/black/profiling/dict_big.py
new file mode 100644 (file)
index 0000000..f330ac5
--- /dev/null
@@ -0,0 +1,8001 @@
+config = some.Structure(
+    some_mapping={
+        "00501": "AB890X",
+        "00544": "AB890X",
+        "01001": "AB889X",
+        "01002": "AB889X",
+        "01003": "AB889X",
+        "01004": "AB889X",
+        "01005": "AB889X",
+        "01007": "AB889X",
+        "01008": "AB889X",
+        "01009": "AB889X",
+        "01010": "AB889X",
+        "01011": "AB889X",
+        "01012": "AB889X",
+        "01013": "AB889X",
+        "01014": "AB889X",
+        "01020": "AB889X",
+        "01021": "AB889X",
+        "01022": "AB889X",
+        "01026": "AB889X",
+        "01027": "AB889X",
+        "01028": "AB889X",
+        "01029": "AB889X",
+        "01030": "AB889X",
+        "01031": "AB889X",
+        "01032": "AB889X",
+        "01033": "AB889X",
+        "01034": "AB889X",
+        "01035": "AB889X",
+        "01036": "AB889X",
+        "01037": "AB889X",
+        "01038": "AB889X",
+        "01039": "AB889X",
+        "01040": "AB889X",
+        "01041": "AB889X",
+        "01050": "AB889X",
+        "01053": "AB889X",
+        "01054": "AB889X",
+        "01056": "AB889X",
+        "01057": "AB889X",
+        "01059": "AB889X",
+        "01060": "AB889X",
+        "01061": "AB889X",
+        "01062": "AB889X",
+        "01063": "AB889X",
+        "01066": "AB889X",
+        "01068": "AB889X",
+        "01069": "AB889X",
+        "01070": "AB889X",
+        "01071": "AB889X",
+        "01072": "AB889X",
+        "01073": "AB889X",
+        "01074": "AB889X",
+        "01075": "AB889X",
+        "01077": "AB889X",
+        "01079": "AB889X",
+        "01080": "AB889X",
+        "01081": "AB889X",
+        "01082": "AB889X",
+        "01083": "AB889X",
+        "01084": "AB889X",
+        "01085": "AB889X",
+        "01086": "AB889X",
+        "01088": "AB889X",
+        "01089": "AB889X",
+        "01090": "AB889X",
+        "01092": "AB889X",
+        "01093": "AB889X",
+        "01094": "AB889X",
+        "01095": "AB889X",
+        "01096": "AB889X",
+        "01097": "AB889X",
+        "01098": "AB889X",
+        "01101": "AB889X",
+        "01102": "AB889X",
+        "01103": "AB889X",
+        "01104": "AB889X",
+        "01105": "AB889X",
+        "01106": "AB889X",
+        "01107": "AB889X",
+        "01108": "AB889X",
+        "01109": "AB889X",
+        "01111": "AB889X",
+        "01115": "AB889X",
+        "01116": "AB889X",
+        "01118": "AB889X",
+        "01119": "AB889X",
+        "01128": "AB889X",
+        "01129": "AB889X",
+        "01133": "AB889X",
+        "01138": "AB889X",
+        "01139": "AB889X",
+        "01144": "AB889X",
+        "01151": "AB889X",
+        "01152": "AB889X",
+        "01195": "AB889X",
+        "01199": "AB889X",
+        "01201": "AB890X",
+        "01202": "AB889X",
+        "01203": "AB889X",
+        "01220": "AB890X",
+        "01222": "AB889X",
+        "01223": "AB889X",
+        "01224": "AB889X",
+        "01225": "AB889X",
+        "01226": "AB889X",
+        "01227": "AB889X",
+        "01229": "AB889X",
+        "01230": "AB889X",
+        "01235": "AB889X",
+        "01236": "AB889X",
+        "01237": "AB889X",
+        "01238": "AB889X",
+        "01240": "AB889X",
+        "01242": "AB889X",
+        "01243": "AB889X",
+        "01244": "AB889X",
+        "01245": "AB889X",
+        "01247": "AB890X",
+        "01252": "AB889X",
+        "01253": "AB889X",
+        "01254": "AB889X",
+        "01255": "AB889X",
+        "01256": "AB889X",
+        "01257": "AB890X",
+        "01258": "AB889X",
+        "01259": "AB889X",
+        "01260": "AB889X",
+        "01262": "AB889X",
+        "01263": "AB889X",
+        "01264": "AB889X",
+        "01266": "AB889X",
+        "01267": "AB890X",
+        "01270": "AB889X",
+        "01301": "AB889X",
+        "01302": "AB889X",
+        "01330": "AB889X",
+        "01331": "AB889X",
+        "01337": "AB889X",
+        "01338": "AB889X",
+        "01339": "AB889X",
+        "01340": "AB889X",
+        "01341": "AB889X",
+        "01342": "AB889X",
+        "01343": "AB889X",
+        "01344": "AB889X",
+        "01346": "AB889X",
+        "01347": "AB889X",
+        "01349": "AB889X",
+        "01350": "AB889X",
+        "01351": "AB889X",
+        "01354": "AB889X",
+        "01355": "AB889X",
+        "01360": "AB889X",
+        "01364": "AB889X",
+        "01366": "AB889X",
+        "01367": "AB890X",
+        "01368": "AB889X",
+        "01370": "AB889X",
+        "01373": "AB889X",
+        "01375": "AB889X",
+        "01376": "AB889X",
+        "01378": "AB889X",
+        "01379": "AB889X",
+        "01380": "AB889X",
+        "01420": "AB889X",
+        "01430": "AB889X",
+        "01431": "AB889X",
+        "01432": "AB889X",
+        "01434": "AB889X",
+        "01436": "AB889X",
+        "01438": "AB889X",
+        "01440": "AB889X",
+        "01441": "AB889X",
+        "01450": "AB889X",
+        "01451": "AB889X",
+        "01452": "AB889X",
+        "01453": "AB889X",
+        "01460": "AB889X",
+        "01462": "AB889X",
+        "01463": "AB889X",
+        "01464": "AB889X",
+        "01467": "AB889X",
+        "01468": "AB889X",
+        "01469": "AB889X",
+        "01470": "AB889X",
+        "01471": "AB889X",
+        "01472": "AB889X",
+        "01473": "AB889X",
+        "01474": "AB889X",
+        "01475": "AB889X",
+        "01477": "AB889X",
+        "01501": "AB889X",
+        "01503": "AB889X",
+        "01504": "AB889X",
+        "01505": "AB889X",
+        "01506": "AB889X",
+        "01507": "AB889X",
+        "01508": "AB889X",
+        "01509": "AB889X",
+        "01510": "AB889X",
+        "01515": "AB889X",
+        "01516": "AB889X",
+        "01517": "AB889X",
+        "01518": "AB889X",
+        "01519": "AB889X",
+        "01520": "AB889X",
+        "01521": "AB889X",
+        "01522": "AB889X",
+        "01523": "AB889X",
+        "01524": "AB889X",
+        "01525": "AB889X",
+        "01526": "AB889X",
+        "01527": "AB889X",
+        "01529": "AB889X",
+        "01531": "AB889X",
+        "01532": "AB889X",
+        "01534": "AB889X",
+        "01535": "AB889X",
+        "01536": "AB889X",
+        "01537": "AB889X",
+        "01538": "AB889X",
+        "01540": "AB889X",
+        "01541": "AB889X",
+        "01542": "AB889X",
+        "01543": "AB889X",
+        "01545": "AB889X",
+        "01546": "AB889X",
+        "01550": "AB889X",
+        "01560": "AB889X",
+        "01561": "AB889X",
+        "01562": "AB889X",
+        "01564": "AB889X",
+        "01566": "AB889X",
+        "01568": "AB889X",
+        "01569": "AB889X",
+        "01570": "AB889X",
+        "01571": "AB889X",
+        "01580": "AB889X",
+        "01581": "AB889X",
+        "01582": "AB889X",
+        "01583": "AB889X",
+        "01585": "AB889X",
+        "01586": "AB889X",
+        "01588": "AB889X",
+        "01590": "AB889X",
+        "01601": "AB889X",
+        "01602": "AB889X",
+        "01603": "AB889X",
+        "01604": "AB889X",
+        "01605": "AB889X",
+        "01606": "AB889X",
+        "01607": "AB889X",
+        "01608": "AB889X",
+        "01609": "AB889X",
+        "01610": "AB889X",
+        "01611": "AB889X",
+        "01612": "AB889X",
+        "01613": "AB889X",
+        "01614": "AB889X",
+        "01615": "AB889X",
+        "01653": "AB889X",
+        "01654": "AB889X",
+        "01655": "AB889X",
+        "01701": "AB889X",
+        "01702": "AB889X",
+        "01703": "AB889X",
+        "01704": "AB889X",
+        "01705": "AB889X",
+        "01718": "AB889X",
+        "01719": "AB889X",
+        "01720": "AB889X",
+        "01721": "AB889X",
+        "01730": "AB889X",
+        "01731": "AB889X",
+        "01740": "AB889X",
+        "01741": "AB889X",
+        "01742": "AB889X",
+        "01745": "AB889X",
+        "01746": "AB889X",
+        "01747": "AB889X",
+        "01748": "AB889X",
+        "01749": "AB889X",
+        "01752": "AB889X",
+        "01754": "AB889X",
+        "01756": "AB889X",
+        "01757": "AB889X",
+        "01760": "AB889X",
+        "01770": "AB889X",
+        "01772": "AB889X",
+        "01773": "AB889X",
+        "01775": "AB889X",
+        "01776": "AB889X",
+        "01778": "AB889X",
+        "01784": "AB889X",
+        "01801": "AB889X",
+        "01803": "AB889X",
+        "01805": "AB889X",
+        "01806": "AB889X",
+        "01807": "AB889X",
+        "01808": "AB889X",
+        "01810": "AB889X",
+        "01812": "AB889X",
+        "01813": "AB889X",
+        "01815": "AB889X",
+        "01821": "AB889X",
+        "01822": "AB889X",
+        "01824": "AB889X",
+        "01826": "AB889X",
+        "01827": "AB889X",
+        "01830": "AB889X",
+        "01831": "AB889X",
+        "01832": "AB889X",
+        "01833": "AB889X",
+        "01834": "AB889X",
+        "01835": "AB889X",
+        "01840": "AB889X",
+        "01841": "AB889X",
+        "01842": "AB889X",
+        "01843": "AB889X",
+        "01844": "AB889X",
+        "01845": "AB889X",
+        "01850": "AB889X",
+        "01851": "AB889X",
+        "01852": "AB889X",
+        "01853": "AB889X",
+        "01854": "AB889X",
+        "01860": "AB889X",
+        "01862": "AB889X",
+        "01863": "AB889X",
+        "01864": "AB889X",
+        "01865": "AB889X",
+        "01866": "AB889X",
+        "01867": "AB889X",
+        "01876": "AB889X",
+        "01879": "AB889X",
+        "01880": "AB889X",
+        "01885": "AB889X",
+        "01886": "AB889X",
+        "01887": "AB889X",
+        "01888": "AB889X",
+        "01889": "AB889X",
+        "01890": "AB889X",
+        "01899": "AB889X",
+        "01901": "AB889X",
+        "01902": "AB889X",
+        "01903": "AB889X",
+        "01904": "AB889X",
+        "01905": "AB889X",
+        "01906": "AB889X",
+        "01907": "AB889X",
+        "01908": "AB889X",
+        "01910": "AB889X",
+        "01913": "AB889X",
+        "01915": "AB889X",
+        "01921": "AB889X",
+        "01922": "AB889X",
+        "01923": "AB889X",
+        "01929": "AB889X",
+        "01930": "AB889X",
+        "01931": "AB889X",
+        "01936": "AB889X",
+        "01937": "AB889X",
+        "01938": "AB889X",
+        "01940": "AB889X",
+        "01944": "AB889X",
+        "01945": "AB889X",
+        "01949": "AB889X",
+        "01950": "AB889X",
+        "01951": "AB889X",
+        "01952": "AB889X",
+        "01960": "AB889X",
+        "01961": "AB889X",
+        "01965": "AB889X",
+        "01966": "AB889X",
+        "01969": "AB889X",
+        "01970": "AB889X",
+        "01971": "AB889X",
+        "01982": "AB889X",
+        "01983": "AB889X",
+        "01984": "AB889X",
+        "01985": "AB889X",
+        "02018": "AB889X",
+        "02019": "AB889X",
+        "02020": "AB889X",
+        "02021": "AB889X",
+        "02025": "AB889X",
+        "02026": "AB889X",
+        "02027": "AB889X",
+        "02030": "AB889X",
+        "02031": "AB889X",
+        "02032": "AB889X",
+        "02035": "AB889X",
+        "02038": "AB889X",
+        "02040": "AB889X",
+        "02041": "AB889X",
+        "02043": "AB889X",
+        "02044": "AB889X",
+        "02045": "AB889X",
+        "02047": "AB889X",
+        "02048": "AB889X",
+        "02050": "AB889X",
+        "02051": "AB889X",
+        "02052": "AB889X",
+        "02053": "AB889X",
+        "02054": "AB889X",
+        "02055": "AB889X",
+        "02056": "AB889X",
+        "02059": "AB889X",
+        "02060": "AB889X",
+        "02061": "AB889X",
+        "02062": "AB889X",
+        "02065": "AB889X",
+        "02066": "AB889X",
+        "02067": "AB889X",
+        "02070": "AB889X",
+        "02071": "AB889X",
+        "02072": "AB889X",
+        "02081": "AB889X",
+        "02090": "AB889X",
+        "02093": "AB889X",
+        "02108": "AB889X",
+        "02109": "AB889X",
+        "02110": "AB889X",
+        "02111": "AB889X",
+        "02112": "AB889X",
+        "02113": "AB889X",
+        "02114": "AB889X",
+        "02115": "AB889X",
+        "02116": "AB889X",
+        "02117": "AB889X",
+        "02118": "AB889X",
+        "02119": "AB889X",
+        "02120": "AB889X",
+        "02121": "AB889X",
+        "02122": "AB889X",
+        "02123": "AB889X",
+        "02124": "AB889X",
+        "02125": "AB889X",
+        "02126": "AB889X",
+        "02127": "AB889X",
+        "02128": "AB889X",
+        "02129": "AB889X",
+        "02130": "AB889X",
+        "02131": "AB889X",
+        "02132": "AB889X",
+        "02133": "AB889X",
+        "02134": "AB889X",
+        "02135": "AB889X",
+        "02136": "AB889X",
+        "02137": "AB889X",
+        "02138": "AB889X",
+        "02139": "AB889X",
+        "02140": "AB889X",
+        "02141": "AB889X",
+        "02142": "AB889X",
+        "02143": "AB889X",
+        "02144": "AB889X",
+        "02145": "AB889X",
+        "02148": "AB889X",
+        "02149": "AB889X",
+        "02150": "AB889X",
+        "02151": "AB889X",
+        "02152": "AB889X",
+        "02153": "AB889X",
+        "02155": "AB889X",
+        "02156": "AB889X",
+        "02163": "AB889X",
+        "02169": "AB889X",
+        "02170": "AB889X",
+        "02171": "AB889X",
+        "02176": "AB889X",
+        "02180": "AB889X",
+        "02184": "AB889X",
+        "02185": "AB889X",
+        "02186": "AB889X",
+        "02187": "AB889X",
+        "02188": "AB889X",
+        "02189": "AB889X",
+        "02190": "AB889X",
+        "02191": "AB889X",
+        "02196": "AB889X",
+        "02199": "AB889X",
+        "02201": "AB889X",
+        "02203": "AB889X",
+        "02204": "AB889X",
+        "02205": "AB889X",
+        "02206": "AB889X",
+        "02207": "AB889X",
+        "02210": "AB889X",
+        "02211": "AB889X",
+        "02212": "AB889X",
+        "02215": "AB889X",
+        "02216": "AB889X",
+        "02217": "AB889X",
+        "02222": "AB889X",
+        "02228": "AB889X",
+        "02238": "AB889X",
+        "02239": "AB889X",
+        "02241": "AB889X",
+        "02266": "AB889X",
+        "02269": "AB889X",
+        "02283": "AB889X",
+        "02284": "AB889X",
+        "02293": "AB889X",
+        "02295": "AB889X",
+        "02297": "AB889X",
+        "02298": "AB889X",
+        "02301": "AB889X",
+        "02302": "AB889X",
+        "02303": "AB889X",
+        "02304": "AB889X",
+        "02305": "AB889X",
+        "02322": "AB889X",
+        "02324": "AB889X",
+        "02325": "AB889X",
+        "02327": "AB889X",
+        "02330": "AB889X",
+        "02331": "AB889X",
+        "02332": "AB889X",
+        "02333": "AB889X",
+        "02334": "AB889X",
+        "02337": "AB889X",
+        "02338": "AB889X",
+        "02339": "AB889X",
+        "02340": "AB889X",
+        "02341": "AB889X",
+        "02343": "AB889X",
+        "02344": "AB889X",
+        "02345": "AB889X",
+        "02346": "AB889X",
+        "02347": "AB889X",
+        "02348": "AB889X",
+        "02349": "AB889X",
+        "02350": "AB889X",
+        "02351": "AB889X",
+        "02355": "AB889X",
+        "02356": "AB889X",
+        "02357": "AB889X",
+        "02358": "AB889X",
+        "02359": "AB889X",
+        "02360": "AB889X",
+        "02361": "AB889X",
+        "02362": "AB889X",
+        "02364": "AB889X",
+        "02366": "AB889X",
+        "02367": "AB889X",
+        "02368": "AB889X",
+        "02370": "AB889X",
+        "02375": "AB889X",
+        "02379": "AB889X",
+        "02381": "AB889X",
+        "02382": "AB889X",
+        "02420": "AB889X",
+        "02421": "AB889X",
+        "02445": "AB889X",
+        "02446": "AB889X",
+        "02447": "AB889X",
+        "02451": "AB889X",
+        "02452": "AB889X",
+        "02453": "AB889X",
+        "02454": "AB889X",
+        "02455": "AB889X",
+        "02456": "AB889X",
+        "02457": "AB889X",
+        "02458": "AB890X",
+        "02459": "AB889X",
+        "02460": "AB889X",
+        "02461": "AB889X",
+        "02462": "AB889X",
+        "02464": "AB889X",
+        "02465": "AB889X",
+        "02466": "AB889X",
+        "02467": "AB889X",
+        "02468": "AB889X",
+        "02471": "AB889X",
+        "02472": "AB889X",
+        "02474": "AB889X",
+        "02475": "AB889X",
+        "02476": "AB889X",
+        "02477": "AB889X",
+        "02478": "AB889X",
+        "02479": "AB889X",
+        "02481": "AB889X",
+        "02482": "AB889X",
+        "02492": "AB889X",
+        "02493": "AB889X",
+        "02494": "AB889X",
+        "02495": "AB889X",
+        "02532": "AB889X",
+        "02534": "AB889X",
+        "02535": "AB889X",
+        "02536": "AB889X",
+        "02537": "AB889X",
+        "02538": "AB889X",
+        "02539": "AB889X",
+        "02540": "AB889X",
+        "02541": "AB889X",
+        "02542": "AB889X",
+        "02543": "AB889X",
+        "02552": "AB889X",
+        "02553": "AB889X",
+        "02554": "AB889X",
+        "02556": "AB889X",
+        "02557": "AB889X",
+        "02558": "AB889X",
+        "02559": "AB889X",
+        "02561": "AB889X",
+        "02562": "AB889X",
+        "02563": "AB889X",
+        "02564": "AB889X",
+        "02565": "AB889X",
+        "02568": "AB889X",
+        "02571": "AB889X",
+        "02573": "AB889X",
+        "02574": "AB889X",
+        "02575": "AB889X",
+        "02576": "AB889X",
+        "02584": "AB889X",
+        "02601": "AB889X",
+        "02630": "AB889X",
+        "02631": "AB889X",
+        "02632": "AB889X",
+        "02633": "AB889X",
+        "02634": "AB889X",
+        "02635": "AB889X",
+        "02636": "AB889X",
+        "02637": "AB889X",
+        "02638": "AB889X",
+        "02639": "AB889X",
+        "02641": "AB889X",
+        "02642": "AB889X",
+        "02643": "AB889X",
+        "02644": "AB889X",
+        "02645": "AB889X",
+        "02646": "AB889X",
+        "02647": "AB889X",
+        "02648": "AB889X",
+        "02649": "AB889X",
+        "02650": "AB889X",
+        "02651": "AB889X",
+        "02652": "AB889X",
+        "02653": "AB889X",
+        "02655": "AB889X",
+        "02657": "AB889X",
+        "02659": "AB889X",
+        "02660": "AB889X",
+        "02661": "AB889X",
+        "02662": "AB889X",
+        "02663": "AB889X",
+        "02664": "AB889X",
+        "02666": "AB889X",
+        "02667": "AB889X",
+        "02668": "AB889X",
+        "02669": "AB889X",
+        "02670": "AB889X",
+        "02671": "AB889X",
+        "02672": "AB889X",
+        "02673": "AB889X",
+        "02675": "AB889X",
+        "02702": "AB889X",
+        "02703": "AB889X",
+        "02712": "AB889X",
+        "02713": "AB889X",
+        "02714": "AB889X",
+        "02715": "AB889X",
+        "02717": "AB889X",
+        "02718": "AB889X",
+        "02719": "AB889X",
+        "02720": "AB889X",
+        "02721": "AB889X",
+        "02722": "AB889X",
+        "02723": "AB889X",
+        "02724": "AB889X",
+        "02725": "AB889X",
+        "02726": "AB889X",
+        "02738": "AB889X",
+        "02739": "AB889X",
+        "02740": "AB889X",
+        "02741": "AB889X",
+        "02742": "AB889X",
+        "02743": "AB889X",
+        "02744": "AB889X",
+        "02745": "AB889X",
+        "02746": "AB889X",
+        "02747": "AB889X",
+        "02748": "AB889X",
+        "02760": "AB889X",
+        "02761": "AB889X",
+        "02762": "AB889X",
+        "02763": "AB889X",
+        "02764": "AB889X",
+        "02766": "AB889X",
+        "02767": "AB889X",
+        "02768": "AB889X",
+        "02769": "AB889X",
+        "02770": "AB889X",
+        "02771": "AB889X",
+        "02777": "AB889X",
+        "02779": "AB889X",
+        "02780": "AB889X",
+        "02783": "AB889X",
+        "02790": "AB889X",
+        "02791": "AB889X",
+        "02801": "AB889X",
+        "02802": "AB889X",
+        "02804": "AB889X",
+        "02806": "AB889X",
+        "02807": "AB889X",
+        "02808": "AB889X",
+        "02809": "AB889X",
+        "02812": "AB889X",
+        "02813": "AB889X",
+        "02814": "AB889X",
+        "02815": "AB889X",
+        "02816": "AB889X",
+        "02817": "AB889X",
+        "02818": "AB889X",
+        "02822": "AB889X",
+        "02823": "AB889X",
+        "02824": "AB889X",
+        "02825": "AB889X",
+        "02826": "AB889X",
+        "02827": "AB889X",
+        "02828": "AB889X",
+        "02829": "AB889X",
+        "02830": "AB889X",
+        "02831": "AB889X",
+        "02832": "AB889X",
+        "02833": "AB889X",
+        "02835": "AB889X",
+        "02836": "AB889X",
+        "02837": "AB889X",
+        "02838": "AB889X",
+        "02839": "AB889X",
+        "02840": "AB889X",
+        "02841": "AB889X",
+        "02842": "AB889X",
+        "02852": "AB889X",
+        "02854": "AB889X",
+        "02857": "AB889X",
+        "02858": "AB889X",
+        "02859": "AB889X",
+        "02860": "AB889X",
+        "02861": "AB889X",
+        "02862": "AB889X",
+        "02863": "AB889X",
+        "02864": "AB889X",
+        "02865": "AB889X",
+        "02871": "AB889X",
+        "02872": "AB889X",
+        "02873": "AB889X",
+        "02874": "AB889X",
+        "02875": "AB889X",
+        "02876": "AB889X",
+        "02877": "AB889X",
+        "02878": "AB889X",
+        "02879": "AB889X",
+        "02880": "AB889X",
+        "02881": "AB889X",
+        "02882": "AB889X",
+        "02883": "AB889X",
+        "02885": "AB889X",
+        "02886": "AB889X",
+        "02887": "AB889X",
+        "02888": "AB889X",
+        "02889": "AB889X",
+        "02891": "AB889X",
+        "02892": "AB889X",
+        "02893": "AB889X",
+        "02894": "AB889X",
+        "02895": "AB889X",
+        "02896": "AB889X",
+        "02898": "AB889X",
+        "02901": "AB889X",
+        "02902": "AB889X",
+        "02903": "AB889X",
+        "02904": "AB889X",
+        "02905": "AB889X",
+        "02906": "AB889X",
+        "02907": "AB889X",
+        "02908": "AB889X",
+        "02909": "AB889X",
+        "02910": "AB889X",
+        "02911": "AB889X",
+        "02912": "AB889X",
+        "02914": "AB889X",
+        "02915": "AB889X",
+        "02916": "AB889X",
+        "02917": "AB889X",
+        "02918": "AB889X",
+        "02919": "AB889X",
+        "02920": "AB889X",
+        "02921": "AB889X",
+        "02940": "AB889X",
+        "03031": "AB889X",
+        "03032": "AB889X",
+        "03033": "AB889X",
+        "03034": "AB889X",
+        "03036": "AB889X",
+        "03037": "AB889X",
+        "03038": "AB889X",
+        "03040": "AB889X",
+        "03041": "AB889X",
+        "03042": "AB889X",
+        "03043": "AB889X",
+        "03044": "AB889X",
+        "03045": "AB889X",
+        "03046": "AB889X",
+        "03047": "AB889X",
+        "03048": "AB889X",
+        "03049": "AB889X",
+        "03051": "AB889X",
+        "03052": "AB889X",
+        "03053": "AB889X",
+        "03054": "AB889X",
+        "03055": "AB889X",
+        "03057": "AB889X",
+        "03060": "AB889X",
+        "03061": "AB889X",
+        "03062": "AB889X",
+        "03063": "AB889X",
+        "03064": "AB889X",
+        "03070": "AB889X",
+        "03071": "AB889X",
+        "03073": "AB889X",
+        "03076": "AB889X",
+        "03077": "AB889X",
+        "03079": "AB889X",
+        "03082": "AB889X",
+        "03084": "AB889X",
+        "03086": "AB889X",
+        "03087": "AB889X",
+        "03101": "AB889X",
+        "03102": "AB889X",
+        "03103": "AB889X",
+        "03104": "AB889X",
+        "03105": "AB889X",
+        "03106": "AB889X",
+        "03107": "AB889X",
+        "03108": "AB889X",
+        "03109": "AB889X",
+        "03110": "AB889X",
+        "03111": "AB889X",
+        "03215": "AB889X",
+        "03216": "AB889X",
+        "03217": "AB889X",
+        "03218": "AB889X",
+        "03220": "AB889X",
+        "03221": "AB889X",
+        "03222": "AB889X",
+        "03223": "AB889X",
+        "03224": "AB889X",
+        "03225": "AB889X",
+        "03226": "AB889X",
+        "03227": "AB889X",
+        "03229": "AB889X",
+        "03230": "AB889X",
+        "03231": "AB889X",
+        "03233": "AB889X",
+        "03234": "AB889X",
+        "03235": "AB889X",
+        "03237": "AB889X",
+        "03238": "AB889X",
+        "03240": "AB889X",
+        "03241": "AB889X",
+        "03242": "AB889X",
+        "03243": "AB889X",
+        "03244": "AB889X",
+        "03245": "AB889X",
+        "03246": "AB889X",
+        "03247": "AB889X",
+        "03249": "AB889X",
+        "03251": "AB889X",
+        "03252": "AB889X",
+        "03253": "AB889X",
+        "03254": "AB889X",
+        "03255": "AB889X",
+        "03256": "AB889X",
+        "03257": "AB889X",
+        "03258": "AB889X",
+        "03259": "AB889X",
+        "03260": "AB889X",
+        "03261": "AB889X",
+        "03262": "AB889X",
+        "03263": "AB889X",
+        "03264": "AB889X",
+        "03266": "AB889X",
+        "03268": "AB889X",
+        "03269": "AB889X",
+        "03272": "AB889X",
+        "03273": "AB889X",
+        "03274": "AB889X",
+        "03275": "AB889X",
+        "03276": "AB889X",
+        "03278": "AB889X",
+        "03279": "AB889X",
+        "03280": "AB889X",
+        "03281": "AB889X",
+        "03282": "AB889X",
+        "03284": "AB889X",
+        "03287": "AB889X",
+        "03289": "AB889X",
+        "03290": "AB889X",
+        "03291": "AB889X",
+        "03293": "AB889X",
+        "03298": "AB889X",
+        "03299": "AB889X",
+        "03301": "AB889X",
+        "03302": "AB889X",
+        "03303": "AB889X",
+        "03304": "AB889X",
+        "03305": "AB889X",
+        "03307": "AB889X",
+        "03431": "AB889X",
+        "03435": "AB889X",
+        "03440": "AB889X",
+        "03441": "AB889X",
+        "03442": "AB889X",
+        "03443": "AB889X",
+        "03444": "AB889X",
+        "03445": "AB889X",
+        "03446": "AB889X",
+        "03447": "AB889X",
+        "03448": "AB889X",
+        "03449": "AB889X",
+        "03450": "AB889X",
+        "03451": "AB889X",
+        "03452": "AB889X",
+        "03455": "AB889X",
+        "03456": "AB889X",
+        "03457": "AB889X",
+        "03458": "AB889X",
+        "03461": "AB889X",
+        "03462": "AB889X",
+        "03464": "AB889X",
+        "03465": "AB889X",
+        "03466": "AB889X",
+        "03467": "AB889X",
+        "03468": "AB889X",
+        "03469": "AB889X",
+        "03470": "AB889X",
+        "03561": "AB889X",
+        "03570": "AB889X",
+        "03574": "AB889X",
+        "03575": "AB889X",
+        "03576": "AB889X",
+        "03579": "AB889X",
+        "03580": "AB889X",
+        "03581": "AB889X",
+        "03582": "AB889X",
+        "03583": "AB889X",
+        "03584": "AB889X",
+        "03585": "AB889X",
+        "03586": "AB889X",
+        "03588": "AB889X",
+        "03589": "AB889X",
+        "03590": "AB889X",
+        "03592": "AB889X",
+        "03593": "AB889X",
+        "03595": "AB889X",
+        "03597": "AB889X",
+        "03598": "AB889X",
+        "03601": "AB889X",
+        "03602": "AB889X",
+        "03603": "AB889X",
+        "03604": "AB889X",
+        "03605": "AB889X",
+        "03607": "AB889X",
+        "03608": "AB889X",
+        "03609": "AB889X",
+        "03740": "AB889X",
+        "03741": "AB889X",
+        "03743": "AB889X",
+        "03745": "AB889X",
+        "03746": "AB889X",
+        "03748": "AB889X",
+        "03749": "AB889X",
+        "03750": "AB889X",
+        "03751": "AB889X",
+        "03752": "AB889X",
+        "03753": "AB889X",
+        "03754": "AB889X",
+        "03755": "AB889X",
+        "03756": "AB889X",
+        "03765": "AB889X",
+        "03766": "AB889X",
+        "03768": "AB889X",
+        "03769": "AB889X",
+        "03770": "AB889X",
+        "03771": "AB889X",
+        "03773": "AB889X",
+        "03774": "AB889X",
+        "03777": "AB889X",
+        "03779": "AB889X",
+        "03780": "AB889X",
+        "03781": "AB889X",
+        "03782": "AB889X",
+        "03784": "AB889X",
+        "03785": "AB889X",
+        "03801": "AB889X",
+        "03802": "AB889X",
+        "03803": "AB889X",
+        "03804": "AB889X",
+        "03805": "AB889X",
+        "03809": "AB889X",
+        "03810": "AB889X",
+        "03811": "AB889X",
+        "03812": "AB889X",
+        "03813": "AB889X",
+        "03814": "AB889X",
+        "03815": "AB889X",
+        "03816": "AB889X",
+        "03817": "AB889X",
+        "03818": "AB889X",
+        "03819": "AB889X",
+        "03820": "AB889X",
+        "03821": "AB889X",
+        "03822": "AB889X",
+        "03823": "AB889X",
+        "03824": "AB889X",
+        "03825": "AB889X",
+        "03826": "AB889X",
+        "03827": "AB889X",
+        "03830": "AB889X",
+        "03832": "AB889X",
+        "03833": "AB889X",
+        "03835": "AB889X",
+        "03836": "AB889X",
+        "03837": "AB889X",
+        "03838": "AB889X",
+        "03839": "AB889X",
+        "03840": "AB889X",
+        "03841": "AB889X",
+        "03842": "AB889X",
+        "03843": "AB889X",
+        "03844": "AB889X",
+        "03845": "AB889X",
+        "03846": "AB889X",
+        "03847": "AB889X",
+        "03848": "AB889X",
+        "03849": "AB889X",
+        "03850": "AB889X",
+        "03851": "AB889X",
+        "03852": "AB889X",
+        "03853": "AB889X",
+        "03854": "AB889X",
+        "03855": "AB889X",
+        "03856": "AB889X",
+        "03857": "AB889X",
+        "03858": "AB889X",
+        "03859": "AB889X",
+        "03860": "AB889X",
+        "03861": "AB889X",
+        "03862": "AB889X",
+        "03864": "AB889X",
+        "03865": "AB889X",
+        "03866": "AB889X",
+        "03867": "AB889X",
+        "03868": "AB889X",
+        "03869": "AB889X",
+        "03870": "AB889X",
+        "03871": "AB889X",
+        "03872": "AB889X",
+        "03873": "AB889X",
+        "03874": "AB889X",
+        "03875": "AB889X",
+        "03878": "AB889X",
+        "03882": "AB889X",
+        "03883": "AB889X",
+        "03884": "AB889X",
+        "03885": "AB889X",
+        "03886": "AB889X",
+        "03887": "AB889X",
+        "03890": "AB889X",
+        "03894": "AB889X",
+        "03896": "AB889X",
+        "03897": "AB889X",
+        "03901": "AB889X",
+        "03902": "AB889X",
+        "03903": "AB889X",
+        "03904": "AB889X",
+        "03905": "AB889X",
+        "03906": "AB889X",
+        "03907": "AB889X",
+        "03908": "AB889X",
+        "03909": "AB889X",
+        "03910": "AB889X",
+        "03911": "AB889X",
+        "04001": "AB889X",
+        "04002": "AB889X",
+        "04003": "AB889X",
+        "04004": "AB889X",
+        "04005": "AB889X",
+        "04006": "AB889X",
+        "04007": "AB889X",
+        "04008": "AB889X",
+        "04009": "AB889X",
+        "04010": "AB889X",
+        "04011": "AB889X",
+        "04013": "AB889X",
+        "04014": "AB889X",
+        "04015": "AB889X",
+        "04016": "AB889X",
+        "04017": "AB889X",
+        "04019": "AB889X",
+        "04020": "AB889X",
+        "04021": "AB889X",
+        "04022": "AB889X",
+        "04024": "AB889X",
+        "04027": "AB889X",
+        "04028": "AB889X",
+        "04029": "AB889X",
+        "04030": "AB889X",
+        "04032": "AB889X",
+        "04033": "AB889X",
+        "04034": "AB889X",
+        "04037": "AB889X",
+        "04038": "AB889X",
+        "04039": "AB889X",
+        "04040": "AB889X",
+        "04041": "AB889X",
+        "04042": "AB889X",
+        "04043": "AB889X",
+        "04046": "AB889X",
+        "04047": "AB889X",
+        "04048": "AB889X",
+        "04049": "AB889X",
+        "04050": "AB889X",
+        "04051": "AB889X",
+        "04054": "AB889X",
+        "04055": "AB889X",
+        "04056": "AB889X",
+        "04057": "AB889X",
+        "04061": "AB889X",
+        "04062": "AB889X",
+        "04063": "AB889X",
+        "04064": "AB889X",
+        "04066": "AB889X",
+        "04068": "AB889X",
+        "04069": "AB889X",
+        "04070": "AB889X",
+        "04071": "AB889X",
+        "04072": "AB889X",
+        "04073": "AB889X",
+        "04074": "AB889X",
+        "04075": "AB889X",
+        "04076": "AB889X",
+        "04077": "AB889X",
+        "04078": "AB889X",
+        "04079": "AB889X",
+        "04082": "AB889X",
+        "04083": "AB889X",
+        "04084": "AB889X",
+        "04085": "AB889X",
+        "04086": "AB889X",
+        "04087": "AB889X",
+        "04088": "AB889X",
+        "04090": "AB889X",
+        "04091": "AB889X",
+        "04092": "AB889X",
+        "04093": "AB889X",
+        "04094": "AB889X",
+        "04095": "AB889X",
+        "04096": "AB889X",
+        "04097": "AB889X",
+        "04098": "AB889X",
+        "04101": "AB889X",
+        "04102": "AB889X",
+        "04103": "AB889X",
+        "04104": "AB889X",
+        "04105": "AB889X",
+        "04106": "AB889X",
+        "04107": "AB889X",
+        "04108": "AB889X",
+        "04109": "AB889X",
+        "04110": "AB889X",
+        "04112": "AB889X",
+        "04116": "AB889X",
+        "04122": "AB889X",
+        "04123": "AB889X",
+        "04124": "AB889X",
+        "04210": "AB889X",
+        "04211": "AB889X",
+        "04212": "AB889X",
+        "04216": "AB889X",
+        "04217": "AB889X",
+        "04219": "AB889X",
+        "04220": "AB889X",
+        "04221": "AB889X",
+        "04222": "AB889X",
+        "04223": "AB889X",
+        "04224": "AB889X",
+        "04225": "AB889X",
+        "04226": "AB889X",
+        "04227": "AB889X",
+        "04228": "AB889X",
+        "04230": "AB889X",
+        "04231": "AB889X",
+        "04234": "AB889X",
+        "04236": "AB889X",
+        "04237": "AB889X",
+        "04238": "AB889X",
+        "04239": "AB889X",
+        "04240": "AB889X",
+        "04241": "AB889X",
+        "04243": "AB889X",
+        "04250": "AB889X",
+        "04252": "AB889X",
+        "04253": "AB889X",
+        "04254": "AB889X",
+        "04255": "AB889X",
+        "04256": "AB889X",
+        "04257": "AB889X",
+        "04258": "AB889X",
+        "04259": "AB889X",
+        "04260": "AB889X",
+        "04261": "AB889X",
+        "04262": "AB889X",
+        "04263": "AB889X",
+        "04265": "AB889X",
+        "04266": "AB889X",
+        "04267": "AB889X",
+        "04268": "AB889X",
+        "04270": "AB889X",
+        "04271": "AB889X",
+        "04274": "AB889X",
+        "04275": "AB889X",
+        "04276": "AB889X",
+        "04278": "AB889X",
+        "04280": "AB889X",
+        "04281": "AB889X",
+        "04282": "AB889X",
+        "04284": "AB889X",
+        "04285": "AB889X",
+        "04286": "AB889X",
+        "04287": "AB889X",
+        "04288": "AB889X",
+        "04289": "AB889X",
+        "04290": "AB889X",
+        "04291": "AB889X",
+        "04292": "AB889X",
+        "04294": "AB889X",
+        "04330": "AB889X",
+        "04332": "AB889X",
+        "04333": "AB889X",
+        "04336": "AB889X",
+        "04338": "AB889X",
+        "04341": "AB889X",
+        "04342": "AB889X",
+        "04343": "AB889X",
+        "04344": "AB889X",
+        "04345": "AB889X",
+        "04346": "AB889X",
+        "04347": "AB889X",
+        "04348": "AB889X",
+        "04349": "AB889X",
+        "04350": "AB889X",
+        "04351": "AB889X",
+        "04352": "AB889X",
+        "04353": "AB889X",
+        "04354": "AB889X",
+        "04355": "AB889X",
+        "04357": "AB889X",
+        "04358": "AB889X",
+        "04359": "AB889X",
+        "04360": "AB889X",
+        "04363": "AB889X",
+        "04364": "AB889X",
+        "04401": "AB889X",
+        "04402": "AB889X",
+        "04406": "AB889X",
+        "04408": "AB889X",
+        "04410": "AB889X",
+        "04411": "AB889X",
+        "04412": "AB889X",
+        "04413": "AB889X",
+        "04414": "AB889X",
+        "04415": "AB889X",
+        "04416": "AB889X",
+        "04417": "AB889X",
+        "04418": "AB889X",
+        "04419": "AB889X",
+        "04420": "AB889X",
+        "04421": "AB889X",
+        "04422": "AB889X",
+        "04424": "AB889X",
+        "04426": "AB889X",
+        "04427": "AB889X",
+        "04428": "AB889X",
+        "04429": "AB889X",
+        "04430": "AB889X",
+        "04431": "AB889X",
+        "04434": "AB889X",
+        "04435": "AB889X",
+        "04438": "AB889X",
+        "04441": "AB889X",
+        "04442": "AB889X",
+        "04443": "AB889X",
+        "04444": "AB889X",
+        "04448": "AB889X",
+        "04449": "AB889X",
+        "04450": "AB889X",
+        "04451": "AB889X",
+        "04453": "AB889X",
+        "04454": "AB889X",
+        "04455": "AB889X",
+        "04456": "AB889X",
+        "04457": "AB889X",
+        "04459": "AB889X",
+        "04460": "AB889X",
+        "04461": "AB889X",
+        "04462": "AB889X",
+        "04463": "AB889X",
+        "04464": "AB889X",
+        "04467": "AB889X",
+        "04468": "AB889X",
+        "04469": "AB889X",
+        "04471": "AB889X",
+        "04472": "AB889X",
+        "04473": "AB889X",
+        "04474": "AB889X",
+        "04475": "AB889X",
+        "04476": "AB889X",
+        "04478": "AB889X",
+        "04479": "AB889X",
+        "04481": "AB889X",
+        "04485": "AB889X",
+        "04487": "AB889X",
+        "04488": "AB889X",
+        "04489": "AB889X",
+        "04490": "AB889X",
+        "04491": "AB889X",
+        "04492": "AB889X",
+        "04493": "AB889X",
+        "04495": "AB889X",
+        "04496": "AB889X",
+        "04497": "AB889X",
+        "04530": "AB889X",
+        "04535": "AB889X",
+        "04537": "AB889X",
+        "04538": "AB889X",
+        "04539": "AB889X",
+        "04541": "AB889X",
+        "04543": "AB889X",
+        "04544": "AB889X",
+        "04547": "AB889X",
+        "04548": "AB889X",
+        "04549": "AB889X",
+        "04551": "AB889X",
+        "04553": "AB889X",
+        "04554": "AB889X",
+        "04555": "AB889X",
+        "04556": "AB889X",
+        "04558": "AB889X",
+        "04562": "AB889X",
+        "04563": "AB889X",
+        "04564": "AB889X",
+        "04565": "AB889X",
+        "04568": "AB889X",
+        "04570": "AB889X",
+        "04571": "AB889X",
+        "04572": "AB889X",
+        "04573": "AB889X",
+        "04574": "AB889X",
+        "04575": "AB889X",
+        "04576": "AB889X",
+        "04578": "AB889X",
+        "04579": "AB889X",
+        "04605": "AB889X",
+        "04606": "AB889X",
+        "04607": "AB889X",
+        "04609": "AB889X",
+        "04611": "AB889X",
+        "04612": "AB889X",
+        "04613": "AB889X",
+        "04614": "AB889X",
+        "04616": "AB889X",
+        "04617": "AB889X",
+        "04619": "AB889X",
+        "04622": "AB889X",
+        "04623": "AB889X",
+        "04624": "AB889X",
+        "04625": "AB889X",
+        "04626": "AB889X",
+        "04627": "AB889X",
+        "04628": "AB889X",
+        "04629": "AB889X",
+        "04630": "AB889X",
+        "04631": "AB889X",
+        "04634": "AB889X",
+        "04635": "AB889X",
+        "04637": "AB889X",
+        "04640": "AB889X",
+        "04642": "AB889X",
+        "04643": "AB889X",
+        "04644": "AB889X",
+        "04645": "AB889X",
+        "04646": "AB889X",
+        "04648": "AB889X",
+        "04649": "AB889X",
+        "04650": "AB889X",
+        "04652": "AB889X",
+        "04653": "AB889X",
+        "04654": "AB889X",
+        "04655": "AB889X",
+        "04657": "AB889X",
+        "04658": "AB889X",
+        "04660": "AB889X",
+        "04662": "AB889X",
+        "04664": "AB889X",
+        "04666": "AB889X",
+        "04667": "AB889X",
+        "04668": "AB889X",
+        "04669": "AB889X",
+        "04671": "AB889X",
+        "04672": "AB889X",
+        "04673": "AB889X",
+        "04674": "AB889X",
+        "04675": "AB889X",
+        "04676": "AB889X",
+        "04677": "AB889X",
+        "04679": "AB889X",
+        "04680": "AB889X",
+        "04681": "AB889X",
+        "04683": "AB889X",
+        "04684": "AB889X",
+        "04685": "AB889X",
+        "04686": "AB889X",
+        "04691": "AB889X",
+        "04693": "AB889X",
+        "04694": "AB889X",
+        "04730": "AB889X",
+        "04732": "AB889X",
+        "04733": "AB889X",
+        "04734": "AB889X",
+        "04735": "AB889X",
+        "04736": "AB889X",
+        "04737": "AB889X",
+        "04738": "AB889X",
+        "04739": "AB889X",
+        "04740": "AB889X",
+        "04741": "AB889X",
+        "04742": "AB889X",
+        "04743": "AB889X",
+        "04744": "AB889X",
+        "04745": "AB889X",
+        "04746": "AB889X",
+        "04747": "AB889X",
+        "04750": "AB889X",
+        "04751": "AB889X",
+        "04756": "AB889X",
+        "04757": "AB889X",
+        "04758": "AB889X",
+        "04760": "AB889X",
+        "04761": "AB889X",
+        "04762": "AB889X",
+        "04763": "AB889X",
+        "04764": "AB889X",
+        "04765": "AB889X",
+        "04766": "AB889X",
+        "04768": "AB889X",
+        "04769": "AB889X",
+        "04772": "AB889X",
+        "04773": "AB889X",
+        "04774": "AB889X",
+        "04775": "AB889X",
+        "04776": "AB889X",
+        "04777": "AB889X",
+        "04779": "AB889X",
+        "04780": "AB889X",
+        "04781": "AB889X",
+        "04783": "AB889X",
+        "04785": "AB889X",
+        "04786": "AB889X",
+        "04787": "AB889X",
+        "04841": "AB889X",
+        "04843": "AB889X",
+        "04846": "AB889X",
+        "04847": "AB889X",
+        "04848": "AB889X",
+        "04849": "AB889X",
+        "04850": "AB889X",
+        "04851": "AB889X",
+        "04852": "AB889X",
+        "04853": "AB889X",
+        "04854": "AB889X",
+        "04855": "AB889X",
+        "04856": "AB889X",
+        "04858": "AB889X",
+        "04859": "AB889X",
+        "04860": "AB889X",
+        "04861": "AB889X",
+        "04862": "AB889X",
+        "04863": "AB889X",
+        "04864": "AB889X",
+        "04865": "AB889X",
+        "04901": "AB889X",
+        "04903": "AB889X",
+        "04910": "AB889X",
+        "04911": "AB889X",
+        "04912": "AB889X",
+        "04915": "AB889X",
+        "04917": "AB889X",
+        "04918": "AB889X",
+        "04920": "AB889X",
+        "04921": "AB889X",
+        "04922": "AB889X",
+        "04923": "AB889X",
+        "04924": "AB889X",
+        "04925": "AB889X",
+        "04926": "AB889X",
+        "04927": "AB889X",
+        "04928": "AB889X",
+        "04929": "AB889X",
+        "04930": "AB889X",
+        "04932": "AB889X",
+        "04933": "AB889X",
+        "04935": "AB889X",
+        "04936": "AB889X",
+        "04937": "AB889X",
+        "04938": "AB889X",
+        "04939": "AB889X",
+        "04940": "AB889X",
+        "04941": "AB889X",
+        "04942": "AB889X",
+        "04943": "AB889X",
+        "04944": "AB889X",
+        "04945": "AB889X",
+        "04947": "AB889X",
+        "04949": "AB889X",
+        "04950": "AB889X",
+        "04951": "AB889X",
+        "04952": "AB889X",
+        "04953": "AB889X",
+        "04954": "AB889X",
+        "04955": "AB889X",
+        "04956": "AB889X",
+        "04957": "AB889X",
+        "04958": "AB889X",
+        "04961": "AB889X",
+        "04962": "AB889X",
+        "04963": "AB889X",
+        "04964": "AB889X",
+        "04965": "AB889X",
+        "04966": "AB889X",
+        "04967": "AB889X",
+        "04969": "AB889X",
+        "04970": "AB889X",
+        "04971": "AB889X",
+        "04972": "AB889X",
+        "04973": "AB889X",
+        "04974": "AB889X",
+        "04975": "AB889X",
+        "04976": "AB889X",
+        "04978": "AB889X",
+        "04979": "AB889X",
+        "04981": "AB889X",
+        "04982": "AB889X",
+        "04983": "AB889X",
+        "04984": "AB889X",
+        "04985": "AB889X",
+        "04986": "AB889X",
+        "04987": "AB889X",
+        "04988": "AB889X",
+        "04989": "AB889X",
+        "04992": "AB889X",
+        "05001": "AB889X",
+        "05009": "AB889X",
+        "05030": "AB889X",
+        "05031": "AB889X",
+        "05032": "AB889X",
+        "05033": "AB889X",
+        "05034": "AB889X",
+        "05035": "AB889X",
+        "05036": "AB889X",
+        "05037": "AB889X",
+        "05038": "AB889X",
+        "05039": "AB889X",
+        "05040": "AB889X",
+        "05041": "AB889X",
+        "05042": "AB889X",
+        "05043": "AB889X",
+        "05045": "AB889X",
+        "05046": "AB889X",
+        "05047": "AB889X",
+        "05048": "AB889X",
+        "05049": "AB889X",
+        "05050": "AB889X",
+        "05051": "AB889X",
+        "05052": "AB889X",
+        "05053": "AB889X",
+        "05054": "AB889X",
+        "05055": "AB889X",
+        "05056": "AB889X",
+        "05058": "AB889X",
+        "05059": "AB889X",
+        "05060": "AB889X",
+        "05061": "AB889X",
+        "05062": "AB889X",
+        "05065": "AB889X",
+        "05067": "AB889X",
+        "05068": "AB889X",
+        "05069": "AB889X",
+        "05070": "AB889X",
+        "05071": "AB889X",
+        "05072": "AB889X",
+        "05073": "AB889X",
+        "05074": "AB889X",
+        "05075": "AB889X",
+        "05076": "AB889X",
+        "05077": "AB889X",
+        "05079": "AB889X",
+        "05081": "AB889X",
+        "05083": "AB889X",
+        "05084": "AB889X",
+        "05085": "AB889X",
+        "05086": "AB889X",
+        "05088": "AB889X",
+        "05089": "AB889X",
+        "05091": "AB889X",
+        "05101": "AB889X",
+        "05141": "AB889X",
+        "05142": "AB889X",
+        "05143": "AB889X",
+        "05144": "AB889X",
+        "05146": "AB889X",
+        "05148": "AB889X",
+        "05149": "AB889X",
+        "05150": "AB889X",
+        "05151": "AB889X",
+        "05152": "AB889X",
+        "05153": "AB889X",
+        "05154": "AB889X",
+        "05155": "AB889X",
+        "05156": "AB889X",
+        "05158": "AB889X",
+        "05159": "AB889X",
+        "05161": "AB889X",
+        "05201": "AB889X",
+        "05250": "AB889X",
+        "05251": "AB889X",
+        "05252": "AB889X",
+        "05253": "AB889X",
+        "05254": "AB889X",
+        "05255": "AB889X",
+        "05257": "AB889X",
+        "05260": "AB889X",
+        "05261": "AB889X",
+        "05262": "AB889X",
+        "05301": "AB889X",
+        "05302": "AB889X",
+        "05303": "AB889X",
+        "05304": "AB889X",
+        "05340": "AB889X",
+        "05341": "AB889X",
+        "05342": "AB889X",
+        "05343": "AB889X",
+        "05344": "AB889X",
+        "05345": "AB889X",
+        "05346": "AB889X",
+        "05350": "AB889X",
+        "05351": "AB889X",
+        "05352": "AB889X",
+        "05353": "AB889X",
+        "05354": "AB889X",
+        "05355": "AB889X",
+        "05356": "AB889X",
+        "05357": "AB889X",
+        "05358": "AB889X",
+        "05359": "AB889X",
+        "05360": "AB889X",
+        "05361": "AB889X",
+        "05362": "AB889X",
+        "05363": "AB889X",
+        "05401": "AB889X",
+        "05402": "AB889X",
+        "05403": "AB889X",
+        "05404": "AB889X",
+        "05405": "AB889X",
+        "05406": "AB889X",
+        "05407": "AB889X",
+        "05408": "AB889X",
+        "05439": "AB889X",
+        "05440": "AB889X",
+        "05441": "AB889X",
+        "05442": "AB889X",
+        "05443": "AB889X",
+        "05444": "AB889X",
+        "05445": "AB889X",
+        "05446": "AB889X",
+        "05447": "AB889X",
+        "05448": "AB889X",
+        "05449": "AB889X",
+        "05450": "AB889X",
+        "05451": "AB889X",
+        "05452": "AB889X",
+        "05453": "AB889X",
+        "05454": "AB889X",
+        "05455": "AB889X",
+        "05456": "AB889X",
+        "05457": "AB889X",
+        "05458": "AB889X",
+        "05459": "AB889X",
+        "05460": "AB889X",
+        "05461": "AB889X",
+        "05462": "AB889X",
+        "05463": "AB889X",
+        "05464": "AB889X",
+        "05465": "AB889X",
+        "05466": "AB889X",
+        "05468": "AB889X",
+        "05469": "AB889X",
+        "05470": "AB889X",
+        "05471": "AB889X",
+        "05472": "AB889X",
+        "05473": "AB889X",
+        "05474": "AB889X",
+        "05476": "AB889X",
+        "05477": "AB889X",
+        "05478": "AB889X",
+        "05479": "AB889X",
+        "05481": "AB889X",
+        "05482": "AB889X",
+        "05483": "AB889X",
+        "05485": "AB889X",
+        "05486": "AB889X",
+        "05487": "AB889X",
+        "05488": "AB889X",
+        "05489": "AB889X",
+        "05490": "AB889X",
+        "05491": "AB889X",
+        "05492": "AB889X",
+        "05494": "AB889X",
+        "05495": "AB889X",
+        "05501": "AB889X",
+        "05544": "AB889X",
+        "05601": "AB889X",
+        "05602": "AB889X",
+        "05603": "AB889X",
+        "05604": "AB889X",
+        "05609": "AB889X",
+        "05620": "AB889X",
+        "05633": "AB889X",
+        "05640": "AB889X",
+        "05641": "AB889X",
+        "05647": "AB889X",
+        "05648": "AB889X",
+        "05649": "AB889X",
+        "05650": "AB889X",
+        "05651": "AB889X",
+        "05652": "AB889X",
+        "05653": "AB889X",
+        "05654": "AB889X",
+        "05655": "AB889X",
+        "05656": "AB889X",
+        "05657": "AB889X",
+        "05658": "AB889X",
+        "05660": "AB889X",
+        "05661": "AB889X",
+        "05662": "AB889X",
+        "05663": "AB889X",
+        "05664": "AB889X",
+        "05665": "AB889X",
+        "05666": "AB889X",
+        "05667": "AB889X",
+        "05669": "AB889X",
+        "05670": "AB889X",
+        "05671": "AB889X",
+        "05672": "AB889X",
+        "05673": "AB889X",
+        "05674": "AB889X",
+        "05675": "AB889X",
+        "05676": "AB889X",
+        "05677": "AB889X",
+        "05678": "AB889X",
+        "05679": "AB889X",
+        "05680": "AB889X",
+        "05681": "AB889X",
+        "05682": "AB889X",
+        "05701": "AB889X",
+        "05702": "AB889X",
+        "05730": "AB889X",
+        "05731": "AB889X",
+        "05732": "AB889X",
+        "05733": "AB889X",
+        "05734": "AB889X",
+        "05735": "AB889X",
+        "05736": "AB889X",
+        "05737": "AB889X",
+        "05738": "AB889X",
+        "05739": "AB889X",
+        "05740": "AB889X",
+        "05741": "AB889X",
+        "05742": "AB889X",
+        "05743": "AB889X",
+        "05744": "AB889X",
+        "05745": "AB889X",
+        "05746": "AB889X",
+        "05747": "AB889X",
+        "05748": "AB889X",
+        "05750": "AB889X",
+        "05751": "AB889X",
+        "05753": "AB889X",
+        "05757": "AB889X",
+        "05758": "AB889X",
+        "05759": "AB889X",
+        "05760": "AB889X",
+        "05761": "AB889X",
+        "05762": "AB889X",
+        "05763": "AB889X",
+        "05764": "AB889X",
+        "05765": "AB889X",
+        "05766": "AB889X",
+        "05767": "AB889X",
+        "05768": "AB889X",
+        "05769": "AB889X",
+        "05770": "AB889X",
+        "05772": "AB889X",
+        "05773": "AB889X",
+        "05774": "AB889X",
+        "05775": "AB889X",
+        "05776": "AB889X",
+        "05777": "AB889X",
+        "05778": "AB889X",
+        "05819": "AB889X",
+        "05820": "AB889X",
+        "05821": "AB889X",
+        "05822": "AB889X",
+        "05823": "AB889X",
+        "05824": "AB889X",
+        "05825": "AB889X",
+        "05826": "AB889X",
+        "05827": "AB889X",
+        "05828": "AB889X",
+        "05829": "AB889X",
+        "05830": "AB889X",
+        "05832": "AB889X",
+        "05833": "AB889X",
+        "05836": "AB889X",
+        "05837": "AB889X",
+        "05838": "AB889X",
+        "05839": "AB889X",
+        "05840": "AB889X",
+        "05841": "AB889X",
+        "05842": "AB889X",
+        "05843": "AB889X",
+        "05845": "AB889X",
+        "05846": "AB889X",
+        "05847": "AB889X",
+        "05848": "AB889X",
+        "05849": "AB889X",
+        "05850": "AB889X",
+        "05851": "AB889X",
+        "05853": "AB889X",
+        "05855": "AB889X",
+        "05857": "AB889X",
+        "05858": "AB889X",
+        "05859": "AB889X",
+        "05860": "AB889X",
+        "05861": "AB889X",
+        "05862": "AB889X",
+        "05863": "AB889X",
+        "05866": "AB889X",
+        "05867": "AB889X",
+        "05868": "AB889X",
+        "05871": "AB889X",
+        "05872": "AB889X",
+        "05873": "AB889X",
+        "05874": "AB889X",
+        "05875": "AB889X",
+        "05901": "AB889X",
+        "05902": "AB889X",
+        "05903": "AB889X",
+        "05904": "AB889X",
+        "05905": "AB889X",
+        "05906": "AB889X",
+        "05907": "AB889X",
+        "06001": "AB890X",
+        "06002": "AB890X",
+        "06006": "AB890X",
+        "06010": "AB890X",
+        "06011": "AB890X",
+        "06013": "AB890X",
+        "06016": "AB890X",
+        "06018": "AB890X",
+        "06019": "AB890X",
+        "06020": "AB890X",
+        "06021": "AB890X",
+        "06022": "AB890X",
+        "06023": "AB890X",
+        "06024": "AB890X",
+        "06025": "AB890X",
+        "06026": "AB890X",
+        "06027": "AB890X",
+        "06028": "AB890X",
+        "06029": "AB890X",
+        "06030": "AB890X",
+        "06031": "AB890X",
+        "06032": "AB890X",
+        "06033": "AB890X",
+        "06034": "AB890X",
+        "06035": "AB890X",
+        "06037": "AB890X",
+        "06039": "AB890X",
+        "06040": "AB890X",
+        "06041": "AB890X",
+        "06042": "AB890X",
+        "06043": "AB890X",
+        "06045": "AB890X",
+        "06050": "AB890X",
+        "06051": "AB890X",
+        "06052": "AB890X",
+        "06053": "AB890X",
+        "06057": "AB890X",
+        "06058": "AB890X",
+        "06059": "AB890X",
+        "06060": "AB890X",
+        "06061": "AB890X",
+        "06062": "AB890X",
+        "06063": "AB890X",
+        "06064": "AB890X",
+        "06065": "AB890X",
+        "06066": "AB890X",
+        "06067": "AB890X",
+        "06068": "AB890X",
+        "06069": "AB890X",
+        "06070": "AB890X",
+        "06071": "AB890X",
+        "06072": "AB890X",
+        "06073": "AB890X",
+        "06074": "AB890X",
+        "06075": "AB890X",
+        "06076": "AB890X",
+        "06077": "AB890X",
+        "06078": "AB890X",
+        "06079": "AB890X",
+        "06080": "AB890X",
+        "06081": "AB890X",
+        "06082": "AB890X",
+        "06083": "AB890X",
+        "06084": "AB890X",
+        "06085": "AB890X",
+        "06087": "AB890X",
+        "06088": "AB890X",
+        "06089": "AB890X",
+        "06090": "AB890X",
+        "06091": "AB890X",
+        "06092": "AB890X",
+        "06093": "AB890X",
+        "06094": "AB890X",
+        "06095": "AB890X",
+        "06096": "AB890X",
+        "06098": "AB890X",
+        "06101": "AB890X",
+        "06102": "AB890X",
+        "06103": "AB890X",
+        "06104": "AB890X",
+        "06105": "AB890X",
+        "06106": "AB890X",
+        "06107": "AB890X",
+        "06108": "AB890X",
+        "06109": "AB890X",
+        "06110": "AB890X",
+        "06111": "AB890X",
+        "06112": "AB890X",
+        "06114": "AB890X",
+        "06115": "AB890X",
+        "06117": "AB890X",
+        "06118": "AB890X",
+        "06119": "AB890X",
+        "06120": "AB890X",
+        "06123": "AB890X",
+        "06126": "AB890X",
+        "06127": "AB890X",
+        "06128": "AB890X",
+        "06129": "AB890X",
+        "06131": "AB890X",
+        "06132": "AB890X",
+        "06133": "AB890X",
+        "06134": "AB890X",
+        "06137": "AB890X",
+        "06138": "AB890X",
+        "06140": "AB890X",
+        "06141": "AB890X",
+        "06142": "AB890X",
+        "06143": "AB890X",
+        "06144": "AB890X",
+        "06145": "AB890X",
+        "06146": "AB890X",
+        "06147": "AB890X",
+        "06150": "AB890X",
+        "06151": "AB890X",
+        "06152": "AB890X",
+        "06153": "AB890X",
+        "06154": "AB890X",
+        "06155": "AB890X",
+        "06156": "AB890X",
+        "06160": "AB890X",
+        "06161": "AB890X",
+        "06167": "AB890X",
+        "06176": "AB890X",
+        "06180": "AB890X",
+        "06183": "AB890X",
+        "06199": "AB890X",
+        "06226": "AB890X",
+        "06230": "AB890X",
+        "06231": "AB890X",
+        "06232": "AB890X",
+        "06233": "AB890X",
+        "06234": "AB890X",
+        "06235": "AB890X",
+        "06237": "AB890X",
+        "06238": "AB890X",
+        "06239": "AB890X",
+        "06241": "AB890X",
+        "06242": "AB890X",
+        "06243": "AB890X",
+        "06244": "AB890X",
+        "06245": "AB890X",
+        "06246": "AB890X",
+        "06247": "AB890X",
+        "06248": "AB890X",
+        "06249": "AB890X",
+        "06250": "AB890X",
+        "06251": "AB890X",
+        "06254": "AB890X",
+        "06255": "AB890X",
+        "06256": "AB890X",
+        "06258": "AB890X",
+        "06259": "AB890X",
+        "06260": "AB890X",
+        "06262": "AB890X",
+        "06263": "AB890X",
+        "06264": "AB890X",
+        "06265": "AB890X",
+        "06266": "AB890X",
+        "06267": "AB890X",
+        "06268": "AB890X",
+        "06269": "AB890X",
+        "06277": "AB890X",
+        "06278": "AB890X",
+        "06279": "AB890X",
+        "06280": "AB890X",
+        "06281": "AB890X",
+        "06282": "AB890X",
+        "06320": "AB890X",
+        "06330": "AB890X",
+        "06331": "AB890X",
+        "06332": "AB890X",
+        "06333": "AB890X",
+        "06334": "AB890X",
+        "06335": "AB890X",
+        "06336": "AB890X",
+        "06338": "AB890X",
+        "06339": "AB890X",
+        "06340": "AB890X",
+        "06349": "AB890X",
+        "06350": "AB890X",
+        "06351": "AB890X",
+        "06353": "AB890X",
+        "06354": "AB890X",
+        "06355": "AB890X",
+        "06357": "AB890X",
+        "06359": "AB890X",
+        "06360": "AB890X",
+        "06365": "AB890X",
+        "06370": "AB890X",
+        "06371": "AB890X",
+        "06372": "AB890X",
+        "06373": "AB890X",
+        "06374": "AB890X",
+        "06375": "AB890X",
+        "06376": "AB890X",
+        "06377": "AB890X",
+        "06378": "AB890X",
+        "06379": "AB890X",
+        "06380": "AB890X",
+        "06382": "AB890X",
+        "06383": "AB890X",
+        "06384": "AB890X",
+        "06385": "AB890X",
+        "06386": "AB890X",
+        "06387": "AB890X",
+        "06388": "AB890X",
+        "06389": "AB890X",
+        "06390": "AB890X",
+        "06401": "AB890X",
+        "06403": "AB890X",
+        "06404": "AB890X",
+        "06405": "AB890X",
+        "06408": "AB890X",
+        "06409": "AB890X",
+        "06410": "AB890X",
+        "06411": "AB890X",
+        "06412": "AB890X",
+        "06413": "AB890X",
+        "06414": "AB890X",
+        "06415": "AB890X",
+        "06416": "AB890X",
+        "06417": "AB890X",
+        "06418": "AB890X",
+        "06419": "AB890X",
+        "06420": "AB890X",
+        "06422": "AB890X",
+        "06423": "AB890X",
+        "06424": "AB890X",
+        "06426": "AB890X",
+        "06437": "AB890X",
+        "06438": "AB890X",
+        "06439": "AB890X",
+        "06440": "AB890X",
+        "06441": "AB890X",
+        "06442": "AB890X",
+        "06443": "AB890X",
+        "06444": "AB890X",
+        "06447": "AB890X",
+        "06450": "AB890X",
+        "06451": "AB890X",
+        "06454": "AB890X",
+        "06455": "AB890X",
+        "06456": "AB890X",
+        "06457": "AB890X",
+        "06459": "AB890X",
+        "06460": "AB890X",
+        "06461": "AB890X",
+        "06467": "AB890X",
+        "06468": "AB890X",
+        "06469": "AB890X",
+        "06470": "AB890X",
+        "06471": "AB890X",
+        "06472": "AB890X",
+        "06473": "AB890X",
+        "06474": "AB890X",
+        "06475": "AB890X",
+        "06477": "AB890X",
+        "06478": "AB890X",
+        "06479": "AB890X",
+        "06480": "AB890X",
+        "06481": "AB890X",
+        "06482": "AB890X",
+        "06483": "AB890X",
+        "06484": "AB890X",
+        "06487": "AB890X",
+        "06488": "AB890X",
+        "06489": "AB890X",
+        "06491": "AB890X",
+        "06492": "AB890X",
+        "06493": "AB890X",
+        "06494": "AB890X",
+        "06495": "AB890X",
+        "06497": "AB890X",
+        "06498": "AB890X",
+        "06501": "AB890X",
+        "06502": "AB890X",
+        "06503": "AB890X",
+        "06504": "AB890X",
+        "06505": "AB890X",
+        "06506": "AB890X",
+        "06507": "AB890X",
+        "06508": "AB890X",
+        "06509": "AB890X",
+        "06510": "AB890X",
+        "06511": "AB890X",
+        "06512": "AB890X",
+        "06513": "AB890X",
+        "06514": "AB890X",
+        "06515": "AB890X",
+        "06516": "AB890X",
+        "06517": "AB890X",
+        "06518": "AB890X",
+        "06519": "AB890X",
+        "06520": "AB890X",
+        "06521": "AB890X",
+        "06524": "AB890X",
+        "06525": "AB890X",
+        "06530": "AB890X",
+        "06531": "AB890X",
+        "06532": "AB890X",
+        "06533": "AB890X",
+        "06534": "AB890X",
+        "06535": "AB890X",
+        "06536": "AB890X",
+        "06537": "AB890X",
+        "06538": "AB890X",
+        "06540": "AB890X",
+        "06601": "AB890X",
+        "06602": "AB890X",
+        "06604": "AB890X",
+        "06605": "AB890X",
+        "06606": "AB890X",
+        "06607": "AB890X",
+        "06608": "AB890X",
+        "06610": "AB890X",
+        "06611": "AB890X",
+        "06612": "AB890X",
+        "06614": "AB890X",
+        "06615": "AB890X",
+        "06650": "AB890X",
+        "06673": "AB890X",
+        "06699": "AB890X",
+        "06701": "AB890X",
+        "06702": "AB890X",
+        "06703": "AB890X",
+        "06704": "AB890X",
+        "06705": "AB890X",
+        "06706": "AB890X",
+        "06708": "AB890X",
+        "06710": "AB890X",
+        "06712": "AB890X",
+        "06716": "AB890X",
+        "06720": "AB890X",
+        "06721": "AB890X",
+        "06722": "AB890X",
+        "06723": "AB890X",
+        "06724": "AB890X",
+        "06725": "AB890X",
+        "06726": "AB890X",
+        "06749": "AB890X",
+        "06750": "AB890X",
+        "06751": "AB890X",
+        "06752": "AB890X",
+        "06753": "AB890X",
+        "06754": "AB890X",
+        "06755": "AB890X",
+        "06756": "AB890X",
+        "06757": "AB890X",
+        "06758": "AB890X",
+        "06759": "AB890X",
+        "06762": "AB890X",
+        "06763": "AB890X",
+        "06770": "AB890X",
+        "06776": "AB890X",
+        "06777": "AB890X",
+        "06778": "AB890X",
+        "06779": "AB890X",
+        "06781": "AB890X",
+        "06782": "AB890X",
+        "06783": "AB890X",
+        "06784": "AB890X",
+        "06785": "AB890X",
+        "06786": "AB890X",
+        "06787": "AB890X",
+        "06790": "AB890X",
+        "06791": "AB890X",
+        "06792": "AB890X",
+        "06793": "AB890X",
+        "06794": "AB890X",
+        "06795": "AB890X",
+        "06796": "AB890X",
+        "06798": "AB890X",
+        "06801": "AB890X",
+        "06804": "AB890X",
+        "06807": "AB890X",
+        "06810": "AB890X",
+        "06811": "AB890X",
+        "06812": "AB890X",
+        "06813": "AB890X",
+        "06814": "AB890X",
+        "06816": "AB890X",
+        "06817": "AB890X",
+        "06820": "AB890X",
+        "06824": "AB890X",
+        "06825": "AB890X",
+        "06828": "AB890X",
+        "06829": "AB890X",
+        "06830": "AB890X",
+        "06831": "AB890X",
+        "06832": "AB890X",
+        "06836": "AB890X",
+        "06838": "AB890X",
+        "06840": "AB890X",
+        "06842": "AB890X",
+        "06850": "AB890X",
+        "06851": "AB890X",
+        "06852": "AB890X",
+        "06853": "AB890X",
+        "06854": "AB890X",
+        "06855": "AB890X",
+        "06856": "AB890X",
+        "06857": "AB890X",
+        "06858": "AB890X",
+        "06859": "AB890X",
+        "06860": "AB890X",
+        "06870": "AB890X",
+        "06875": "AB890X",
+        "06876": "AB890X",
+        "06877": "AB890X",
+        "06878": "AB890X",
+        "06879": "AB890X",
+        "06880": "AB890X",
+        "06881": "AB890X",
+        "06883": "AB890X",
+        "06888": "AB890X",
+        "06889": "AB890X",
+        "06890": "AB890X",
+        "06896": "AB890X",
+        "06897": "AB890X",
+        "06901": "AB890X",
+        "06902": "AB890X",
+        "06903": "AB890X",
+        "06904": "AB890X",
+        "06905": "AB890X",
+        "06906": "AB890X",
+        "06907": "AB890X",
+        "06910": "AB890X",
+        "06911": "AB890X",
+        "06912": "AB890X",
+        "06913": "AB890X",
+        "06914": "AB890X",
+        "06920": "AB890X",
+        "06921": "AB890X",
+        "06922": "AB890X",
+        "06925": "AB890X",
+        "06926": "AB890X",
+        "06927": "AB890X",
+        "06928": "AB890X",
+        "07001": "AB890X",
+        "07002": "AB890X",
+        "07003": "AB890X",
+        "07004": "AB890X",
+        "07005": "AB890X",
+        "07006": "AB890X",
+        "07007": "AB890X",
+        "07008": "AB890X",
+        "07009": "AB890X",
+        "07010": "AB890X",
+        "07011": "AB890X",
+        "07012": "AB890X",
+        "07013": "AB890X",
+        "07014": "AB890X",
+        "07015": "AB890X",
+        "07016": "AB890X",
+        "07017": "AB890X",
+        "07018": "AB890X",
+        "07019": "AB890X",
+        "07020": "AB890X",
+        "07021": "AB890X",
+        "07022": "AB890X",
+        "07023": "AB890X",
+        "07024": "AB890X",
+        "07026": "AB890X",
+        "07027": "AB890X",
+        "07028": "AB890X",
+        "07029": "AB890X",
+        "07030": "AB890X",
+        "07031": "AB890X",
+        "07032": "AB890X",
+        "07033": "AB890X",
+        "07034": "AB890X",
+        "07035": "AB890X",
+        "07036": "AB890X",
+        "07039": "AB890X",
+        "07040": "AB890X",
+        "07041": "AB890X",
+        "07042": "AB890X",
+        "07043": "AB890X",
+        "07044": "AB890X",
+        "07045": "AB890X",
+        "07046": "AB890X",
+        "07047": "AB890X",
+        "07050": "AB890X",
+        "07051": "AB890X",
+        "07052": "AB890X",
+        "07054": "AB890X",
+        "07055": "AB890X",
+        "07057": "AB890X",
+        "07058": "AB890X",
+        "07059": "AB890X",
+        "07060": "AB890X",
+        "07061": "AB890X",
+        "07062": "AB890X",
+        "07063": "AB890X",
+        "07064": "AB890X",
+        "07065": "AB890X",
+        "07066": "AB890X",
+        "07067": "AB890X",
+        "07068": "AB890X",
+        "07069": "AB890X",
+        "07070": "AB890X",
+        "07071": "AB890X",
+        "07072": "AB890X",
+        "07073": "AB890X",
+        "07074": "AB890X",
+        "07075": "AB890X",
+        "07076": "AB890X",
+        "07077": "AB890X",
+        "07078": "AB890X",
+        "07079": "AB890X",
+        "07080": "AB890X",
+        "07081": "AB890X",
+        "07082": "AB890X",
+        "07083": "AB890X",
+        "07086": "AB890X",
+        "07087": "AB890X",
+        "07088": "AB890X",
+        "07090": "AB890X",
+        "07091": "AB890X",
+        "07092": "AB890X",
+        "07093": "AB890X",
+        "07094": "AB890X",
+        "07095": "AB890X",
+        "07096": "AB890X",
+        "07097": "AB890X",
+        "07099": "AB890X",
+        "07101": "AB890X",
+        "07102": "AB890X",
+        "07103": "AB890X",
+        "07104": "AB890X",
+        "07105": "AB890X",
+        "07106": "AB890X",
+        "07107": "AB890X",
+        "07108": "AB890X",
+        "07109": "AB890X",
+        "07110": "AB890X",
+        "07111": "AB890X",
+        "07112": "AB890X",
+        "07114": "AB890X",
+        "07175": "AB890X",
+        "07182": "AB890X",
+        "07184": "AB890X",
+        "07188": "AB890X",
+        "07189": "AB890X",
+        "07191": "AB890X",
+        "07192": "AB890X",
+        "07193": "AB890X",
+        "07194": "AB890X",
+        "07195": "AB890X",
+        "07198": "AB890X",
+        "07199": "AB890X",
+        "07201": "AB890X",
+        "07202": "AB890X",
+        "07203": "AB890X",
+        "07204": "AB890X",
+        "07205": "AB890X",
+        "07206": "AB890X",
+        "07207": "AB890X",
+        "07208": "AB890X",
+        "07302": "AB890X",
+        "07303": "AB890X",
+        "07304": "AB890X",
+        "07305": "AB890X",
+        "07306": "AB890X",
+        "07307": "AB890X",
+        "07308": "AB890X",
+        "07309": "AB890X",
+        "07310": "AB890X",
+        "07311": "AB890X",
+        "07395": "AB890X",
+        "07399": "AB890X",
+        "07401": "AB890X",
+        "07403": "AB890X",
+        "07405": "AB890X",
+        "07407": "AB890X",
+        "07410": "AB890X",
+        "07416": "AB890X",
+        "07417": "AB890X",
+        "07418": "AB890X",
+        "07419": "AB890X",
+        "07420": "AB890X",
+        "07421": "AB890X",
+        "07422": "AB890X",
+        "07423": "AB890X",
+        "07424": "AB890X",
+        "07428": "AB890X",
+        "07430": "AB890X",
+        "07432": "AB890X",
+        "07435": "AB890X",
+        "07436": "AB890X",
+        "07438": "AB890X",
+        "07439": "AB890X",
+        "07440": "AB890X",
+        "07442": "AB890X",
+        "07444": "AB890X",
+        "07446": "AB890X",
+        "07450": "AB890X",
+        "07451": "AB890X",
+        "07452": "AB890X",
+        "07456": "AB890X",
+        "07457": "AB890X",
+        "07458": "AB890X",
+        "07460": "AB890X",
+        "07461": "AB890X",
+        "07462": "AB890X",
+        "07463": "AB890X",
+        "07465": "AB890X",
+        "07470": "AB890X",
+        "07474": "AB890X",
+        "07477": "AB890X",
+        "07480": "AB890X",
+        "07481": "AB890X",
+        "07495": "AB890X",
+        "07501": "AB890X",
+        "07502": "AB890X",
+        "07503": "AB890X",
+        "07504": "AB890X",
+        "07505": "AB890X",
+        "07506": "AB890X",
+        "07507": "AB890X",
+        "07508": "AB890X",
+        "07509": "AB890X",
+        "07510": "AB890X",
+        "07511": "AB890X",
+        "07512": "AB890X",
+        "07513": "AB890X",
+        "07514": "AB890X",
+        "07522": "AB890X",
+        "07524": "AB890X",
+        "07533": "AB890X",
+        "07538": "AB890X",
+        "07543": "AB890X",
+        "07544": "AB890X",
+        "07601": "AB890X",
+        "07602": "AB890X",
+        "07603": "AB890X",
+        "07604": "AB890X",
+        "07605": "AB890X",
+        "07606": "AB890X",
+        "07607": "AB890X",
+        "07608": "AB890X",
+        "07620": "AB890X",
+        "07621": "AB890X",
+        "07624": "AB890X",
+        "07626": "AB890X",
+        "07627": "AB890X",
+        "07628": "AB890X",
+        "07630": "AB890X",
+        "07631": "AB890X",
+        "07632": "AB890X",
+        "07640": "AB890X",
+        "07641": "AB890X",
+        "07642": "AB890X",
+        "07643": "AB890X",
+        "07644": "AB890X",
+        "07645": "AB890X",
+        "07646": "AB890X",
+        "07647": "AB890X",
+        "07648": "AB890X",
+        "07649": "AB890X",
+        "07650": "AB890X",
+        "07652": "AB890X",
+        "07653": "AB890X",
+        "07656": "AB890X",
+        "07657": "AB890X",
+        "07660": "AB890X",
+        "07661": "AB890X",
+        "07662": "AB890X",
+        "07663": "AB890X",
+        "07666": "AB890X",
+        "07670": "AB890X",
+        "07675": "AB890X",
+        "07676": "AB890X",
+        "07677": "AB890X",
+        "07699": "AB890X",
+        "07701": "AB890X",
+        "07702": "AB890X",
+        "07703": "AB890X",
+        "07704": "AB890X",
+        "07709": "AB890X",
+        "07710": "AB890X",
+        "07711": "AB890X",
+        "07712": "AB890X",
+        "07715": "AB890X",
+        "07716": "AB890X",
+        "07717": "AB890X",
+        "07718": "AB890X",
+        "07719": "AB890X",
+        "07720": "AB890X",
+        "07721": "AB890X",
+        "07722": "AB890X",
+        "07723": "AB890X",
+        "07724": "AB890X",
+        "07726": "AB890X",
+        "07727": "AB890X",
+        "07728": "AB890X",
+        "07730": "AB890X",
+        "07731": "AB890X",
+        "07732": "AB890X",
+        "07733": "AB890X",
+        "07734": "AB890X",
+        "07735": "AB890X",
+        "07737": "AB890X",
+        "07738": "AB890X",
+        "07739": "AB890X",
+        "07740": "AB890X",
+        "07746": "AB890X",
+        "07747": "AB890X",
+        "07748": "AB890X",
+        "07750": "AB890X",
+        "07751": "AB890X",
+        "07752": "AB890X",
+        "07753": "AB890X",
+        "07754": "AB890X",
+        "07755": "AB890X",
+        "07756": "AB890X",
+        "07757": "AB890X",
+        "07758": "AB890X",
+        "07760": "AB890X",
+        "07762": "AB890X",
+        "07763": "AB890X",
+        "07764": "AB890X",
+        "07765": "AB890X",
+        "07777": "AB890X",
+        "07799": "AB890X",
+        "07801": "AB890X",
+        "07802": "AB890X",
+        "07803": "AB890X",
+        "07806": "AB890X",
+        "07820": "AB890X",
+        "07821": "AB890X",
+        "07822": "AB890X",
+        "07823": "AB890X",
+        "07825": "AB890X",
+        "07826": "AB890X",
+        "07827": "AB890X",
+        "07828": "AB890X",
+        "07829": "AB890X",
+        "07830": "AB890X",
+        "07831": "AB890X",
+        "07832": "AB890X",
+        "07833": "AB890X",
+        "07834": "AB890X",
+        "07836": "AB890X",
+        "07837": "AB890X",
+        "07838": "AB890X",
+        "07839": "AB890X",
+        "07840": "AB890X",
+        "07842": "AB890X",
+        "07843": "AB890X",
+        "07844": "AB890X",
+        "07845": "AB890X",
+        "07846": "AB890X",
+        "07847": "AB890X",
+        "07848": "AB890X",
+        "07849": "AB890X",
+        "07850": "AB890X",
+        "07851": "AB890X",
+        "07852": "AB890X",
+        "07853": "AB890X",
+        "07855": "AB890X",
+        "07856": "AB890X",
+        "07857": "AB890X",
+        "07860": "AB890X",
+        "07863": "AB890X",
+        "07865": "AB890X",
+        "07866": "AB890X",
+        "07869": "AB890X",
+        "07870": "AB890X",
+        "07871": "AB890X",
+        "07874": "AB890X",
+        "07875": "AB890X",
+        "07876": "AB890X",
+        "07877": "AB890X",
+        "07878": "AB890X",
+        "07879": "AB890X",
+        "07880": "AB890X",
+        "07881": "AB890X",
+        "07882": "AB890X",
+        "07885": "AB890X",
+        "07890": "AB890X",
+        "07901": "AB890X",
+        "07902": "AB890X",
+        "07920": "AB890X",
+        "07921": "AB890X",
+        "07922": "AB890X",
+        "07924": "AB890X",
+        "07926": "AB890X",
+        "07927": "AB890X",
+        "07928": "AB890X",
+        "07930": "AB890X",
+        "07931": "AB890X",
+        "07932": "AB890X",
+        "07933": "AB890X",
+        "07934": "AB890X",
+        "07935": "AB890X",
+        "07936": "AB890X",
+        "07938": "AB890X",
+        "07939": "AB890X",
+        "07940": "AB890X",
+        "07945": "AB890X",
+        "07946": "AB890X",
+        "07950": "AB890X",
+        "07960": "AB890X",
+        "07961": "AB890X",
+        "07962": "AB890X",
+        "07963": "AB890X",
+        "07970": "AB890X",
+        "07974": "AB890X",
+        "07976": "AB890X",
+        "07977": "AB890X",
+        "07978": "AB890X",
+        "07979": "AB890X",
+        "07980": "AB890X",
+        "07981": "AB890X",
+        "07983": "AB890X",
+        "07999": "AB890X",
+        "08001": "AB890X",
+        "08002": "AB890X",
+        "08003": "AB890X",
+        "08004": "AB890X",
+        "08005": "AB890X",
+        "08006": "AB890X",
+        "08007": "AB890X",
+        "08008": "AB890X",
+        "08009": "AB890X",
+        "08010": "AB890X",
+        "08011": "AB890X",
+        "08012": "AB890X",
+        "08014": "AB890X",
+        "08015": "AB890X",
+        "08016": "AB890X",
+        "08018": "AB890X",
+        "08019": "AB890X",
+        "08020": "AB890X",
+        "08021": "AB890X",
+        "08022": "AB890X",
+        "08023": "AB890X",
+        "08025": "AB890X",
+        "08026": "AB890X",
+        "08027": "AB890X",
+        "08028": "AB890X",
+        "08029": "AB890X",
+        "08030": "AB890X",
+        "08031": "AB890X",
+        "08032": "AB890X",
+        "08033": "AB890X",
+        "08034": "AB890X",
+        "08035": "AB890X",
+        "08036": "AB890X",
+        "08037": "AB890X",
+        "08038": "AB890X",
+        "08039": "AB890X",
+        "08041": "AB890X",
+        "08042": "AB890X",
+        "08043": "AB890X",
+        "08045": "AB890X",
+        "08046": "AB890X",
+        "08048": "AB890X",
+        "08049": "AB890X",
+        "08050": "AB890X",
+        "08051": "AB890X",
+        "08052": "AB890X",
+        "08053": "AB890X",
+        "08054": "AB890X",
+        "08055": "AB890X",
+        "08056": "AB890X",
+        "08057": "AB890X",
+        "08059": "AB890X",
+        "08060": "AB890X",
+        "08061": "AB890X",
+        "08062": "AB890X",
+        "08063": "AB890X",
+        "08064": "AB890X",
+        "08065": "AB890X",
+        "08066": "AB890X",
+        "08067": "AB890X",
+        "08068": "AB890X",
+        "08069": "AB890X",
+        "08070": "AB890X",
+        "08071": "AB890X",
+        "08072": "AB890X",
+        "08073": "AB890X",
+        "08074": "AB890X",
+        "08075": "AB890X",
+        "08076": "AB890X",
+        "08077": "AB890X",
+        "08078": "AB890X",
+        "08079": "AB890X",
+        "08080": "AB890X",
+        "08081": "AB890X",
+        "08083": "AB890X",
+        "08084": "AB890X",
+        "08085": "AB890X",
+        "08086": "AB890X",
+        "08087": "AB890X",
+        "08088": "AB890X",
+        "08089": "AB890X",
+        "08090": "AB890X",
+        "08091": "AB890X",
+        "08092": "AB890X",
+        "08093": "AB890X",
+        "08094": "AB890X",
+        "08095": "AB890X",
+        "08096": "AB890X",
+        "08097": "AB890X",
+        "08098": "AB890X",
+        "08099": "AB890X",
+        "08101": "AB890X",
+        "08102": "AB890X",
+        "08103": "AB890X",
+        "08104": "AB890X",
+        "08105": "AB890X",
+        "08106": "AB890X",
+        "08107": "AB890X",
+        "08108": "AB890X",
+        "08109": "AB890X",
+        "08110": "AB890X",
+        "08201": "AB890X",
+        "08202": "AB890X",
+        "08203": "AB890X",
+        "08204": "AB890X",
+        "08205": "AB890X",
+        "08210": "AB890X",
+        "08212": "AB890X",
+        "08213": "AB890X",
+        "08214": "AB890X",
+        "08215": "AB890X",
+        "08217": "AB890X",
+        "08218": "AB890X",
+        "08219": "AB890X",
+        "08220": "AB890X",
+        "08221": "AB890X",
+        "08223": "AB890X",
+        "08224": "AB890X",
+        "08225": "AB890X",
+        "08226": "AB890X",
+        "08230": "AB890X",
+        "08231": "AB890X",
+        "08232": "AB890X",
+        "08234": "AB890X",
+        "08240": "AB890X",
+        "08241": "AB890X",
+        "08242": "AB890X",
+        "08243": "AB890X",
+        "08244": "AB890X",
+        "08245": "AB890X",
+        "08246": "AB890X",
+        "08247": "AB890X",
+        "08248": "AB890X",
+        "08250": "AB890X",
+        "08251": "AB890X",
+        "08252": "AB890X",
+        "08260": "AB890X",
+        "08270": "AB890X",
+        "08302": "AB890X",
+        "08310": "AB890X",
+        "08311": "AB890X",
+        "08312": "AB890X",
+        "08313": "AB890X",
+        "08314": "AB890X",
+        "08315": "AB890X",
+        "08316": "AB890X",
+        "08317": "AB890X",
+        "08318": "AB890X",
+        "08319": "AB890X",
+        "08320": "AB890X",
+        "08321": "AB890X",
+        "08322": "AB890X",
+        "08323": "AB890X",
+        "08324": "AB890X",
+        "08326": "AB890X",
+        "08327": "AB890X",
+        "08328": "AB890X",
+        "08329": "AB890X",
+        "08330": "AB890X",
+        "08332": "AB890X",
+        "08340": "AB890X",
+        "08341": "AB890X",
+        "08342": "AB890X",
+        "08343": "AB890X",
+        "08344": "AB890X",
+        "08345": "AB890X",
+        "08346": "AB890X",
+        "08347": "AB890X",
+        "08348": "AB890X",
+        "08349": "AB890X",
+        "08350": "AB890X",
+        "08352": "AB890X",
+        "08353": "AB890X",
+        "08360": "AB890X",
+        "08361": "AB890X",
+        "08362": "AB890X",
+        "08401": "AB890X",
+        "08402": "AB890X",
+        "08403": "AB890X",
+        "08404": "AB890X",
+        "08405": "AB890X",
+        "08406": "AB890X",
+        "08501": "AB890X",
+        "08502": "AB890X",
+        "08504": "AB890X",
+        "08505": "AB890X",
+        "08510": "AB890X",
+        "08511": "AB890X",
+        "08512": "AB890X",
+        "08514": "AB890X",
+        "08515": "AB890X",
+        "08518": "AB890X",
+        "08520": "AB890X",
+        "08525": "AB890X",
+        "08526": "AB890X",
+        "08527": "AB890X",
+        "08528": "AB890X",
+        "08530": "AB890X",
+        "08533": "AB890X",
+        "08534": "AB890X",
+        "08535": "AB890X",
+        "08536": "AB890X",
+        "08540": "AB890X",
+        "08541": "AB890X",
+        "08542": "AB890X",
+        "08543": "AB890X",
+        "08544": "AB890X",
+        "08550": "AB890X",
+        "08551": "AB890X",
+        "08553": "AB890X",
+        "08554": "AB890X",
+        "08555": "AB890X",
+        "08556": "AB890X",
+        "08557": "AB890X",
+        "08558": "AB890X",
+        "08559": "AB890X",
+        "08560": "AB890X",
+        "08561": "AB890X",
+        "08562": "AB890X",
+        "08601": "AB890X",
+        "08602": "AB890X",
+        "08603": "AB890X",
+        "08604": "AB890X",
+        "08605": "AB890X",
+        "08606": "AB890X",
+        "08607": "AB890X",
+        "08608": "AB890X",
+        "08609": "AB890X",
+        "08610": "AB890X",
+        "08611": "AB890X",
+        "08618": "AB890X",
+        "08619": "AB890X",
+        "08620": "AB890X",
+        "08625": "AB890X",
+        "08628": "AB890X",
+        "08629": "AB890X",
+        "08638": "AB890X",
+        "08640": "AB890X",
+        "08641": "AB890X",
+        "08645": "AB890X",
+        "08646": "AB890X",
+        "08647": "AB890X",
+        "08648": "AB890X",
+        "08650": "AB890X",
+        "08666": "AB890X",
+        "08677": "AB890X",
+        "08690": "AB890X",
+        "08691": "AB890X",
+        "08695": "AB890X",
+        "08701": "AB890X",
+        "08720": "AB890X",
+        "08721": "AB890X",
+        "08722": "AB890X",
+        "08723": "AB890X",
+        "08724": "AB890X",
+        "08730": "AB890X",
+        "08731": "AB890X",
+        "08732": "AB890X",
+        "08733": "AB890X",
+        "08734": "AB890X",
+        "08735": "AB890X",
+        "08736": "AB890X",
+        "08738": "AB890X",
+        "08739": "AB890X",
+        "08740": "AB890X",
+        "08741": "AB890X",
+        "08742": "AB890X",
+        "08750": "AB890X",
+        "08751": "AB890X",
+        "08752": "AB890X",
+        "08753": "AB890X",
+        "08754": "AB890X",
+        "08755": "AB890X",
+        "08756": "AB890X",
+        "08757": "AB890X",
+        "08758": "AB890X",
+        "08759": "AB890X",
+        "08801": "AB890X",
+        "08802": "AB890X",
+        "08803": "AB890X",
+        "08804": "AB890X",
+        "08805": "AB890X",
+        "08807": "AB890X",
+        "08808": "AB890X",
+        "08809": "AB890X",
+        "08810": "AB890X",
+        "08812": "AB890X",
+        "08816": "AB890X",
+        "08817": "AB890X",
+        "08818": "AB890X",
+        "08820": "AB890X",
+        "08821": "AB890X",
+        "08822": "AB890X",
+        "08823": "AB890X",
+        "08824": "AB890X",
+        "08825": "AB890X",
+        "08826": "AB890X",
+        "08827": "AB890X",
+        "08828": "AB890X",
+        "08829": "AB890X",
+        "08830": "AB890X",
+        "08831": "AB890X",
+        "08832": "AB890X",
+        "08833": "AB890X",
+        "08834": "AB890X",
+        "08835": "AB890X",
+        "08836": "AB890X",
+        "08837": "AB890X",
+        "08840": "AB890X",
+        "08844": "AB890X",
+        "08846": "AB890X",
+        "08848": "AB890X",
+        "08850": "AB890X",
+        "08852": "AB890X",
+        "08853": "AB890X",
+        "08854": "AB890X",
+        "08855": "AB890X",
+        "08857": "AB890X",
+        "08858": "AB890X",
+        "08859": "AB890X",
+        "08861": "AB890X",
+        "08862": "AB890X",
+        "08863": "AB890X",
+        "08865": "AB890X",
+        "08867": "AB890X",
+        "08868": "AB890X",
+        "08869": "AB890X",
+        "08870": "AB890X",
+        "08871": "AB890X",
+        "08872": "AB890X",
+        "08873": "AB890X",
+        "08875": "AB890X",
+        "08876": "AB890X",
+        "08879": "AB890X",
+        "08880": "AB890X",
+        "08882": "AB890X",
+        "08884": "AB890X",
+        "08885": "AB890X",
+        "08886": "AB890X",
+        "08887": "AB890X",
+        "08888": "AB890X",
+        "08889": "AB890X",
+        "08890": "AB890X",
+        "08896": "AB890X",
+        "08899": "AB890X",
+        "08901": "AB890X",
+        "08902": "AB890X",
+        "08903": "AB890X",
+        "08904": "AB890X",
+        "08905": "AB890X",
+        "08906": "AB890X",
+        "08922": "AB890X",
+        "08933": "AB890X",
+        "08988": "AB890X",
+        "08989": "AB890X",
+        "10001": "AB890X",
+        "10002": "AB890X",
+        "10003": "AB890X",
+        "10004": "AB890X",
+        "10005": "AB890X",
+        "10006": "AB890X",
+        "10007": "AB890X",
+        "10008": "AB890X",
+        "10009": "AB890X",
+        "10010": "AB890X",
+        "10011": "AB890X",
+        "10012": "AB890X",
+        "10013": "AB890X",
+        "10014": "AB890X",
+        "10015": "AB890X",
+        "10016": "AB890X",
+        "10017": "AB890X",
+        "10018": "AB890X",
+        "10019": "AB890X",
+        "10020": "AB890X",
+        "10021": "AB890X",
+        "10022": "AB890X",
+        "10023": "AB890X",
+        "10024": "AB890X",
+        "10025": "AB890X",
+        "10026": "AB890X",
+        "10027": "AB890X",
+        "10028": "AB890X",
+        "10029": "AB890X",
+        "10030": "AB890X",
+        "10031": "AB890X",
+        "10032": "AB890X",
+        "10033": "AB890X",
+        "10034": "AB890X",
+        "10035": "AB890X",
+        "10036": "AB890X",
+        "10037": "AB890X",
+        "10038": "AB890X",
+        "10039": "AB890X",
+        "10040": "AB890X",
+        "10041": "AB890X",
+        "10043": "AB890X",
+        "10044": "AB890X",
+        "10045": "AB890X",
+        "10046": "AB890X",
+        "10047": "AB890X",
+        "10048": "AB890X",
+        "10055": "AB890X",
+        "10060": "AB890X",
+        "10069": "AB890X",
+        "10072": "AB890X",
+        "10079": "AB890X",
+        "10080": "AB890X",
+        "10081": "AB890X",
+        "10082": "AB890X",
+        "10087": "AB890X",
+        "10090": "AB890X",
+        "10094": "AB890X",
+        "10095": "AB890X",
+        "10096": "AB890X",
+        "10098": "AB890X",
+        "10099": "AB890X",
+        "10101": "AB890X",
+        "10102": "AB890X",
+        "10103": "AB890X",
+        "10104": "AB890X",
+        "10105": "AB890X",
+        "10106": "AB890X",
+        "10107": "AB890X",
+        "10108": "AB890X",
+        "10109": "AB890X",
+        "10110": "AB890X",
+        "10111": "AB890X",
+        "10112": "AB890X",
+        "10113": "AB890X",
+        "10114": "AB890X",
+        "10115": "AB890X",
+        "10116": "AB890X",
+        "10117": "AB890X",
+        "10118": "AB890X",
+        "10119": "AB890X",
+        "10120": "AB890X",
+        "10121": "AB890X",
+        "10122": "AB890X",
+        "10123": "AB890X",
+        "10124": "AB890X",
+        "10125": "AB890X",
+        "10126": "AB890X",
+        "10128": "AB890X",
+        "10129": "AB890X",
+        "10130": "AB890X",
+        "10131": "AB890X",
+        "10132": "AB890X",
+        "10133": "AB890X",
+        "10138": "AB890X",
+        "10149": "AB890X",
+        "10150": "AB890X",
+        "10151": "AB890X",
+        "10152": "AB890X",
+        "10153": "AB890X",
+        "10154": "AB890X",
+        "10155": "AB890X",
+        "10156": "AB890X",
+        "10157": "AB890X",
+        "10158": "AB890X",
+        "10159": "AB890X",
+        "10160": "AB890X",
+        "10161": "AB890X",
+        "10162": "AB890X",
+        "10163": "AB890X",
+        "10164": "AB890X",
+        "10165": "AB890X",
+        "10166": "AB890X",
+        "10167": "AB890X",
+        "10168": "AB890X",
+        "10169": "AB890X",
+        "10170": "AB890X",
+        "10171": "AB890X",
+        "10172": "AB890X",
+        "10173": "AB890X",
+        "10174": "AB890X",
+        "10175": "AB890X",
+        "10176": "AB890X",
+        "10177": "AB890X",
+        "10178": "AB890X",
+        "10179": "AB890X",
+        "10184": "AB890X",
+        "10185": "AB890X",
+        "10196": "AB890X",
+        "10197": "AB890X",
+        "10199": "AB890X",
+        "10203": "AB890X",
+        "10211": "AB890X",
+        "10212": "AB890X",
+        "10213": "AB890X",
+        "10242": "AB890X",
+        "10249": "AB890X",
+        "10256": "AB890X",
+        "10257": "AB890X",
+        "10258": "AB890X",
+        "10259": "AB890X",
+        "10260": "AB890X",
+        "10261": "AB890X",
+        "10265": "AB890X",
+        "10268": "AB890X",
+        "10269": "AB890X",
+        "10270": "AB890X",
+        "10271": "AB890X",
+        "10272": "AB890X",
+        "10273": "AB890X",
+        "10274": "AB890X",
+        "10275": "AB890X",
+        "10276": "AB890X",
+        "10277": "AB890X",
+        "10278": "AB890X",
+        "10279": "AB890X",
+        "10280": "AB890X",
+        "10281": "AB890X",
+        "10282": "AB890X",
+        "10285": "AB890X",
+        "10286": "AB890X",
+        "10292": "AB890X",
+        "10301": "AB890X",
+        "10302": "AB890X",
+        "10303": "AB890X",
+        "10304": "AB890X",
+        "10305": "AB890X",
+        "10306": "AB890X",
+        "10307": "AB890X",
+        "10308": "AB890X",
+        "10309": "AB890X",
+        "10310": "AB890X",
+        "10311": "AB890X",
+        "10312": "AB890X",
+        "10313": "AB890X",
+        "10314": "AB890X",
+        "10451": "AB890X",
+        "10452": "AB890X",
+        "10453": "AB890X",
+        "10454": "AB890X",
+        "10455": "AB890X",
+        "10456": "AB890X",
+        "10457": "AB890X",
+        "10458": "AB890X",
+        "10459": "AB890X",
+        "10460": "AB890X",
+        "10461": "AB890X",
+        "10462": "AB890X",
+        "10463": "AB890X",
+        "10464": "AB890X",
+        "10465": "AB890X",
+        "10466": "AB890X",
+        "10467": "AB890X",
+        "10468": "AB890X",
+        "10469": "AB890X",
+        "10470": "AB890X",
+        "10471": "AB890X",
+        "10472": "AB890X",
+        "10473": "AB890X",
+        "10474": "AB890X",
+        "10475": "AB890X",
+        "10499": "AB890X",
+        "10501": "AB890X",
+        "10502": "AB890X",
+        "10503": "AB890X",
+        "10504": "AB890X",
+        "10505": "AB890X",
+        "10506": "AB890X",
+        "10507": "AB890X",
+        "10509": "AB890X",
+        "10510": "AB890X",
+        "10511": "AB890X",
+        "10512": "AB890X",
+        "10514": "AB890X",
+        "10516": "AB890X",
+        "10517": "AB890X",
+        "10518": "AB890X",
+        "10519": "AB890X",
+        "10520": "AB890X",
+        "10521": "AB890X",
+        "10522": "AB890X",
+        "10523": "AB890X",
+        "10524": "AB890X",
+        "10526": "AB890X",
+        "10527": "AB890X",
+        "10528": "AB890X",
+        "10530": "AB890X",
+        "10532": "AB890X",
+        "10533": "AB890X",
+        "10535": "AB890X",
+        "10536": "AB890X",
+        "10537": "AB890X",
+        "10538": "AB890X",
+        "10540": "AB890X",
+        "10541": "AB890X",
+        "10542": "AB890X",
+        "10543": "AB890X",
+        "10545": "AB890X",
+        "10546": "AB890X",
+        "10547": "AB890X",
+        "10548": "AB890X",
+        "10549": "AB890X",
+        "10550": "AB890X",
+        "10551": "AB890X",
+        "10552": "AB890X",
+        "10553": "AB890X",
+        "10557": "AB890X",
+        "10558": "AB890X",
+        "10560": "AB890X",
+        "10562": "AB890X",
+        "10566": "AB890X",
+        "10567": "AB890X",
+        "10570": "AB890X",
+        "10571": "AB890X",
+        "10572": "AB890X",
+        "10573": "AB890X",
+        "10576": "AB890X",
+        "10577": "AB890X",
+        "10578": "AB890X",
+        "10579": "AB890X",
+        "10580": "AB890X",
+        "10583": "AB890X",
+        "10587": "AB890X",
+        "10588": "AB890X",
+        "10589": "AB890X",
+        "10590": "AB890X",
+        "10591": "AB890X",
+        "10594": "AB890X",
+        "10595": "AB890X",
+        "10596": "AB890X",
+        "10597": "AB890X",
+        "10598": "AB890X",
+        "10601": "AB890X",
+        "10602": "AB890X",
+        "10603": "AB890X",
+        "10604": "AB890X",
+        "10605": "AB890X",
+        "10606": "AB890X",
+        "10607": "AB890X",
+        "10610": "AB890X",
+        "10701": "AB890X",
+        "10702": "AB890X",
+        "10703": "AB890X",
+        "10704": "AB890X",
+        "10705": "AB890X",
+        "10706": "AB890X",
+        "10707": "AB890X",
+        "10708": "AB890X",
+        "10709": "AB890X",
+        "10710": "AB890X",
+        "10801": "AB890X",
+        "10802": "AB890X",
+        "10803": "AB890X",
+        "10804": "AB890X",
+        "10805": "AB890X",
+        "10901": "AB890X",
+        "10910": "AB890X",
+        "10911": "AB890X",
+        "10912": "AB890X",
+        "10913": "AB890X",
+        "10914": "AB890X",
+        "10915": "AB890X",
+        "10916": "AB890X",
+        "10917": "AB890X",
+        "10918": "AB890X",
+        "10919": "AB890X",
+        "10920": "AB890X",
+        "10921": "AB890X",
+        "10922": "AB890X",
+        "10923": "AB890X",
+        "10924": "AB890X",
+        "10925": "AB890X",
+        "10926": "AB890X",
+        "10927": "AB890X",
+        "10928": "AB890X",
+        "10930": "AB890X",
+        "10931": "AB890X",
+        "10932": "AB890X",
+        "10933": "AB890X",
+        "10940": "AB890X",
+        "10941": "AB890X",
+        "10943": "AB890X",
+        "10949": "AB890X",
+        "10950": "AB890X",
+        "10952": "AB890X",
+        "10953": "AB890X",
+        "10954": "AB890X",
+        "10956": "AB890X",
+        "10958": "AB890X",
+        "10959": "AB890X",
+        "10960": "AB890X",
+        "10962": "AB890X",
+        "10963": "AB890X",
+        "10964": "AB890X",
+        "10965": "AB890X",
+        "10968": "AB890X",
+        "10969": "AB890X",
+        "10970": "AB890X",
+        "10973": "AB890X",
+        "10974": "AB890X",
+        "10975": "AB890X",
+        "10976": "AB890X",
+        "10977": "AB890X",
+        "10979": "AB890X",
+        "10980": "AB890X",
+        "10981": "AB890X",
+        "10982": "AB890X",
+        "10983": "AB890X",
+        "10984": "AB890X",
+        "10985": "AB890X",
+        "10986": "AB890X",
+        "10987": "AB890X",
+        "10988": "AB890X",
+        "10989": "AB890X",
+        "10990": "AB890X",
+        "10992": "AB890X",
+        "10993": "AB890X",
+        "10994": "AB890X",
+        "10996": "AB890X",
+        "10997": "AB890X",
+        "10998": "AB890X",
+        "11001": "AB890X",
+        "11002": "AB890X",
+        "11003": "AB890X",
+        "11004": "AB890X",
+        "11005": "AB890X",
+        "11010": "AB890X",
+        "11020": "AB890X",
+        "11021": "AB890X",
+        "11022": "AB890X",
+        "11023": "AB890X",
+        "11024": "AB890X",
+        "11025": "AB890X",
+        "11026": "AB890X",
+        "11027": "AB890X",
+        "11030": "AB890X",
+        "11040": "AB890X",
+        "11041": "AB890X",
+        "11042": "AB890X",
+        "11043": "AB890X",
+        "11044": "AB890X",
+        "11050": "AB890X",
+        "11051": "AB890X",
+        "11052": "AB890X",
+        "11053": "AB890X",
+        "11054": "AB890X",
+        "11055": "AB890X",
+        "11096": "AB890X",
+        "11099": "AB890X",
+        "11101": "AB890X",
+        "11102": "AB890X",
+        "11103": "AB890X",
+        "11104": "AB890X",
+        "11105": "AB890X",
+        "11106": "AB890X",
+        "11109": "AB890X",
+        "11120": "AB890X",
+        "11201": "AB890X",
+        "11202": "AB890X",
+        "11203": "AB890X",
+        "11204": "AB890X",
+        "11205": "AB890X",
+        "11206": "AB890X",
+        "11207": "AB890X",
+        "11208": "AB890X",
+        "11209": "AB890X",
+        "11210": "AB890X",
+        "11211": "AB890X",
+        "11212": "AB890X",
+        "11213": "AB890X",
+        "11214": "AB890X",
+        "11215": "AB890X",
+        "11216": "AB890X",
+        "11217": "AB890X",
+        "11218": "AB890X",
+        "11219": "AB890X",
+        "11220": "AB890X",
+        "11221": "AB890X",
+        "11222": "AB890X",
+        "11223": "AB890X",
+        "11224": "AB890X",
+        "11225": "AB890X",
+        "11226": "AB890X",
+        "11228": "AB890X",
+        "11229": "AB890X",
+        "11230": "AB890X",
+        "11231": "AB890X",
+        "11232": "AB890X",
+        "11233": "AB890X",
+        "11234": "AB890X",
+        "11235": "AB890X",
+        "11236": "AB890X",
+        "11237": "AB890X",
+        "11238": "AB890X",
+        "11239": "AB890X",
+        "11240": "AB890X",
+        "11241": "AB890X",
+        "11242": "AB890X",
+        "11243": "AB890X",
+        "11244": "AB890X",
+        "11245": "AB890X",
+        "11247": "AB890X",
+        "11248": "AB890X",
+        "11249": "AB890X",
+        "11251": "AB890X",
+        "11252": "AB890X",
+        "11254": "AB890X",
+        "11255": "AB890X",
+        "11256": "AB890X",
+        "11351": "AB890X",
+        "11352": "AB890X",
+        "11354": "AB890X",
+        "11355": "AB890X",
+        "11356": "AB890X",
+        "11357": "AB890X",
+        "11358": "AB890X",
+        "11359": "AB890X",
+        "11360": "AB890X",
+        "11361": "AB890X",
+        "11362": "AB890X",
+        "11363": "AB890X",
+        "11364": "AB890X",
+        "11365": "AB890X",
+        "11366": "AB890X",
+        "11367": "AB890X",
+        "11368": "AB890X",
+        "11369": "AB890X",
+        "11370": "AB890X",
+        "11371": "AB890X",
+        "11372": "AB890X",
+        "11373": "AB890X",
+        "11374": "AB890X",
+        "11375": "AB890X",
+        "11377": "AB890X",
+        "11378": "AB890X",
+        "11379": "AB890X",
+        "11380": "AB890X",
+        "11381": "AB890X",
+        "11385": "AB890X",
+        "11386": "AB890X",
+        "11390": "AB890X",
+        "11405": "AB890X",
+        "11411": "AB890X",
+        "11412": "AB890X",
+        "11413": "AB890X",
+        "11414": "AB890X",
+        "11415": "AB890X",
+        "11416": "AB890X",
+        "11417": "AB890X",
+        "11418": "AB890X",
+        "11419": "AB890X",
+        "11420": "AB890X",
+        "11421": "AB890X",
+        "11422": "AB890X",
+        "11423": "AB890X",
+        "11424": "AB890X",
+        "11425": "AB890X",
+        "11426": "AB890X",
+        "11427": "AB890X",
+        "11428": "AB890X",
+        "11429": "AB890X",
+        "11430": "AB890X",
+        "11431": "AB890X",
+        "11432": "AB890X",
+        "11433": "AB890X",
+        "11434": "AB890X",
+        "11435": "AB890X",
+        "11436": "AB890X",
+        "11439": "AB890X",
+        "11451": "AB890X",
+        "11499": "AB890X",
+        "11501": "AB890X",
+        "11507": "AB890X",
+        "11509": "AB890X",
+        "11510": "AB890X",
+        "11514": "AB890X",
+        "11516": "AB890X",
+        "11518": "AB890X",
+        "11520": "AB890X",
+        "11530": "AB890X",
+        "11531": "AB890X",
+        "11535": "AB890X",
+        "11536": "AB890X",
+        "11542": "AB890X",
+        "11545": "AB890X",
+        "11547": "AB890X",
+        "11548": "AB890X",
+        "11549": "AB890X",
+        "11550": "AB890X",
+        "11551": "AB890X",
+        "11552": "AB890X",
+        "11553": "AB890X",
+        "11554": "AB890X",
+        "11555": "AB890X",
+        "11556": "AB890X",
+        "11557": "AB890X",
+        "11558": "AB890X",
+        "11559": "AB890X",
+        "11560": "AB890X",
+        "11561": "AB890X",
+        "11563": "AB890X",
+        "11565": "AB890X",
+        "11566": "AB890X",
+        "11568": "AB890X",
+        "11569": "AB890X",
+        "11570": "AB890X",
+        "11571": "AB890X",
+        "11572": "AB890X",
+        "11575": "AB890X",
+        "11576": "AB890X",
+        "11577": "AB890X",
+        "11579": "AB890X",
+        "11580": "AB890X",
+        "11581": "AB890X",
+        "11582": "AB890X",
+        "11590": "AB890X",
+        "11592": "AB890X",
+        "11594": "AB890X",
+        "11595": "AB890X",
+        "11596": "AB890X",
+        "11597": "AB890X",
+        "11598": "AB890X",
+        "11599": "AB890X",
+        "11690": "AB890X",
+        "11691": "AB890X",
+        "11692": "AB890X",
+        "11693": "AB890X",
+        "11694": "AB890X",
+        "11695": "AB890X",
+        "11697": "AB890X",
+        "11701": "AB890X",
+        "11702": "AB890X",
+        "11703": "AB890X",
+        "11704": "AB890X",
+        "11705": "AB890X",
+        "11706": "AB890X",
+        "11707": "AB890X",
+        "11708": "AB890X",
+        "11709": "AB890X",
+        "11710": "AB890X",
+        "11713": "AB890X",
+        "11714": "AB890X",
+        "11715": "AB890X",
+        "11716": "AB890X",
+        "11717": "AB890X",
+        "11718": "AB890X",
+        "11719": "AB890X",
+        "11720": "AB890X",
+        "11721": "AB890X",
+        "11722": "AB890X",
+        "11724": "AB890X",
+        "11725": "AB890X",
+        "11726": "AB890X",
+        "11727": "AB890X",
+        "11729": "AB890X",
+        "11730": "AB890X",
+        "11731": "AB890X",
+        "11732": "AB890X",
+        "11733": "AB890X",
+        "11735": "AB890X",
+        "11736": "AB890X",
+        "11737": "AB890X",
+        "11738": "AB890X",
+        "11739": "AB890X",
+        "11740": "AB890X",
+        "11741": "AB890X",
+        "11742": "AB890X",
+        "11743": "AB890X",
+        "11746": "AB890X",
+        "11747": "AB890X",
+        "11749": "AB890X",
+        "11750": "AB890X",
+        "11751": "AB890X",
+        "11752": "AB890X",
+        "11753": "AB890X",
+        "11754": "AB890X",
+        "11755": "AB890X",
+        "11756": "AB890X",
+        "11757": "AB890X",
+        "11758": "AB890X",
+        "11760": "AB890X",
+        "11762": "AB890X",
+        "11763": "AB890X",
+        "11764": "AB890X",
+        "11765": "AB890X",
+        "11766": "AB890X",
+        "11767": "AB890X",
+        "11768": "AB890X",
+        "11769": "AB890X",
+        "11770": "AB890X",
+        "11771": "AB890X",
+        "11772": "AB890X",
+        "11773": "AB890X",
+        "11774": "AB890X",
+        "11775": "AB890X",
+        "11776": "AB890X",
+        "11777": "AB890X",
+        "11778": "AB890X",
+        "11779": "AB890X",
+        "11780": "AB890X",
+        "11782": "AB890X",
+        "11783": "AB890X",
+        "11784": "AB890X",
+        "11786": "AB890X",
+        "11787": "AB890X",
+        "11788": "AB890X",
+        "11789": "AB890X",
+        "11790": "AB890X",
+        "11791": "AB890X",
+        "11792": "AB890X",
+        "11793": "AB890X",
+        "11794": "AB890X",
+        "11795": "AB890X",
+        "11796": "AB890X",
+        "11797": "AB890X",
+        "11798": "AB890X",
+        "11801": "AB890X",
+        "11802": "AB890X",
+        "11803": "AB890X",
+        "11804": "AB890X",
+        "11815": "AB890X",
+        "11819": "AB890X",
+        "11853": "AB890X",
+        "11854": "AB890X",
+        "11855": "AB890X",
+        "11901": "AB890X",
+        "11930": "AB890X",
+        "11931": "AB890X",
+        "11932": "AB890X",
+        "11933": "AB890X",
+        "11934": "AB890X",
+        "11935": "AB890X",
+        "11937": "AB890X",
+        "11939": "AB890X",
+        "11940": "AB890X",
+        "11941": "AB890X",
+        "11942": "AB890X",
+        "11944": "AB890X",
+        "11946": "AB890X",
+        "11947": "AB890X",
+        "11948": "AB890X",
+        "11949": "AB890X",
+        "11950": "AB890X",
+        "11951": "AB890X",
+        "11952": "AB890X",
+        "11953": "AB890X",
+        "11954": "AB890X",
+        "11955": "AB890X",
+        "11956": "AB890X",
+        "11957": "AB890X",
+        "11958": "AB890X",
+        "11959": "AB890X",
+        "11960": "AB890X",
+        "11961": "AB890X",
+        "11962": "AB890X",
+        "11963": "AB890X",
+        "11964": "AB890X",
+        "11965": "AB890X",
+        "11967": "AB890X",
+        "11968": "AB890X",
+        "11969": "AB890X",
+        "11970": "AB890X",
+        "11971": "AB890X",
+        "11972": "AB890X",
+        "11973": "AB890X",
+        "11975": "AB890X",
+        "11976": "AB890X",
+        "11977": "AB890X",
+        "11978": "AB890X",
+        "11980": "AB890X",
+        "12007": "AB890X",
+        "12008": "AB890X",
+        "12009": "AB890X",
+        "12010": "AB890X",
+        "12015": "AB890X",
+        "12016": "AB890X",
+        "12017": "AB890X",
+        "12018": "AB890X",
+        "12019": "AB890X",
+        "12020": "AB890X",
+        "12022": "AB890X",
+        "12023": "AB890X",
+        "12024": "AB890X",
+        "12025": "AB890X",
+        "12027": "AB890X",
+        "12028": "AB890X",
+        "12029": "AB890X",
+        "12031": "AB890X",
+        "12032": "AB890X",
+        "12033": "AB890X",
+        "12035": "AB890X",
+        "12036": "AB890X",
+        "12037": "AB890X",
+        "12040": "AB890X",
+        "12041": "AB890X",
+        "12042": "AB890X",
+        "12043": "AB890X",
+        "12045": "AB890X",
+        "12046": "AB890X",
+        "12047": "AB890X",
+        "12050": "AB890X",
+        "12051": "AB890X",
+        "12052": "AB890X",
+        "12053": "AB890X",
+        "12054": "AB890X",
+        "12055": "AB890X",
+        "12056": "AB890X",
+        "12057": "AB890X",
+        "12058": "AB890X",
+        "12059": "AB890X",
+        "12060": "AB890X",
+        "12061": "AB890X",
+        "12062": "AB890X",
+        "12063": "AB890X",
+        "12064": "AB900X",
+        "12065": "AB890X",
+        "12066": "AB890X",
+        "12067": "AB890X",
+        "12068": "AB890X",
+        "12069": "AB890X",
+        "12070": "AB890X",
+        "12071": "AB890X",
+        "12072": "AB890X",
+        "12073": "AB890X",
+        "12074": "AB890X",
+        "12075": "AB890X",
+        "12076": "AB890X",
+        "12077": "AB890X",
+        "12078": "AB890X",
+        "12082": "AB890X",
+        "12083": "AB890X",
+        "12084": "AB890X",
+        "12085": "AB890X",
+        "12086": "AB890X",
+        "12087": "AB890X",
+        "12089": "AB890X",
+        "12090": "AB890X",
+        "12092": "AB890X",
+        "12093": "AB900X",
+        "12094": "AB890X",
+        "12095": "AB890X",
+        "12106": "AB890X",
+        "12107": "AB890X",
+        "12108": "AB890X",
+        "12110": "AB890X",
+        "12115": "AB890X",
+        "12116": "AB900X",
+        "12117": "AB890X",
+        "12118": "AB890X",
+        "12120": "AB890X",
+        "12121": "AB890X",
+        "12122": "AB890X",
+        "12123": "AB890X",
+        "12124": "AB890X",
+        "12125": "AB890X",
+        "12128": "AB890X",
+        "12130": "AB890X",
+        "12131": "AB890X",
+        "12132": "AB890X",
+        "12133": "AB890X",
+        "12134": "AB890X",
+        "12136": "AB890X",
+        "12137": "AB890X",
+        "12138": "AB890X",
+        "12139": "AB900X",
+        "12140": "AB890X",
+        "12141": "AB890X",
+        "12143": "AB890X",
+        "12144": "AB890X",
+        "12147": "AB890X",
+        "12148": "AB890X",
+        "12149": "AB890X",
+        "12150": "AB890X",
+        "12151": "AB890X",
+        "12153": "AB890X",
+        "12154": "AB890X",
+        "12155": "AB900X",
+        "12156": "AB890X",
+        "12157": "AB890X",
+        "12158": "AB890X",
+        "12159": "AB890X",
+        "12160": "AB890X",
+        "12161": "AB890X",
+        "12164": "AB890X",
+        "12165": "AB890X",
+        "12166": "AB890X",
+        "12167": "AB900X",
+        "12168": "AB890X",
+        "12169": "AB890X",
+        "12170": "AB890X",
+        "12172": "AB890X",
+        "12173": "AB890X",
+        "12174": "AB890X",
+        "12175": "AB890X",
+        "12176": "AB890X",
+        "12177": "AB890X",
+        "12180": "AB890X",
+        "12181": "AB890X",
+        "12182": "AB890X",
+        "12183": "AB890X",
+        "12184": "AB890X",
+        "12185": "AB890X",
+        "12186": "AB890X",
+        "12187": "AB890X",
+        "12188": "AB890X",
+        "12189": "AB890X",
+        "12190": "AB890X",
+        "12192": "AB890X",
+        "12193": "AB890X",
+        "12194": "AB890X",
+        "12195": "AB890X",
+        "12196": "AB890X",
+        "12197": "AB900X",
+        "12198": "AB890X",
+        "12201": "AB890X",
+        "12202": "AB890X",
+        "12203": "AB890X",
+        "12204": "AB890X",
+        "12205": "AB890X",
+        "12206": "AB890X",
+        "12207": "AB890X",
+        "12208": "AB890X",
+        "12209": "AB890X",
+        "12210": "AB890X",
+        "12211": "AB890X",
+        "12212": "AB890X",
+        "12214": "AB890X",
+        "12220": "AB890X",
+        "12222": "AB890X",
+        "12223": "AB890X",
+        "12224": "AB890X",
+        "12225": "AB890X",
+        "12226": "AB890X",
+        "12227": "AB890X",
+        "12228": "AB890X",
+        "12229": "AB890X",
+        "12230": "AB890X",
+        "12231": "AB890X",
+        "12232": "AB890X",
+        "12233": "AB890X",
+        "12234": "AB890X",
+        "12235": "AB890X",
+        "12236": "AB890X",
+        "12237": "AB890X",
+        "12238": "AB890X",
+        "12239": "AB890X",
+        "12240": "AB890X",
+        "12241": "AB890X",
+        "12242": "AB890X",
+        "12243": "AB890X",
+        "12244": "AB890X",
+        "12245": "AB890X",
+        "12246": "AB890X",
+        "12247": "AB890X",
+        "12248": "AB890X",
+        "12249": "AB890X",
+        "12250": "AB890X",
+        "12252": "AB890X",
+        "12255": "AB890X",
+        "12256": "AB890X",
+        "12257": "AB890X",
+        "12260": "AB890X",
+        "12261": "AB890X",
+        "12288": "AB890X",
+        "12301": "AB890X",
+        "12302": "AB890X",
+        "12303": "AB890X",
+        "12304": "AB890X",
+        "12305": "AB890X",
+        "12306": "AB890X",
+        "12307": "AB890X",
+        "12308": "AB890X",
+        "12309": "AB890X",
+        "12325": "AB890X",
+        "12345": "AB890X",
+        "12401": "AB890X",
+        "12402": "AB890X",
+        "12404": "AB890X",
+        "12405": "AB890X",
+        "12406": "AB900X",
+        "12407": "AB890X",
+        "12409": "AB890X",
+        "12410": "AB890X",
+        "12411": "AB890X",
+        "12412": "AB890X",
+        "12413": "AB890X",
+        "12414": "AB890X",
+        "12416": "AB890X",
+        "12417": "AB890X",
+        "12418": "AB890X",
+        "12419": "AB890X",
+        "12420": "AB890X",
+        "12421": "AB900X",
+        "12422": "AB890X",
+        "12423": "AB890X",
+        "12424": "AB890X",
+        "12427": "AB890X",
+        "12428": "AB890X",
+        "12429": "AB890X",
+        "12430": "AB900X",
+        "12431": "AB890X",
+        "12432": "AB890X",
+        "12433": "AB890X",
+        "12434": "AB900X",
+        "12435": "AB890X",
+        "12436": "AB890X",
+        "12438": "AB900X",
+        "12439": "AB890X",
+        "12440": "AB890X",
+        "12441": "AB890X",
+        "12442": "AB890X",
+        "12443": "AB890X",
+        "12444": "AB890X",
+        "12446": "AB890X",
+        "12448": "AB890X",
+        "12449": "AB890X",
+        "12450": "AB890X",
+        "12451": "AB890X",
+        "12452": "AB890X",
+        "12453": "AB890X",
+        "12454": "AB890X",
+        "12455": "AB900X",
+        "12456": "AB890X",
+        "12457": "AB890X",
+        "12458": "AB890X",
+        "12459": "AB900X",
+        "12460": "AB890X",
+        "12461": "AB890X",
+        "12463": "AB890X",
+        "12464": "AB890X",
+        "12465": "AB890X",
+        "12466": "AB890X",
+        "12468": "AB900X",
+        "12469": "AB890X",
+        "12470": "AB890X",
+        "12471": "AB890X",
+        "12472": "AB890X",
+        "12473": "AB890X",
+        "12474": "AB900X",
+        "12475": "AB890X",
+        "12477": "AB890X",
+        "12480": "AB890X",
+        "12481": "AB890X",
+        "12482": "AB890X",
+        "12483": "AB890X",
+        "12484": "AB890X",
+        "12485": "AB890X",
+        "12486": "AB890X",
+        "12487": "AB890X",
+        "12489": "AB890X",
+        "12490": "AB890X",
+        "12491": "AB890X",
+        "12492": "AB890X",
+        "12493": "AB890X",
+        "12494": "AB890X",
+        "12495": "AB890X",
+        "12496": "AB890X",
+        "12498": "AB890X",
+        "12501": "AB890X",
+        "12502": "AB890X",
+        "12503": "AB890X",
+        "12504": "AB890X",
+        "12506": "AB890X",
+        "12507": "AB890X",
+        "12508": "AB890X",
+        "12510": "AB890X",
+        "12511": "AB890X",
+        "12512": "AB890X",
+        "12513": "AB890X",
+        "12514": "AB890X",
+        "12515": "AB890X",
+        "12516": "AB890X",
+        "12517": "AB890X",
+        "12518": "AB890X",
+        "12520": "AB890X",
+        "12521": "AB890X",
+        "12522": "AB890X",
+        "12523": "AB890X",
+        "12524": "AB890X",
+        "12525": "AB890X",
+        "12526": "AB890X",
+        "12527": "AB890X",
+        "12528": "AB890X",
+        "12529": "AB890X",
+        "12530": "AB890X",
+        "12531": "AB890X",
+        "12533": "AB890X",
+        "12534": "AB890X",
+        "12537": "AB890X",
+        "12538": "AB890X",
+        "12540": "AB890X",
+        "12541": "AB890X",
+        "12542": "AB890X",
+        "12543": "AB890X",
+        "12544": "AB890X",
+        "12545": "AB890X",
+        "12546": "AB890X",
+        "12547": "AB890X",
+        "12548": "AB890X",
+        "12549": "AB890X",
+        "12550": "AB890X",
+        "12551": "AB890X",
+        "12552": "AB890X",
+        "12553": "AB890X",
+        "12555": "AB890X",
+        "12561": "AB890X",
+        "12563": "AB890X",
+        "12564": "AB890X",
+        "12565": "AB890X",
+        "12566": "AB890X",
+        "12567": "AB890X",
+        "12568": "AB890X",
+        "12569": "AB890X",
+        "12570": "AB890X",
+        "12571": "AB890X",
+        "12572": "AB890X",
+        "12574": "AB890X",
+        "12575": "AB890X",
+        "12577": "AB890X",
+        "12578": "AB890X",
+        "12580": "AB890X",
+        "12581": "AB890X",
+        "12582": "AB890X",
+        "12583": "AB890X",
+        "12584": "AB890X",
+        "12585": "AB890X",
+        "12586": "AB890X",
+        "12588": "AB890X",
+        "12589": "AB890X",
+        "12590": "AB890X",
+        "12592": "AB890X",
+        "12593": "AB890X",
+        "12594": "AB890X",
+        "12601": "AB890X",
+        "12602": "AB890X",
+        "12603": "AB890X",
+        "12604": "AB890X",
+        "12701": "AB890X",
+        "12719": "AB890X",
+        "12720": "AB890X",
+        "12721": "AB890X",
+        "12722": "AB890X",
+        "12723": "AB890X",
+        "12724": "AB890X",
+        "12725": "AB890X",
+        "12726": "AB890X",
+        "12727": "AB890X",
+        "12729": "AB890X",
+        "12732": "AB890X",
+        "12733": "AB890X",
+        "12734": "AB890X",
+        "12736": "AB890X",
+        "12737": "AB890X",
+        "12738": "AB890X",
+        "12740": "AB890X",
+        "12741": "AB890X",
+        "12742": "AB890X",
+        "12743": "AB890X",
+        "12745": "AB890X",
+        "12746": "AB890X",
+        "12747": "AB890X",
+        "12748": "AB890X",
+        "12749": "AB890X",
+        "12750": "AB890X",
+        "12751": "AB890X",
+        "12752": "AB890X",
+        "12754": "AB890X",
+        "12758": "AB890X",
+        "12759": "AB890X",
+        "12760": "AB890X",
+        "12762": "AB890X",
+        "12763": "AB890X",
+        "12764": "AB890X",
+        "12765": "AB890X",
+        "12766": "AB890X",
+        "12767": "AB890X",
+        "12768": "AB890X",
+        "12769": "AB890X",
+        "12770": "AB890X",
+        "12771": "AB890X",
+        "12775": "AB890X",
+        "12776": "AB890X",
+        "12777": "AB890X",
+        "12778": "AB890X",
+        "12779": "AB890X",
+        "12780": "AB890X",
+        "12781": "AB890X",
+        "12783": "AB890X",
+        "12784": "AB890X",
+        "12785": "AB890X",
+        "12786": "AB890X",
+        "12787": "AB890X",
+        "12788": "AB890X",
+        "12789": "AB890X",
+        "12790": "AB890X",
+        "12791": "AB890X",
+        "12792": "AB890X",
+        "12801": "AB890X",
+        "12803": "AB890X",
+        "12804": "AB890X",
+        "12808": "AB890X",
+        "12809": "AB890X",
+        "12810": "AB890X",
+        "12811": "AB890X",
+        "12812": "AB890X",
+        "12814": "AB890X",
+        "12815": "AB890X",
+        "12816": "AB890X",
+        "12817": "AB890X",
+        "12819": "AB890X",
+        "12820": "AB890X",
+        "12821": "AB890X",
+        "12822": "AB890X",
+        "12823": "AB890X",
+        "12824": "AB890X",
+        "12827": "AB890X",
+        "12828": "AB890X",
+        "12831": "AB890X",
+        "12832": "AB890X",
+        "12833": "AB890X",
+        "12834": "AB890X",
+        "12835": "AB890X",
+        "12836": "AB890X",
+        "12837": "AB890X",
+        "12838": "AB890X",
+        "12839": "AB890X",
+        "12841": "AB890X",
+        "12842": "AB890X",
+        "12843": "AB890X",
+        "12844": "AB890X",
+        "12845": "AB890X",
+        "12846": "AB890X",
+        "12847": "AB890X",
+        "12848": "AB890X",
+        "12849": "AB890X",
+        "12850": "AB890X",
+        "12851": "AB890X",
+        "12852": "AB890X",
+        "12853": "AB890X",
+        "12854": "AB890X",
+        "12855": "AB889X",
+        "12856": "AB890X",
+        "12857": "AB890X",
+        "12858": "AB889X",
+        "12859": "AB890X",
+        "12860": "AB890X",
+        "12861": "AB890X",
+        "12862": "AB890X",
+        "12863": "AB890X",
+        "12864": "AB890X",
+        "12865": "AB890X",
+        "12866": "AB890X",
+        "12870": "AB889X",
+        "12871": "AB890X",
+        "12872": "AB889X",
+        "12873": "AB890X",
+        "12874": "AB890X",
+        "12878": "AB890X",
+        "12879": "AB889X",
+        "12883": "AB889X",
+        "12884": "AB890X",
+        "12885": "AB890X",
+        "12886": "AB890X",
+        "12887": "AB890X",
+        "12901": "AB889X",
+        "12903": "AB889X",
+        "12910": "AB889X",
+        "12911": "AB889X",
+        "12912": "AB889X",
+        "12913": "AB889X",
+        "12914": "AB889X",
+        "12915": "AB889X",
+        "12916": "AB889X",
+        "12917": "AB889X",
+        "12918": "AB890X",
+        "12919": "AB889X",
+        "12920": "AB889X",
+        "12921": "AB889X",
+        "12922": "AB889X",
+        "12923": "AB889X",
+        "12924": "AB889X",
+        "12926": "AB889X",
+        "12927": "AB900X",
+        "12928": "AB889X",
+        "12929": "AB889X",
+        "12930": "AB889X",
+        "12932": "AB889X",
+        "12933": "AB889X",
+        "12934": "AB889X",
+        "12935": "AB889X",
+        "12936": "AB889X",
+        "12937": "AB889X",
+        "12939": "AB889X",
+        "12941": "AB889X",
+        "12942": "AB889X",
+        "12943": "AB889X",
+        "12944": "AB889X",
+        "12945": "AB889X",
+        "12946": "AB889X",
+        "12949": "AB889X",
+        "12950": "AB889X",
+        "12952": "AB889X",
+        "12953": "AB889X",
+        "12955": "AB889X",
+        "12956": "AB889X",
+        "12957": "AB889X",
+        "12958": "AB889X",
+        "12959": "AB889X",
+        "12960": "AB889X",
+        "12961": "AB889X",
+        "12962": "AB889X",
+        "12964": "AB889X",
+        "12965": "AB900X",
+        "12966": "AB889X",
+        "12967": "AB900X",
+        "12969": "AB889X",
+        "12970": "AB889X",
+        "12972": "AB889X",
+        "12973": "AB889X",
+        "12974": "AB889X",
+        "12975": "AB889X",
+        "12976": "AB889X",
+        "12977": "AB889X",
+        "12978": "AB889X",
+        "12979": "AB889X",
+        "12980": "AB889X",
+        "12981": "AB889X",
+        "12983": "AB889X",
+        "12985": "AB889X",
+        "12986": "AB900X",
+        "12987": "AB889X",
+        "12989": "AB889X",
+        "12992": "AB889X",
+        "12993": "AB889X",
+        "12995": "AB889X",
+        "12996": "AB889X",
+        "12997": "AB889X",
+        "12998": "AB889X",
+        "13020": "AB900X",
+        "13021": "AB900X",
+        "13022": "AB900X",
+        "13024": "AB900X",
+        "13026": "AB900X",
+        "13027": "AB900X",
+        "13028": "AB900X",
+        "13029": "AB900X",
+        "13030": "AB900X",
+        "13031": "AB900X",
+        "13032": "AB900X",
+        "13033": "AB900X",
+        "13034": "AB900X",
+        "13035": "AB900X",
+        "13036": "AB900X",
+        "13037": "AB900X",
+        "13039": "AB900X",
+        "13040": "AB890X",
+        "13041": "AB900X",
+        "13042": "AB900X",
+        "13043": "AB900X",
+        "13044": "AB900X",
+        "13045": "AB900X",
+        "13051": "AB900X",
+        "13052": "AB900X",
+        "13053": "AB900X",
+        "13054": "AB900X",
+        "13056": "AB890X",
+        "13057": "AB900X",
+        "13060": "AB900X",
+        "13061": "AB900X",
+        "13062": "AB900X",
+        "13063": "AB900X",
+        "13064": "AB900X",
+        "13065": "AB900X",
+        "13066": "AB900X",
+        "13068": "AB900X",
+        "13069": "AB900X",
+        "13071": "AB900X",
+        "13072": "AB900X",
+        "13073": "AB900X",
+        "13074": "AB900X",
+        "13076": "AB900X",
+        "13077": "AB890X",
+        "13078": "AB900X",
+        "13080": "AB900X",
+        "13081": "AB900X",
+        "13082": "AB900X",
+        "13083": "AB900X",
+        "13084": "AB900X",
+        "13087": "AB890X",
+        "13088": "AB900X",
+        "13089": "AB900X",
+        "13090": "AB900X",
+        "13092": "AB900X",
+        "13093": "AB900X",
+        "13101": "AB890X",
+        "13102": "AB900X",
+        "13103": "AB900X",
+        "13104": "AB900X",
+        "13107": "AB900X",
+        "13108": "AB900X",
+        "13110": "AB900X",
+        "13111": "AB900X",
+        "13112": "AB900X",
+        "13113": "AB900X",
+        "13114": "AB900X",
+        "13115": "AB900X",
+        "13116": "AB900X",
+        "13117": "AB900X",
+        "13118": "AB900X",
+        "13119": "AB900X",
+        "13120": "AB900X",
+        "13121": "AB900X",
+        "13122": "AB900X",
+        "13123": "AB900X",
+        "13124": "AB900X",
+        "13126": "AB900X",
+        "13131": "AB900X",
+        "13132": "AB900X",
+        "13134": "AB900X",
+        "13135": "AB900X",
+        "13136": "AB900X",
+        "13137": "AB900X",
+        "13138": "AB900X",
+        "13139": "AB900X",
+        "13140": "AB900X",
+        "13141": "AB890X",
+        "13142": "AB900X",
+        "13143": "AB900X",
+        "13144": "AB900X",
+        "13145": "AB900X",
+        "13146": "AB900X",
+        "13147": "AB900X",
+        "13148": "AB900X",
+        "13152": "AB900X",
+        "13153": "AB900X",
+        "13154": "AB900X",
+        "13155": "AB900X",
+        "13156": "AB900X",
+        "13157": "AB900X",
+        "13158": "AB900X",
+        "13159": "AB900X",
+        "13160": "AB900X",
+        "13162": "AB900X",
+        "13163": "AB900X",
+        "13164": "AB900X",
+        "13165": "AB900X",
+        "13166": "AB900X",
+        "13167": "AB900X",
+        "13201": "AB900X",
+        "13202": "AB900X",
+        "13203": "AB900X",
+        "13204": "AB900X",
+        "13205": "AB900X",
+        "13206": "AB900X",
+        "13207": "AB900X",
+        "13208": "AB900X",
+        "13209": "AB900X",
+        "13210": "AB900X",
+        "13211": "AB900X",
+        "13212": "AB900X",
+        "13214": "AB900X",
+        "13215": "AB900X",
+        "13217": "AB900X",
+        "13218": "AB900X",
+        "13219": "AB900X",
+        "13220": "AB900X",
+        "13221": "AB900X",
+        "13224": "AB900X",
+        "13225": "AB900X",
+        "13235": "AB900X",
+        "13244": "AB900X",
+        "13250": "AB900X",
+        "13251": "AB900X",
+        "13252": "AB900X",
+        "13261": "AB900X",
+        "13290": "AB900X",
+        "13301": "AB900X",
+        "13302": "AB900X",
+        "13303": "AB900X",
+        "13304": "AB900X",
+        "13305": "AB900X",
+        "13308": "AB900X",
+        "13309": "AB900X",
+        "13310": "AB900X",
+        "13312": "AB900X",
+        "13313": "AB900X",
+        "13314": "AB900X",
+        "13315": "AB900X",
+        "13316": "AB900X",
+        "13317": "AB890X",
+        "13318": "AB900X",
+        "13319": "AB900X",
+        "13320": "AB900X",
+        "13321": "AB900X",
+        "13322": "AB900X",
+        "13323": "AB900X",
+        "13324": "AB900X",
+        "13325": "AB900X",
+        "13326": "AB900X",
+        "13327": "AB900X",
+        "13328": "AB900X",
+        "13329": "AB900X",
+        "13331": "AB900X",
+        "13332": "AB890X",
+        "13333": "AB900X",
+        "13334": "AB900X",
+        "13335": "AB900X",
+        "13337": "AB900X",
+        "13338": "AB900X",
+        "13339": "AB890X",
+        "13340": "AB900X",
+        "13341": "AB900X",
+        "13342": "AB900X",
+        "13343": "AB900X",
+        "13345": "AB900X",
+        "13346": "AB900X",
+        "13348": "AB900X",
+        "13350": "AB900X",
+        "13352": "AB900X",
+        "13353": "AB890X",
+        "13354": "AB900X",
+        "13355": "AB900X",
+        "13357": "AB900X",
+        "13360": "AB900X",
+        "13361": "AB900X",
+        "13362": "AB900X",
+        "13363": "AB900X",
+        "13364": "AB900X",
+        "13365": "AB900X",
+        "13367": "AB900X",
+        "13368": "AB900X",
+        "13401": "AB900X",
+        "13402": "AB900X",
+        "13403": "AB900X",
+        "13404": "AB900X",
+        "13406": "AB900X",
+        "13407": "AB900X",
+        "13408": "AB900X",
+        "13409": "AB900X",
+        "13410": "AB900X",
+        "13411": "AB900X",
+        "13413": "AB900X",
+        "13415": "AB900X",
+        "13416": "AB900X",
+        "13417": "AB900X",
+        "13418": "AB900X",
+        "13420": "AB900X",
+        "13421": "AB900X",
+        "13424": "AB900X",
+        "13425": "AB900X",
+        "13426": "AB900X",
+        "13428": "AB890X",
+        "13431": "AB900X",
+        "13433": "AB900X",
+        "13435": "AB900X",
+        "13436": "AB890X",
+        "13437": "AB900X",
+        "13438": "AB900X",
+        "13439": "AB900X",
+        "13440": "AB900X",
+        "13441": "AB900X",
+        "13442": "AB900X",
+        "13449": "AB900X",
+        "13450": "AB900X",
+        "13452": "AB890X",
+        "13454": "AB900X",
+        "13455": "AB900X",
+        "13456": "AB900X",
+        "13457": "AB900X",
+        "13459": "AB890X",
+        "13460": "AB890X",
+        "13461": "AB900X",
+        "13464": "AB890X",
+        "13465": "AB900X",
+        "13468": "AB900X",
+        "13469": "AB900X",
+        "13470": "AB900X",
+        "13471": "AB900X",
+        "13472": "AB900X",
+        "13473": "AB900X",
+        "13475": "AB900X",
+        "13476": "AB900X",
+        "13477": "AB900X",
+        "13478": "AB900X",
+        "13479": "AB900X",
+        "13480": "AB900X",
+        "13482": "AB900X",
+        "13483": "AB900X",
+        "13484": "AB900X",
+        "13485": "AB900X",
+        "13486": "AB900X",
+        "13488": "AB900X",
+        "13489": "AB900X",
+        "13490": "AB900X",
+        "13491": "AB900X",
+        "13492": "AB900X",
+        "13493": "AB900X",
+        "13494": "AB900X",
+        "13495": "AB900X",
+        "13501": "AB900X",
+        "13502": "AB900X",
+        "13503": "AB900X",
+        "13504": "AB900X",
+        "13505": "AB900X",
+        "13599": "AB900X",
+        "13601": "AB900X",
+        "13602": "AB900X",
+        "13603": "AB900X",
+        "13605": "AB900X",
+        "13606": "AB900X",
+        "13607": "AB900X",
+        "13608": "AB900X",
+        "13611": "AB900X",
+        "13612": "AB900X",
+        "13613": "AB900X",
+        "13614": "AB900X",
+        "13615": "AB900X",
+        "13616": "AB900X",
+        "13617": "AB900X",
+        "13618": "AB900X",
+        "13619": "AB900X",
+        "13620": "AB900X",
+        "13621": "AB900X",
+        "13622": "AB900X",
+        "13623": "AB900X",
+        "13624": "AB900X",
+        "13625": "AB900X",
+        "13626": "AB900X",
+        "13627": "AB900X",
+        "13628": "AB900X",
+        "13630": "AB900X",
+        "13631": "AB900X",
+        "13632": "AB900X",
+        "13633": "AB900X",
+        "13634": "AB900X",
+        "13635": "AB900X",
+        "13636": "AB900X",
+        "13637": "AB900X",
+        "13638": "AB900X",
+        "13639": "AB900X",
+        "13640": "AB900X",
+        "13641": "AB900X",
+        "13642": "AB900X",
+        "13643": "AB900X",
+        "13645": "AB900X",
+        "13646": "AB900X",
+        "13647": "AB900X",
+        "13648": "AB900X",
+        "13649": "AB900X",
+        "13650": "AB900X",
+        "13651": "AB900X",
+        "13652": "AB900X",
+        "13654": "AB900X",
+        "13655": "AB900X",
+        "13656": "AB900X",
+        "13657": "AB900X",
+        "13658": "AB900X",
+        "13659": "AB900X",
+        "13660": "AB900X",
+        "13661": "AB900X",
+        "13662": "AB900X",
+        "13664": "AB900X",
+        "13665": "AB900X",
+        "13666": "AB900X",
+        "13667": "AB900X",
+        "13668": "AB900X",
+        "13669": "AB900X",
+        "13670": "AB900X",
+        "13671": "AB900X",
+        "13672": "AB900X",
+        "13673": "AB900X",
+        "13674": "AB900X",
+        "13675": "AB900X",
+        "13676": "AB900X",
+        "13677": "AB900X",
+        "13678": "AB900X",
+        "13679": "AB900X",
+        "13680": "AB900X",
+        "13681": "AB900X",
+        "13682": "AB900X",
+        "13683": "AB900X",
+        "13684": "AB900X",
+        "13685": "AB900X",
+        "13687": "AB900X",
+        "13690": "AB900X",
+        "13691": "AB900X",
+        "13692": "AB900X",
+        "13693": "AB900X",
+        "13694": "AB900X",
+        "13695": "AB900X",
+        "13696": "AB900X",
+        "13697": "AB900X",
+        "13699": "AB900X",
+        "13730": "AB890X",
+        "13731": "AB900X",
+        "13732": "AB890X",
+        "13733": "AB890X",
+        "13734": "AB890X",
+        "13736": "AB890X",
+        "13737": "AB890X",
+        "13738": "AB890X",
+        "13739": "AB900X",
+        "13740": "AB900X",
+        "13743": "AB890X",
+        "13744": "AB890X",
+        "13745": "AB890X",
+        "13746": "AB890X",
+        "13747": "AB900X",
+        "13748": "AB890X",
+        "13749": "AB890X",
+        "13750": "AB900X",
+        "13751": "AB900X",
+        "13752": "AB900X",
+        "13753": "AB900X",
+        "13754": "AB890X",
+        "13755": "AB890X",
+        "13756": "AB890X",
+        "13757": "AB900X",
+        "13758": "AB890X",
+        "13760": "AB890X",
+        "13761": "AB890X",
+        "13762": "AB890X",
+        "13763": "AB890X",
+        "13774": "AB900X",
+        "13775": "AB900X",
+        "13776": "AB900X",
+        "13777": "AB890X",
+        "13778": "AB890X",
+        "13780": "AB890X",
+        "13782": "AB900X",
+        "13783": "AB890X",
+        "13784": "AB890X",
+        "13786": "AB900X",
+        "13787": "AB890X",
+        "13788": "AB900X",
+        "13790": "AB890X",
+        "13794": "AB890X",
+        "13795": "AB890X",
+        "13796": "AB900X",
+        "13797": "AB890X",
+        "13801": "AB890X",
+        "13802": "AB890X",
+        "13803": "AB890X",
+        "13804": "AB900X",
+        "13806": "AB900X",
+        "13807": "AB900X",
+        "13808": "AB900X",
+        "13809": "AB900X",
+        "13810": "AB900X",
+        "13811": "AB890X",
+        "13812": "AB890X",
+        "13813": "AB890X",
+        "13814": "AB890X",
+        "13815": "AB890X",
+        "13820": "AB900X",
+        "13825": "AB900X",
+        "13826": "AB890X",
+        "13827": "AB890X",
+        "13830": "AB890X",
+        "13832": "AB890X",
+        "13833": "AB890X",
+        "13834": "AB900X",
+        "13835": "AB890X",
+        "13837": "AB900X",
+        "13838": "AB900X",
+        "13839": "AB900X",
+        "13840": "AB890X",
+        "13841": "AB890X",
+        "13842": "AB900X",
+        "13843": "AB900X",
+        "13844": "AB890X",
+        "13845": "AB890X",
+        "13846": "AB900X",
+        "13847": "AB900X",
+        "13848": "AB890X",
+        "13849": "AB900X",
+        "13850": "AB890X",
+        "13851": "AB890X",
+        "13856": "AB900X",
+        "13859": "AB900X",
+        "13860": "AB900X",
+        "13861": "AB900X",
+        "13862": "AB890X",
+        "13863": "AB890X",
+        "13864": "AB890X",
+        "13865": "AB890X",
+        "13901": "AB890X",
+        "13902": "AB890X",
+        "13903": "AB890X",
+        "13904": "AB890X",
+        "13905": "AB890X",
+        "14001": "AB900X",
+        "14004": "AB900X",
+        "14005": "AB900X",
+        "14006": "AB900X",
+        "14008": "AB900X",
+        "14009": "AB900X",
+        "14010": "AB900X",
+        "14011": "AB900X",
+        "14012": "AB900X",
+        "14013": "AB900X",
+        "14020": "AB900X",
+        "14021": "AB900X",
+        "14024": "AB900X",
+        "14025": "AB900X",
+        "14026": "AB900X",
+        "14027": "AB900X",
+        "14028": "AB900X",
+        "14029": "AB900X",
+        "14030": "AB900X",
+        "14031": "AB900X",
+        "14032": "AB900X",
+        "14033": "AB900X",
+        "14034": "AB900X",
+        "14035": "AB900X",
+        "14036": "AB900X",
+        "14037": "AB900X",
+        "14038": "AB900X",
+        "14039": "AB900X",
+        "14040": "AB900X",
+        "14041": "AB900X",
+        "14042": "AB900X",
+        "14043": "AB900X",
+        "14047": "AB900X",
+        "14048": "AB900X",
+        "14051": "AB900X",
+        "14052": "AB900X",
+        "14054": "AB900X",
+        "14055": "AB900X",
+        "14056": "AB900X",
+        "14057": "AB900X",
+        "14058": "AB900X",
+        "14059": "AB900X",
+        "14060": "AB900X",
+        "14061": "AB900X",
+        "14062": "AB900X",
+        "14063": "AB900X",
+        "14065": "AB900X",
+        "14066": "AB900X",
+        "14067": "AB900X",
+        "14068": "AB900X",
+        "14069": "AB900X",
+        "14070": "AB900X",
+        "14072": "AB900X",
+        "14075": "AB900X",
+        "14080": "AB900X",
+        "14081": "AB900X",
+        "14082": "AB900X",
+        "14083": "AB900X",
+        "14085": "AB900X",
+        "14086": "AB900X",
+        "14091": "AB900X",
+        "14092": "AB900X",
+        "14094": "AB900X",
+        "14095": "AB900X",
+        "14098": "AB900X",
+        "14101": "AB900X",
+        "14102": "AB900X",
+        "14103": "AB900X",
+        "14105": "AB900X",
+        "14107": "AB900X",
+        "14108": "AB900X",
+        "14109": "AB900X",
+        "14110": "AB900X",
+        "14111": "AB900X",
+        "14112": "AB900X",
+        "14113": "AB900X",
+        "14120": "AB900X",
+        "14125": "AB900X",
+        "14126": "AB900X",
+        "14127": "AB900X",
+        "14129": "AB900X",
+        "14130": "AB900X",
+        "14131": "AB900X",
+        "14132": "AB900X",
+        "14133": "AB900X",
+        "14134": "AB900X",
+        "14135": "AB900X",
+        "14136": "AB900X",
+        "14138": "AB900X",
+        "14139": "AB900X",
+        "14140": "AB900X",
+        "14141": "AB900X",
+        "14143": "AB900X",
+        "14144": "AB900X",
+        "14145": "AB900X",
+        "14150": "AB900X",
+        "14151": "AB900X",
+        "14166": "AB900X",
+        "14167": "AB900X",
+        "14168": "AB900X",
+        "14169": "AB900X",
+        "14170": "AB900X",
+        "14171": "AB900X",
+        "14172": "AB900X",
+        "14173": "AB900X",
+        "14174": "AB900X",
+        "14201": "AB900X",
+        "14202": "AB900X",
+        "14203": "AB900X",
+        "14204": "AB900X",
+        "14205": "AB900X",
+        "14206": "AB900X",
+        "14207": "AB900X",
+        "14208": "AB900X",
+        "14209": "AB900X",
+        "14210": "AB900X",
+        "14211": "AB900X",
+        "14212": "AB900X",
+        "14213": "AB900X",
+        "14214": "AB900X",
+        "14215": "AB900X",
+        "14216": "AB900X",
+        "14217": "AB900X",
+        "14218": "AB900X",
+        "14219": "AB900X",
+        "14220": "AB900X",
+        "14221": "AB900X",
+        "14222": "AB900X",
+        "14223": "AB900X",
+        "14224": "AB900X",
+        "14225": "AB900X",
+        "14226": "AB900X",
+        "14227": "AB900X",
+        "14228": "AB900X",
+        "14231": "AB900X",
+        "14233": "AB900X",
+        "14240": "AB900X",
+        "14241": "AB900X",
+        "14260": "AB900X",
+        "14261": "AB900X",
+        "14263": "AB900X",
+        "14264": "AB900X",
+        "14265": "AB900X",
+        "14267": "AB900X",
+        "14269": "AB900X",
+        "14270": "AB900X",
+        "14272": "AB900X",
+        "14273": "AB900X",
+        "14276": "AB900X",
+        "14280": "AB900X",
+        "14301": "AB900X",
+        "14302": "AB900X",
+        "14303": "AB900X",
+        "14304": "AB900X",
+        "14305": "AB900X",
+        "14410": "AB900X",
+        "14411": "AB900X",
+        "14413": "AB900X",
+        "14414": "AB900X",
+        "14415": "AB900X",
+        "14416": "AB900X",
+        "14418": "AB900X",
+        "14420": "AB900X",
+        "14422": "AB900X",
+        "14423": "AB900X",
+        "14424": "AB900X",
+        "14425": "AB900X",
+        "14427": "AB900X",
+        "14428": "AB900X",
+        "14429": "AB900X",
+        "14430": "AB900X",
+        "14432": "AB900X",
+        "14433": "AB900X",
+        "14435": "AB900X",
+        "14437": "AB900X",
+        "14441": "AB900X",
+        "14443": "AB900X",
+        "14445": "AB900X",
+        "14449": "AB900X",
+        "14450": "AB900X",
+        "14452": "AB900X",
+        "14453": "AB900X",
+        "14454": "AB900X",
+        "14456": "AB900X",
+        "14461": "AB900X",
+        "14462": "AB900X",
+        "14463": "AB900X",
+        "14464": "AB900X",
+        "14466": "AB900X",
+        "14467": "AB900X",
+        "14468": "AB900X",
+        "14469": "AB900X",
+        "14470": "AB900X",
+        "14471": "AB900X",
+        "14472": "AB900X",
+        "14475": "AB900X",
+        "14476": "AB900X",
+        "14477": "AB900X",
+        "14478": "AB900X",
+        "14479": "AB900X",
+        "14480": "AB900X",
+        "14481": "AB900X",
+        "14482": "AB900X",
+        "14485": "AB900X",
+        "14486": "AB900X",
+        "14487": "AB900X",
+        "14488": "AB900X",
+        "14489": "AB900X",
+        "14502": "AB900X",
+        "14504": "AB900X",
+        "14505": "AB900X",
+        "14506": "AB900X",
+        "14507": "AB900X",
+        "14508": "AB900X",
+        "14510": "AB900X",
+        "14511": "AB900X",
+        "14512": "AB900X",
+        "14513": "AB900X",
+        "14514": "AB900X",
+        "14515": "AB900X",
+        "14516": "AB900X",
+        "14517": "AB900X",
+        "14518": "AB900X",
+        "14519": "AB900X",
+        "14520": "AB900X",
+        "14521": "AB900X",
+        "14522": "AB900X",
+        "14525": "AB900X",
+        "14526": "AB900X",
+        "14527": "AB900X",
+        "14529": "AB890X",
+        "14530": "AB900X",
+        "14532": "AB900X",
+        "14533": "AB900X",
+        "14534": "AB900X",
+        "14536": "AB900X",
+        "14537": "AB900X",
+        "14538": "AB900X",
+        "14539": "AB900X",
+        "14541": "AB900X",
+        "14542": "AB900X",
+        "14543": "AB900X",
+        "14544": "AB900X",
+        "14545": "AB900X",
+        "14546": "AB900X",
+        "14547": "AB900X",
+        "14548": "AB900X",
+        "14549": "AB900X",
+        "14550": "AB900X",
+        "14551": "AB900X",
+        "14555": "AB900X",
+        "14556": "AB900X",
+        "14557": "AB900X",
+        "14558": "AB900X",
+        "14559": "AB900X",
+        "14560": "AB900X",
+        "14561": "AB900X",
+        "14563": "AB900X",
+        "14564": "AB900X",
+        "14568": "AB900X",
+        "14569": "AB900X",
+        "14571": "AB900X",
+        "14572": "AB900X",
+        "14580": "AB900X",
+        "14585": "AB900X",
+        "14586": "AB900X",
+        "14588": "AB900X",
+        "14589": "AB900X",
+        "14590": "AB900X",
+        "14591": "AB900X",
+        "14592": "AB900X",
+        "14602": "AB900X",
+        "14603": "AB900X",
+        "14604": "AB900X",
+        "14605": "AB900X",
+        "14606": "AB900X",
+        "14607": "AB900X",
+        "14608": "AB900X",
+        "14609": "AB900X",
+        "14610": "AB900X",
+        "14611": "AB900X",
+        "14612": "AB900X",
+        "14613": "AB900X",
+        "14614": "AB900X",
+        "14615": "AB900X",
+        "14616": "AB900X",
+        "14617": "AB900X",
+        "14618": "AB900X",
+        "14619": "AB900X",
+        "14620": "AB900X",
+        "14621": "AB900X",
+        "14622": "AB900X",
+        "14623": "AB900X",
+        "14624": "AB900X",
+        "14625": "AB900X",
+        "14626": "AB900X",
+        "14627": "AB900X",
+        "14638": "AB900X",
+        "14639": "AB900X",
+        "14642": "AB900X",
+        "14643": "AB900X",
+        "14644": "AB900X",
+        "14645": "AB900X",
+        "14646": "AB900X",
+        "14647": "AB900X",
+        "14649": "AB900X",
+        "14650": "AB900X",
+        "14651": "AB900X",
+        "14652": "AB900X",
+        "14653": "AB900X",
+        "14664": "AB900X",
+        "14673": "AB900X",
+        "14683": "AB900X",
+        "14692": "AB900X",
+        "14694": "AB900X",
+        "14701": "AB900X",
+        "14702": "AB900X",
+        "14706": "AB900X",
+        "14707": "AB900X",
+        "14708": "AB900X",
+        "14709": "AB900X",
+        "14710": "AB900X",
+        "14711": "AB900X",
+        "14712": "AB900X",
+        "14714": "AB900X",
+        "14715": "AB900X",
+        "14716": "AB900X",
+        "14717": "AB900X",
+        "14718": "AB900X",
+        "14719": "AB900X",
+        "14720": "AB900X",
+        "14721": "AB900X",
+        "14722": "AB900X",
+        "14723": "AB900X",
+        "14724": "AB900X",
+        "14726": "AB900X",
+        "14727": "AB900X",
+        "14728": "AB900X",
+        "14729": "AB900X",
+        "14730": "AB900X",
+        "14731": "AB900X",
+        "14732": "AB900X",
+        "14733": "AB900X",
+        "14735": "AB900X",
+        "14736": "AB900X",
+        "14737": "AB900X",
+        "14738": "AB900X",
+        "14739": "AB900X",
+        "14740": "AB900X",
+        "14741": "AB900X",
+        "14742": "AB900X",
+        "14743": "AB900X",
+        "14744": "AB900X",
+        "14745": "AB900X",
+        "14747": "AB900X",
+        "14748": "AB900X",
+        "14750": "AB900X",
+        "14751": "AB900X",
+        "14752": "AB900X",
+        "14753": "AB900X",
+        "14754": "AB900X",
+        "14755": "AB900X",
+        "14756": "AB900X",
+        "14757": "AB900X",
+        "14758": "AB900X",
+        "14760": "AB900X",
+        "14762": "AB900X",
+        "14766": "AB900X",
+        "14767": "AB900X",
+        "14769": "AB900X",
+        "14770": "AB900X",
+        "14772": "AB900X",
+        "14774": "AB900X",
+        "14775": "AB900X",
+        "14777": "AB900X",
+        "14778": "AB900X",
+        "14779": "AB900X",
+        "14781": "AB900X",
+        "14782": "AB900X",
+        "14783": "AB900X",
+        "14784": "AB900X",
+        "14785": "AB900X",
+        "14786": "AB900X",
+        "14787": "AB900X",
+        "14788": "AB900X",
+        "14801": "AB890X",
+        "14802": "AB900X",
+        "14803": "AB900X",
+        "14804": "AB900X",
+        "14805": "AB890X",
+        "14806": "AB900X",
+        "14807": "AB900X",
+        "14808": "AB900X",
+        "14809": "AB900X",
+        "14810": "AB890X",
+        "14812": "AB890X",
+        "14813": "AB900X",
+        "14814": "AB890X",
+        "14815": "AB890X",
+        "14816": "AB890X",
+        "14817": "AB900X",
+        "14818": "AB890X",
+        "14819": "AB890X",
+        "14820": "AB890X",
+        "14821": "AB890X",
+        "14822": "AB900X",
+        "14823": "AB890X",
+        "14824": "AB890X",
+        "14825": "AB890X",
+        "14826": "AB900X",
+        "14827": "AB890X",
+        "14830": "AB890X",
+        "14831": "AB890X",
+        "14836": "AB900X",
+        "14837": "AB900X",
+        "14838": "AB890X",
+        "14839": "AB890X",
+        "14840": "AB890X",
+        "14841": "AB890X",
+        "14842": "AB900X",
+        "14843": "AB890X",
+        "14845": "AB890X",
+        "14846": "AB900X",
+        "14847": "AB900X",
+        "14850": "AB900X",
+        "14851": "AB900X",
+        "14852": "AB900X",
+        "14853": "AB900X",
+        "14854": "AB900X",
+        "14855": "AB890X",
+        "14856": "AB890X",
+        "14857": "AB900X",
+        "14858": "AB890X",
+        "14859": "AB890X",
+        "14860": "AB900X",
+        "14861": "AB890X",
+        "14863": "AB890X",
+        "14864": "AB890X",
+        "14865": "AB890X",
+        "14867": "AB900X",
+        "14869": "AB890X",
+        "14870": "AB890X",
+        "14871": "AB890X",
+        "14872": "AB890X",
+        "14873": "AB890X",
+        "14874": "AB890X",
+        "14876": "AB890X",
+        "14877": "AB890X",
+        "14878": "AB900X",
+        "14879": "AB890X",
+        "14880": "AB900X",
+        "14881": "AB900X",
+        "14882": "AB900X",
+        "14883": "AB890X",
+        "14884": "AB900X",
+        "14885": "AB890X",
+        "14886": "AB900X",
+        "14887": "AB890X",
+        "14889": "AB890X",
+        "14891": "AB890X",
+        "14892": "AB890X",
+        "14893": "AB890X",
+        "14894": "AB890X",
+        "14895": "AB900X",
+        "14897": "AB900X",
+        "14898": "AB890X",
+        "14901": "AB890X",
+        "14902": "AB890X",
+        "14903": "AB890X",
+        "14904": "AB890X",
+        "14905": "AB890X",
+        "14925": "AB890X",
+        "15001": "AB900X",
+        "15003": "AB900X",
+        "15004": "AB900X",
+        "15005": "AB900X",
+        "15006": "AB900X",
+        "15007": "AB900X",
+        "15009": "AB900X",
+        "15010": "AB900X",
+        "15012": "AB900X",
+        "15014": "AB900X",
+        "15015": "AB900X",
+        "15017": "AB900X",
+        "15018": "AB900X",
+        "15019": "AB900X",
+        "15020": "AB900X",
+        "15021": "AB900X",
+        "15022": "AB900X",
+        "15024": "AB900X",
+        "15025": "AB900X",
+        "15026": "AB900X",
+        "15027": "AB900X",
+        "15028": "AB900X",
+        "15030": "AB900X",
+        "15031": "AB900X",
+        "15032": "AB900X",
+        "15033": "AB900X",
+        "15034": "AB900X",
+        "15035": "AB900X",
+        "15037": "AB900X",
+        "15038": "AB900X",
+        "15042": "AB900X",
+        "15043": "AB900X",
+        "15044": "AB900X",
+        "15045": "AB900X",
+        "15046": "AB900X",
+        "15047": "AB900X",
+        "15049": "AB900X",
+        "15050": "AB900X",
+        "15051": "AB900X",
+        "15052": "AB900X",
+        "15053": "AB900X",
+        "15054": "AB900X",
+        "15055": "AB900X",
+        "15056": "AB900X",
+        "15057": "AB900X",
+        "15059": "AB900X",
+        "15060": "AB900X",
+        "15061": "AB900X",
+        "15062": "AB900X",
+        "15063": "AB900X",
+        "15064": "AB900X",
+        "15065": "AB900X",
+        "15066": "AB900X",
+        "15067": "AB900X",
+        "15068": "AB900X",
+        "15069": "AB900X",
+        "15071": "AB900X",
+        "15072": "AB900X",
+        "15074": "AB900X",
+        "15075": "AB900X",
+        "15076": "AB900X",
+        "15077": "AB900X",
+        "15078": "AB900X",
+        "15081": "AB900X",
+        "15082": "AB900X",
+        "15083": "AB900X",
+        "15084": "AB900X",
+        "15085": "AB900X",
+        "15086": "AB900X",
+        "15087": "AB900X",
+        "15088": "AB900X",
+        "15089": "AB900X",
+        "15090": "AB900X",
+        "15091": "AB900X",
+        "15095": "AB900X",
+        "15096": "AB900X",
+        "15101": "AB900X",
+        "15102": "AB900X",
+        "15104": "AB900X",
+        "15106": "AB900X",
+        "15108": "AB900X",
+        "15110": "AB900X",
+        "15112": "AB900X",
+        "15116": "AB900X",
+        "15120": "AB900X",
+        "15122": "AB900X",
+        "15123": "AB900X",
+        "15126": "AB900X",
+        "15127": "AB900X",
+        "15129": "AB900X",
+        "15131": "AB900X",
+        "15132": "AB900X",
+        "15133": "AB900X",
+        "15134": "AB900X",
+        "15135": "AB900X",
+        "15136": "AB900X",
+        "15137": "AB900X",
+        "15139": "AB900X",
+        "15140": "AB900X",
+        "15142": "AB900X",
+        "15143": "AB900X",
+        "15144": "AB900X",
+        "15145": "AB900X",
+        "15146": "AB900X",
+        "15147": "AB900X",
+        "15148": "AB900X",
+        "15201": "AB900X",
+        "15202": "AB900X",
+        "15203": "AB900X",
+        "15204": "AB900X",
+        "15205": "AB900X",
+        "15206": "AB900X",
+        "15207": "AB900X",
+        "15208": "AB900X",
+        "15209": "AB900X",
+        "15210": "AB900X",
+        "15211": "AB900X",
+        "15212": "AB900X",
+        "15213": "AB900X",
+        "15214": "AB900X",
+        "15215": "AB900X",
+        "15216": "AB900X",
+        "15217": "AB900X",
+        "15218": "AB900X",
+        "15219": "AB900X",
+        "15220": "AB900X",
+        "15221": "AB900X",
+        "15222": "AB900X",
+        "15223": "AB900X",
+        "15224": "AB900X",
+        "15225": "AB900X",
+        "15226": "AB900X",
+        "15227": "AB900X",
+        "15228": "AB900X",
+        "15229": "AB900X",
+        "15230": "AB900X",
+        "15231": "AB900X",
+        "15232": "AB900X",
+        "15233": "AB900X",
+        "15234": "AB900X",
+        "15235": "AB900X",
+        "15236": "AB900X",
+        "15237": "AB900X",
+        "15238": "AB900X",
+        "15239": "AB900X",
+        "15240": "AB900X",
+        "15241": "AB900X",
+        "15242": "AB900X",
+        "15243": "AB900X",
+        "15244": "AB900X",
+        "15250": "AB900X",
+        "15251": "AB900X",
+        "15252": "AB900X",
+        "15253": "AB900X",
+        "15254": "AB900X",
+        "15255": "AB900X",
+        "15257": "AB900X",
+        "15258": "AB900X",
+        "15259": "AB900X",
+        "15260": "AB900X",
+        "15261": "AB900X",
+        "15262": "AB900X",
+        "15263": "AB900X",
+        "15264": "AB900X",
+        "15265": "AB900X",
+        "15267": "AB900X",
+        "15268": "AB900X",
+        "15270": "AB900X",
+        "15272": "AB900X",
+        "15274": "AB900X",
+        "15275": "AB900X",
+        "15276": "AB900X",
+        "15277": "AB900X",
+        "15278": "AB900X",
+        "15279": "AB900X",
+        "15281": "AB900X",
+        "15282": "AB900X",
+        "15283": "AB900X",
+        "15285": "AB900X",
+        "15286": "AB900X",
+        "15289": "AB900X",
+        "15290": "AB900X",
+        "15295": "AB900X",
+        "15301": "AB900X",
+        "15310": "AB900X",
+        "15311": "AB900X",
+        "15312": "AB900X",
+        "15313": "AB900X",
+        "15314": "AB900X",
+        "15315": "AB900X",
+        "15316": "AB900X",
+        "15317": "AB900X",
+        "15320": "AB900X",
+        "15321": "AB900X",
+        "15322": "AB900X",
+        "15323": "AB900X",
+        "15324": "AB900X",
+        "15325": "AB900X",
+        "15327": "AB900X",
+        "15329": "AB900X",
+        "15330": "AB900X",
+        "15331": "AB900X",
+        "15332": "AB900X",
+        "15333": "AB900X",
+        "15334": "AB900X",
+        "15336": "AB900X",
+        "15337": "AB900X",
+        "15338": "AB900X",
+        "15339": "AB900X",
+        "15340": "AB900X",
+        "15341": "AB900X",
+        "15342": "AB900X",
+        "15344": "AB900X",
+        "15345": "AB900X",
+        "15346": "AB900X",
+        "15347": "AB900X",
+        "15348": "AB900X",
+        "15349": "AB900X",
+        "15350": "AB900X",
+        "15351": "AB900X",
+        "15352": "AB900X",
+        "15353": "AB900X",
+        "15357": "AB900X",
+        "15358": "AB900X",
+        "15359": "AB900X",
+        "15360": "AB900X",
+        "15361": "AB900X",
+        "15362": "AB900X",
+        "15363": "AB900X",
+        "15364": "AB900X",
+        "15365": "AB900X",
+        "15366": "AB900X",
+        "15367": "AB900X",
+        "15368": "AB900X",
+        "15370": "AB900X",
+        "15376": "AB900X",
+        "15377": "AB900X",
+        "15378": "AB900X",
+        "15379": "AB900X",
+        "15380": "AB900X",
+        "15401": "AB900X",
+        "15410": "AB900X",
+        "15411": "AB900X",
+        "15412": "AB900X",
+        "15413": "AB900X",
+        "15415": "AB900X",
+        "15416": "AB900X",
+        "15417": "AB900X",
+        "15419": "AB900X",
+        "15420": "AB900X",
+        "15421": "AB900X",
+        "15422": "AB900X",
+        "15423": "AB900X",
+        "15424": "AB900X",
+        "15425": "AB900X",
+        "15427": "AB900X",
+        "15428": "AB900X",
+        "15429": "AB900X",
+        "15430": "AB900X",
+        "15431": "AB900X",
+        "15432": "AB900X",
+        "15433": "AB900X",
+        "15434": "AB900X",
+        "15435": "AB900X",
+        "15436": "AB900X",
+        "15437": "AB900X",
+        "15438": "AB900X",
+        "15439": "AB900X",
+        "15440": "AB900X",
+        "15442": "AB900X",
+        "15443": "AB900X",
+        "15444": "AB900X",
+        "15445": "AB900X",
+        "15446": "AB900X",
+        "15447": "AB900X",
+        "15448": "AB900X",
+        "15449": "AB900X",
+        "15450": "AB900X",
+        "15451": "AB900X",
+        "15454": "AB900X",
+        "15455": "AB900X",
+        "15456": "AB900X",
+        "15458": "AB900X",
+        "15459": "AB900X",
+        "15460": "AB900X",
+        "15461": "AB900X",
+        "15462": "AB900X",
+        "15463": "AB900X",
+        "15464": "AB900X",
+        "15465": "AB900X",
+        "15466": "AB900X",
+        "15467": "AB900X",
+        "15468": "AB900X",
+        "15469": "AB900X",
+        "15470": "AB900X",
+        "15472": "AB900X",
+        "15473": "AB900X",
+        "15474": "AB900X",
+        "15475": "AB900X",
+        "15476": "AB900X",
+        "15477": "AB900X",
+        "15478": "AB900X",
+        "15479": "AB900X",
+        "15480": "AB900X",
+        "15482": "AB900X",
+        "15483": "AB900X",
+        "15484": "AB900X",
+        "15485": "AB900X",
+        "15486": "AB900X",
+        "15488": "AB900X",
+        "15489": "AB900X",
+        "15490": "AB900X",
+        "15492": "AB900X",
+        "15501": "AB900X",
+        "15502": "AB900X",
+        "15510": "AB900X",
+        "15520": "AB900X",
+        "15521": "AB900X",
+        "15522": "AB900X",
+        "15530": "AB900X",
+        "15531": "AB900X",
+        "15532": "AB900X",
+        "15533": "AB900X",
+        "15534": "AB900X",
+        "15535": "AB900X",
+        "15536": "AB892X",
+        "15537": "AB900X",
+        "15538": "AB900X",
+        "15539": "AB900X",
+        "15540": "AB900X",
+        "15541": "AB900X",
+        "15542": "AB900X",
+        "15544": "AB900X",
+        "15545": "AB900X",
+        "15546": "AB900X",
+        "15547": "AB900X",
+        "15548": "AB900X",
+        "15549": "AB900X",
+        "15550": "AB900X",
+        "15551": "AB900X",
+        "15552": "AB900X",
+        "15553": "AB900X",
+        "15554": "AB900X",
+        "15555": "AB900X",
+        "15557": "AB900X",
+        "15558": "AB900X",
+        "15559": "AB900X",
+        "15560": "AB900X",
+        "15561": "AB900X",
+        "15562": "AB900X",
+        "15563": "AB900X",
+        "15564": "AB900X",
+        "15565": "AB900X",
+        "15601": "AB900X",
+        "15605": "AB900X",
+        "15606": "AB900X",
+        "15610": "AB900X",
+        "15611": "AB900X",
+        "15612": "AB900X",
+        "15613": "AB900X",
+        "15615": "AB900X",
+        "15616": "AB900X",
+        "15617": "AB900X",
+        "15618": "AB900X",
+        "15619": "AB900X",
+        "15620": "AB900X",
+        "15621": "AB900X",
+        "15622": "AB900X",
+        "15623": "AB900X",
+        "15624": "AB900X",
+        "15625": "AB900X",
+        "15626": "AB900X",
+        "15627": "AB900X",
+        "15628": "AB900X",
+        "15629": "AB900X",
+        "15631": "AB900X",
+        "15632": "AB900X",
+        "15633": "AB900X",
+        "15634": "AB900X",
+        "15635": "AB900X",
+        "15636": "AB900X",
+        "15637": "AB900X",
+        "15638": "AB900X",
+        "15639": "AB900X",
+        "15640": "AB900X",
+        "15641": "AB900X",
+        "15642": "AB900X",
+        "15644": "AB900X",
+        "15646": "AB900X",
+        "15647": "AB900X",
+        "15650": "AB900X",
+        "15655": "AB900X",
+        "15656": "AB900X",
+        "15658": "AB900X",
+        "15660": "AB900X",
+        "15661": "AB900X",
+        "15662": "AB900X",
+        "15663": "AB900X",
+        "15664": "AB900X",
+        "15665": "AB900X",
+        "15666": "AB900X",
+        "15668": "AB900X",
+        "15670": "AB900X",
+        "15671": "AB900X",
+        "15672": "AB900X",
+        "15673": "AB900X",
+        "15674": "AB900X",
+        "15675": "AB900X",
+        "15676": "AB900X",
+        "15677": "AB900X",
+        "15678": "AB900X",
+        "15679": "AB900X",
+        "15680": "AB900X",
+        "15681": "AB900X",
+        "15682": "AB900X",
+        "15683": "AB900X",
+        "15684": "AB900X",
+        "15685": "AB900X",
+        "15686": "AB900X",
+        "15687": "AB900X",
+        "15688": "AB900X",
+        "15689": "AB900X",
+        "15690": "AB900X",
+        "15691": "AB900X",
+        "15692": "AB900X",
+        "15693": "AB900X",
+        "15695": "AB900X",
+        "15696": "AB900X",
+        "15697": "AB900X",
+        "15698": "AB900X",
+        "15701": "AB900X",
+        "15705": "AB900X",
+        "15710": "AB900X",
+        "15711": "AB900X",
+        "15712": "AB900X",
+        "15713": "AB900X",
+        "15714": "AB900X",
+        "15715": "AB900X",
+        "15716": "AB900X",
+        "15717": "AB900X",
+        "15720": "AB900X",
+        "15721": "AB900X",
+        "15722": "AB900X",
+        "15723": "AB900X",
+        "15724": "AB900X",
+        "15725": "AB900X",
+        "15727": "AB900X",
+        "15728": "AB900X",
+        "15729": "AB900X",
+        "15730": "AB900X",
+        "15731": "AB900X",
+        "15732": "AB900X",
+        "15733": "AB900X",
+        "15734": "AB900X",
+        "15736": "AB900X",
+        "15737": "AB900X",
+        "15738": "AB900X",
+        "15739": "AB900X",
+        "15740": "AB900X",
+        "15741": "AB900X",
+        "15742": "AB900X",
+        "15744": "AB900X",
+        "15745": "AB900X",
+        "15746": "AB900X",
+        "15747": "AB900X",
+        "15748": "AB900X",
+        "15750": "AB900X",
+        "15752": "AB900X",
+        "15753": "AB900X",
+        "15754": "AB900X",
+        "15756": "AB900X",
+        "15757": "AB900X",
+        "15758": "AB900X",
+        "15759": "AB900X",
+        "15760": "AB900X",
+        "15761": "AB900X",
+        "15762": "AB900X",
+        "15763": "AB900X",
+        "15764": "AB900X",
+        "15765": "AB900X",
+        "15767": "AB900X",
+        "15770": "AB900X",
+        "15771": "AB900X",
+        "15772": "AB900X",
+        "15773": "AB900X",
+        "15774": "AB900X",
+        "15775": "AB900X",
+        "15776": "AB900X",
+        "15777": "AB900X",
+        "15778": "AB900X",
+        "15779": "AB900X",
+        "15780": "AB900X",
+        "15781": "AB900X",
+        "15783": "AB900X",
+        "15784": "AB900X",
+        "15801": "AB900X",
+        "15821": "AB900X",
+        "15822": "AB900X",
+        "15823": "AB900X",
+        "15824": "AB900X",
+        "15825": "AB900X",
+        "15827": "AB900X",
+        "15828": "AB900X",
+        "15829": "AB900X",
+        "15831": "AB900X",
+        "15832": "AB900X",
+        "15834": "AB900X",
+        "15840": "AB900X",
+        "15841": "AB900X",
+        "15845": "AB900X",
+        "15846": "AB900X",
+        "15847": "AB900X",
+        "15848": "AB900X",
+        "15849": "AB900X",
+        "15851": "AB900X",
+        "15853": "AB900X",
+        "15856": "AB900X",
+        "15857": "AB900X",
+        "15860": "AB900X",
+        "15861": "AB900X",
+        "15863": "AB900X",
+        "15864": "AB900X",
+        "15865": "AB900X",
+        "15866": "AB900X",
+        "15868": "AB900X",
+        "15870": "AB900X",
+        "15901": "AB900X",
+        "15902": "AB900X",
+        "15904": "AB900X",
+        "15905": "AB900X",
+        "15906": "AB900X",
+        "15907": "AB900X",
+        "15909": "AB900X",
+        "15915": "AB900X",
+        "15920": "AB900X",
+        "15921": "AB900X",
+        "15922": "AB900X",
+        "15923": "AB900X",
+        "15924": "AB900X",
+        "15925": "AB900X",
+        "15926": "AB900X",
+        "15927": "AB900X",
+        "15928": "AB900X",
+        "15929": "AB900X",
+        "15930": "AB900X",
+        "15931": "AB900X",
+        "15934": "AB900X",
+        "15935": "AB900X",
+        "15936": "AB900X",
+        "15937": "AB900X",
+        "15938": "AB900X",
+        "15940": "AB900X",
+        "15942": "AB900X",
+        "15943": "AB900X",
+        "15944": "AB900X",
+        "15945": "AB900X",
+        "15946": "AB900X",
+        "15948": "AB900X",
+        "15949": "AB900X",
+        "15951": "AB900X",
+        "15952": "AB900X",
+        "15953": "AB900X",
+        "15954": "AB900X",
+        "15955": "AB900X",
+        "15956": "AB900X",
+        "15957": "AB900X",
+        "15958": "AB900X",
+        "15959": "AB900X",
+        "15960": "AB900X",
+        "15961": "AB900X",
+        "15962": "AB900X",
+        "15963": "AB900X",
+        "15989": "AB900X",
+        "16001": "AB900X",
+        "16002": "AB900X",
+        "16003": "AB900X",
+        "16016": "AB900X",
+        "16017": "AB900X",
+        "16018": "AB900X",
+        "16020": "AB900X",
+        "16021": "AB900X",
+        "16022": "AB900X",
+        "16023": "AB900X",
+        "16024": "AB900X",
+        "16025": "AB900X",
+        "16027": "AB900X",
+        "16028": "AB900X",
+        "16029": "AB900X",
+        "16030": "AB900X",
+        "16033": "AB900X",
+        "16034": "AB900X",
+        "16035": "AB900X",
+        "16036": "AB900X",
+        "16037": "AB900X",
+        "16038": "AB900X",
+        "16039": "AB900X",
+        "16040": "AB900X",
+        "16041": "AB900X",
+        "16045": "AB900X",
+        "16046": "AB900X",
+        "16048": "AB900X",
+        "16049": "AB900X",
+        "16050": "AB900X",
+        "16051": "AB900X",
+        "16052": "AB900X",
+        "16053": "AB900X",
+        "16054": "AB900X",
+        "16055": "AB900X",
+        "16056": "AB900X",
+        "16057": "AB900X",
+        "16058": "AB900X",
+        "16059": "AB900X",
+        "16061": "AB900X",
+        "16063": "AB900X",
+        "16066": "AB900X",
+        "16101": "AB900X",
+        "16102": "AB900X",
+        "16103": "AB900X",
+        "16105": "AB900X",
+        "16107": "AB900X",
+        "16108": "AB900X",
+        "16110": "AB900X",
+        "16111": "AB900X",
+        "16112": "AB900X",
+        "16113": "AB900X",
+        "16114": "AB900X",
+        "16115": "AB900X",
+        "16116": "AB900X",
+        "16117": "AB900X",
+        "16120": "AB900X",
+        "16121": "AB900X",
+        "16123": "AB900X",
+        "16124": "AB900X",
+        "16125": "AB900X",
+        "16127": "AB900X",
+        "16130": "AB900X",
+        "16131": "AB900X",
+        "16132": "AB900X",
+        "16133": "AB900X",
+        "16134": "AB900X",
+        "16136": "AB900X",
+        "16137": "AB900X",
+        "16140": "AB900X",
+        "16141": "AB900X",
+        "16142": "AB900X",
+        "16143": "AB900X",
+        "16145": "AB900X",
+        "16146": "AB900X",
+        "16148": "AB900X",
+        "16150": "AB900X",
+        "16151": "AB900X",
+        "16153": "AB900X",
+        "16154": "AB900X",
+        "16155": "AB900X",
+        "16156": "AB900X",
+        "16157": "AB900X",
+        "16159": "AB900X",
+        "16160": "AB900X",
+        "16161": "AB900X",
+        "16172": "AB900X",
+        "16201": "AB900X",
+        "16210": "AB900X",
+        "16211": "AB900X",
+        "16212": "AB900X",
+        "16213": "AB900X",
+        "16214": "AB900X",
+        "16215": "AB900X",
+        "16217": "AB900X",
+        "16218": "AB900X",
+        "16220": "AB900X",
+        "16221": "AB900X",
+        "16222": "AB900X",
+        "16223": "AB900X",
+        "16224": "AB900X",
+        "16225": "AB900X",
+        "16226": "AB900X",
+        "16228": "AB900X",
+        "16229": "AB900X",
+        "16230": "AB900X",
+        "16232": "AB900X",
+        "16233": "AB900X",
+        "16234": "AB900X",
+        "16235": "AB900X",
+        "16236": "AB900X",
+        "16238": "AB900X",
+        "16239": "AB900X",
+        "16240": "AB900X",
+        "16242": "AB900X",
+        "16244": "AB900X",
+        "16245": "AB900X",
+        "16246": "AB900X",
+        "16248": "AB900X",
+        "16249": "AB900X",
+        "16250": "AB900X",
+        "16253": "AB900X",
+        "16254": "AB900X",
+        "16255": "AB900X",
+        "16256": "AB900X",
+        "16257": "AB900X",
+        "16258": "AB900X",
+        "16259": "AB900X",
+        "16260": "AB900X",
+        "16261": "AB900X",
+        "16262": "AB900X",
+        "16263": "AB900X",
+        "16301": "AB900X",
+        "16311": "AB900X",
+        "16312": "AB900X",
+        "16313": "AB900X",
+        "16314": "AB900X",
+        "16316": "AB900X",
+        "16317": "AB900X",
+        "16319": "AB900X",
+        "16321": "AB900X",
+        "16322": "AB900X",
+        "16323": "AB900X",
+        "16326": "AB900X",
+        "16327": "AB900X",
+        "16328": "AB900X",
+        "16329": "AB900X",
+        "16331": "AB900X",
+        "16332": "AB900X",
+        "16333": "AB900X",
+        "16334": "AB900X",
+        "16335": "AB900X",
+        "16340": "AB900X",
+        "16341": "AB900X",
+        "16342": "AB900X",
+        "16343": "AB900X",
+        "16344": "AB900X",
+        "16345": "AB900X",
+        "16346": "AB900X",
+        "16347": "AB900X",
+        "16350": "AB900X",
+        "16351": "AB900X",
+        "16352": "AB900X",
+        "16353": "AB900X",
+        "16354": "AB900X",
+        "16360": "AB900X",
+        "16361": "AB900X",
+        "16362": "AB900X",
+        "16364": "AB900X",
+        "16365": "AB900X",
+        "16366": "AB900X",
+        "16367": "AB900X",
+        "16368": "AB900X",
+        "16369": "AB900X",
+        "16370": "AB900X",
+        "16371": "AB900X",
+        "16372": "AB900X",
+        "16373": "AB900X",
+        "16374": "AB900X",
+        "16375": "AB900X",
+        "16388": "AB900X",
+        "16401": "AB900X",
+        "16402": "AB900X",
+        "16403": "AB900X",
+        "16404": "AB900X",
+        "16405": "AB900X",
+        "16406": "AB900X",
+        "16407": "AB900X",
+        "16410": "AB900X",
+        "16411": "AB900X",
+        "16412": "AB900X",
+        "16413": "AB900X",
+        "16415": "AB900X",
+        "16416": "AB900X",
+        "16417": "AB900X",
+        "16420": "AB900X",
+        "16421": "AB900X",
+        "16422": "AB900X",
+        "16423": "AB900X",
+        "16424": "AB900X",
+        "16426": "AB900X",
+        "16427": "AB900X",
+        "16428": "AB900X",
+        "16430": "AB900X",
+        "16432": "AB900X",
+        "16433": "AB900X",
+        "16434": "AB900X",
+        "16435": "AB900X",
+        "16436": "AB900X",
+        "16438": "AB900X",
+        "16440": "AB900X",
+        "16441": "AB900X",
+        "16442": "AB900X",
+        "16443": "AB900X",
+        "16444": "AB900X",
+        "16475": "AB900X",
+        "16501": "AB900X",
+        "16502": "AB900X",
+        "16503": "AB900X",
+        "16504": "AB900X",
+        "16505": "AB900X",
+        "16506": "AB900X",
+        "16507": "AB900X",
+        "16508": "AB900X",
+        "16509": "AB900X",
+        "16510": "AB900X",
+        "16511": "AB900X",
+        "16512": "AB900X",
+        "16514": "AB900X",
+        "16515": "AB900X",
+        "16522": "AB900X",
+        "16530": "AB900X",
+        "16531": "AB900X",
+        "16532": "AB900X",
+        "16533": "AB900X",
+        "16534": "AB900X",
+        "16538": "AB900X",
+        "16541": "AB900X",
+        "16544": "AB900X",
+        "16546": "AB900X",
+        "16550": "AB900X",
+        "16553": "AB900X",
+        "16554": "AB900X",
+        "16563": "AB900X",
+        "16565": "AB900X",
+        "16601": "AB900X",
+        "16602": "AB900X",
+        "16603": "AB900X",
+        "16611": "AB900X",
+        "16613": "AB900X",
+        "16616": "AB900X",
+        "16617": "AB900X",
+        "16619": "AB900X",
+        "16620": "AB900X",
+        "16621": "AB900X",
+        "16622": "AB900X",
+        "16623": "AB900X",
+        "16624": "AB900X",
+        "16625": "AB900X",
+        "16627": "AB900X",
+        "16629": "AB900X",
+        "16630": "AB900X",
+        "16631": "AB900X",
+        "16633": "AB900X",
+        "16634": "AB900X",
+        "16635": "AB900X",
+        "16636": "AB900X",
+        "16637": "AB900X",
+        "16638": "AB900X",
+        "16639": "AB900X",
+        "16640": "AB900X",
+        "16641": "AB900X",
+        "16644": "AB900X",
+        "16645": "AB900X",
+        "16646": "AB900X",
+        "16647": "AB900X",
+        "16648": "AB900X",
+        "16650": "AB900X",
+        "16651": "AB900X",
+        "16652": "AB900X",
+        "16654": "AB900X",
+        "16655": "AB900X",
+        "16656": "AB900X",
+        "16657": "AB900X",
+        "16659": "AB900X",
+        "16660": "AB900X",
+        "16661": "AB900X",
+        "16662": "AB900X",
+        "16663": "AB900X",
+        "16664": "AB900X",
+        "16665": "AB900X",
+        "16666": "AB900X",
+        "16667": "AB900X",
+        "16668": "AB900X",
+        "16669": "AB900X",
+        "16670": "AB900X",
+        "16671": "AB900X",
+        "16672": "AB900X",
+        "16673": "AB900X",
+        "16674": "AB900X",
+        "16675": "AB900X",
+        "16677": "AB900X",
+        "16678": "AB900X",
+        "16679": "AB900X",
+        "16680": "AB900X",
+        "16681": "AB900X",
+        "16682": "AB900X",
+        "16683": "AB900X",
+        "16684": "AB900X",
+        "16685": "AB900X",
+        "16686": "AB900X",
+        "16689": "AB892X",
+        "16691": "AB892X",
+        "16692": "AB900X",
+        "16693": "AB900X",
+        "16694": "AB900X",
+        "16695": "AB900X",
+        "16698": "AB900X",
+        "16699": "AB900X",
+        "16701": "AB900X",
+        "16720": "AB900X",
+        "16724": "AB900X",
+        "16725": "AB900X",
+        "16726": "AB900X",
+        "16727": "AB900X",
+        "16728": "AB900X",
+        "16729": "AB900X",
+        "16730": "AB900X",
+        "16731": "AB900X",
+        "16732": "AB900X",
+        "16733": "AB900X",
+        "16734": "AB900X",
+        "16735": "AB900X",
+        "16738": "AB900X",
+        "16740": "AB900X",
+        "16743": "AB900X",
+        "16744": "AB900X",
+        "16745": "AB900X",
+        "16746": "AB900X",
+        "16748": "AB900X",
+        "16749": "AB900X",
+        "16750": "AB900X",
+        "16801": "AB900X",
+        "16802": "AB900X",
+        "16803": "AB900X",
+        "16804": "AB900X",
+        "16805": "AB900X",
+        "16820": "AB900X",
+        "16821": "AB900X",
+        "16822": "AB890X",
+        "16823": "AB900X",
+        "16825": "AB900X",
+        "16826": "AB890X",
+        "16827": "AB900X",
+        "16828": "AB890X",
+        "16829": "AB900X",
+        "16830": "AB900X",
+        "16832": "AB900X",
+        "16833": "AB900X",
+        "16834": "AB900X",
+        "16835": "AB900X",
+        "16836": "AB900X",
+        "16837": "AB900X",
+        "16838": "AB900X",
+        "16839": "AB900X",
+        "16840": "AB900X",
+        "16841": "AB890X",
+        "16843": "AB900X",
+        "16844": "AB890X",
+        "16845": "AB900X",
+        "16847": "AB900X",
+        "16848": "AB890X",
+        "16849": "AB900X",
+        "16850": "AB900X",
+        "16851": "AB900X",
+        "16852": "AB900X",
+        "16853": "AB890X",
+        "16854": "AB900X",
+        "16855": "AB900X",
+        "16856": "AB900X",
+        "16858": "AB900X",
+        "16859": "AB900X",
+        "16860": "AB900X",
+        "16861": "AB900X",
+        "16863": "AB900X",
+        "16864": "AB900X",
+        "16865": "AB900X",
+        "16866": "AB900X",
+        "16868": "AB900X",
+        "16870": "AB900X",
+        "16871": "AB900X",
+        "16872": "AB890X",
+        "16873": "AB900X",
+        "16874": "AB900X",
+        "16875": "AB900X",
+        "16876": "AB900X",
+        "16877": "AB900X",
+        "16878": "AB900X",
+        "16879": "AB900X",
+        "16881": "AB900X",
+        "16882": "AB900X",
+        "16901": "AB890X",
+        "16910": "AB890X",
+        "16911": "AB890X",
+        "16912": "AB890X",
+        "16914": "AB890X",
+        "16915": "AB900X",
+        "16917": "AB890X",
+        "16918": "AB890X",
+        "16920": "AB890X",
+        "16921": "AB890X",
+        "16922": "AB900X",
+        "16923": "AB900X",
+        "16925": "AB890X",
+        "16926": "AB890X",
+        "16927": "AB890X",
+        "16928": "AB890X",
+        "16929": "AB890X",
+        "16930": "AB890X",
+        "16932": "AB890X",
+        "16933": "AB890X",
+        "16935": "AB890X",
+        "16936": "AB890X",
+        "16937": "AB900X",
+        "16938": "AB890X",
+        "16939": "AB890X",
+        "16940": "AB890X",
+        "16941": "AB900X",
+        "16942": "AB890X",
+        "16943": "AB890X",
+        "16945": "AB890X",
+        "16946": "AB890X",
+        "16947": "AB890X",
+        "16948": "AB890X",
+        "16950": "AB890X",
+        "17001": "AB892X",
+        "17002": "AB892X",
+        "17003": "AB892X",
+        "17004": "AB892X",
+        "17005": "AB892X",
+        "17006": "AB892X",
+        "17007": "AB892X",
+        "17008": "AB892X",
+        "17009": "AB892X",
+        "17010": "AB892X",
+        "17011": "AB892X",
+        "17012": "AB892X",
+        "17013": "AB892X",
+        "17014": "AB892X",
+        "17015": "AB892X",
+        "17016": "AB892X",
+        "17017": "AB892X",
+        "17018": "AB892X",
+        "17019": "AB892X",
+        "17020": "AB892X",
+        "17021": "AB892X",
+        "17022": "AB892X",
+        "17023": "AB892X",
+        "17024": "AB892X",
+        "17025": "AB892X",
+        "17026": "AB892X",
+        "17027": "AB892X",
+        "17028": "AB892X",
+        "17029": "AB892X",
+        "17030": "AB892X",
+        "17032": "AB892X",
+        "17033": "AB892X",
+        "17034": "AB892X",
+        "17035": "AB892X",
+        "17036": "AB892X",
+        "17037": "AB892X",
+        "17038": "AB892X",
+        "17039": "AB892X",
+        "17040": "AB892X",
+        "17041": "AB892X",
+        "17042": "AB892X",
+        "17043": "AB892X",
+        "17044": "AB892X",
+        "17045": "AB890X",
+        "17046": "AB892X",
+        "17047": "AB892X",
+        "17048": "AB892X",
+        "17049": "AB892X",
+        "17050": "AB892X",
+        "17051": "AB892X",
+        "17052": "AB900X",
+        "17053": "AB892X",
+        "17054": "AB892X",
+        "17055": "AB892X",
+        "17056": "AB892X",
+        "17057": "AB892X",
+        "17058": "AB892X",
+        "17059": "AB892X",
+        "17060": "AB900X",
+        "17061": "AB892X",
+        "17062": "AB892X",
+        "17063": "AB892X",
+        "17064": "AB892X",
+        "17065": "AB892X",
+        "17066": "AB892X",
+        "17067": "AB892X",
+        "17068": "AB892X",
+        "17069": "AB892X",
+        "17070": "AB892X",
+        "17071": "AB892X",
+        "17072": "AB892X",
+        "17073": "AB892X",
+        "17074": "AB892X",
+        "17075": "AB892X",
+        "17076": "AB892X",
+        "17077": "AB892X",
+        "17078": "AB892X",
+        "17080": "AB892X",
+        "17081": "AB892X",
+        "17082": "AB892X",
+        "17083": "AB892X",
+        "17084": "AB892X",
+        "17085": "AB892X",
+        "17086": "AB892X",
+        "17087": "AB892X",
+        "17088": "AB892X",
+        "17089": "AB892X",
+        "17090": "AB892X",
+        "17091": "AB892X",
+        "17093": "AB892X",
+        "17094": "AB892X",
+        "17097": "AB892X",
+        "17098": "AB892X",
+        "17099": "AB892X",
+        "17101": "AB892X",
+        "17102": "AB892X",
+        "17103": "AB892X",
+        "17104": "AB892X",
+        "17105": "AB892X",
+        "17106": "AB892X",
+        "17107": "AB892X",
+        "17108": "AB892X",
+        "17109": "AB892X",
+        "17110": "AB892X",
+        "17111": "AB892X",
+        "17112": "AB892X",
+        "17113": "AB892X",
+        "17120": "AB892X",
+        "17121": "AB892X",
+        "17122": "AB892X",
+        "17123": "AB892X",
+        "17124": "AB892X",
+        "17125": "AB892X",
+        "17126": "AB892X",
+        "17127": "AB892X",
+        "17128": "AB892X",
+        "17129": "AB892X",
+        "17130": "AB892X",
+        "17140": "AB892X",
+        "17177": "AB892X",
+        "17201": "AB892X",
+        "17202": "AB892X",
+        "17210": "AB892X",
+        "17211": "AB900X",
+        "17212": "AB892X",
+        "17213": "AB900X",
+        "17214": "AB892X",
+        "17215": "AB892X",
+        "17217": "AB892X",
+        "17219": "AB892X",
+        "17220": "AB892X",
+        "17221": "AB892X",
+        "17222": "AB892X",
+        "17223": "AB892X",
+        "17224": "AB892X",
+        "17225": "AB892X",
+        "17228": "AB892X",
+        "17229": "AB892X",
+        "17231": "AB892X",
+        "17232": "AB892X",
+        "17233": "AB892X",
+        "17235": "AB892X",
+        "17236": "AB892X",
+        "17237": "AB892X",
+        "17238": "AB892X",
+        "17239": "AB900X",
+        "17240": "AB892X",
+        "17241": "AB892X",
+        "17243": "AB900X",
+        "17244": "AB892X",
+        "17246": "AB892X",
+        "17247": "AB892X",
+        "17249": "AB900X",
+        "17250": "AB892X",
+        "17251": "AB892X",
+        "17252": "AB892X",
+        "17253": "AB900X",
+        "17254": "AB892X",
+        "17255": "AB900X",
+        "17256": "AB892X",
+        "17257": "AB892X",
+        "17260": "AB900X",
+        "17261": "AB892X",
+        "17262": "AB892X",
+        "17263": "AB892X",
+        "17264": "AB900X",
+        "17265": "AB892X",
+        "17266": "AB892X",
+        "17267": "AB892X",
+        "17268": "AB892X",
+        "17270": "AB892X",
+        "17271": "AB892X",
+        "17272": "AB892X",
+        "17301": "AB892X",
+        "17302": "AB892X",
+        "17303": "AB892X",
+        "17304": "AB892X",
+        "17306": "AB892X",
+        "17307": "AB892X",
+        "17309": "AB892X",
+        "17310": "AB892X",
+        "17311": "AB892X",
+        "17312": "AB892X",
+        "17313": "AB892X",
+        "17314": "AB892X",
+        "17315": "AB892X",
+        "17316": "AB892X",
+        "17317": "AB892X",
+        "17318": "AB892X",
+        "17319": "AB892X",
+        "17320": "AB892X",
+        "17321": "AB892X",
+        "17322": "AB892X",
+        "17323": "AB892X",
+        "17324": "AB892X",
+        "17325": "AB892X",
+        "17326": "AB892X",
+        "17327": "AB892X",
+        "17329": "AB892X",
+        "17331": "AB892X",
+        "17332": "AB892X",
+        "17333": "AB892X",
+        "17334": "AB892X",
+        "17337": "AB892X",
+        "17339": "AB892X",
+        "17340": "AB892X",
+        "17342": "AB892X",
+        "17343": "AB892X",
+        "17344": "AB892X",
+        "17345": "AB892X",
+        "17347": "AB892X",
+        "17349": "AB892X",
+        "17350": "AB892X",
+        "17352": "AB892X",
+        "17353": "AB892X",
+        "17354": "AB892X",
+        "17355": "AB892X",
+        "17356": "AB892X",
+        "17358": "AB892X",
+        "17360": "AB892X",
+        "17361": "AB892X",
+        "17362": "AB892X",
+        "17363": "AB892X",
+        "17364": "AB892X",
+        "17365": "AB892X",
+        "17366": "AB892X",
+        "17368": "AB892X",
+        "17370": "AB892X",
+        "17371": "AB892X",
+        "17372": "AB892X",
+        "17375": "AB892X",
+        "17401": "AB892X",
+        "17402": "AB892X",
+        "17403": "AB892X",
+        "17404": "AB892X",
+        "17405": "AB892X",
+        "17406": "AB892X",
+        "17407": "AB892X",
+        "17408": "AB892X",
+        "17415": "AB892X",
+        "17501": "AB892X",
+        "17502": "AB892X",
+        "17503": "AB892X",
+        "17504": "AB892X",
+        "17505": "AB892X",
+        "17506": "AB892X",
+        "17507": "AB892X",
+        "17508": "AB892X",
+        "17509": "AB892X",
+        "17512": "AB892X",
+        "17516": "AB892X",
+        "17517": "AB892X",
+        "17518": "AB892X",
+        "17519": "AB892X",
+        "17520": "AB892X",
+        "17521": "AB892X",
+        "17522": "AB892X",
+        "17527": "AB892X",
+        "17528": "AB892X",
+        "17529": "AB892X",
+        "17532": "AB892X",
+        "17533": "AB892X",
+        "17534": "AB892X",
+        "17535": "AB892X",
+        "17536": "AB892X",
+        "17537": "AB892X",
+        "17538": "AB892X",
+        "17540": "AB892X",
+        "17543": "AB892X",
+        "17545": "AB892X",
+        "17547": "AB892X",
+        "17549": "AB892X",
+        "17550": "AB892X",
+        "17551": "AB892X",
+        "17552": "AB892X",
+        "17554": "AB892X",
+        "17555": "AB892X",
+        "17557": "AB892X",
+        "17560": "AB892X",
+        "17562": "AB892X",
+        "17563": "AB892X",
+        "17564": "AB892X",
+        "17565": "AB892X",
+        "17566": "AB892X",
+        "17567": "AB892X",
+        "17568": "AB892X",
+        "17569": "AB892X",
+        "17570": "AB892X",
+        "17572": "AB892X",
+        "17573": "AB892X",
+        "17575": "AB892X",
+        "17576": "AB892X",
+        "17578": "AB892X",
+        "17579": "AB892X",
+        "17580": "AB892X",
+        "17581": "AB892X",
+        "17582": "AB892X",
+        "17583": "AB892X",
+        "17584": "AB892X",
+        "17585": "AB892X",
+        "17601": "AB892X",
+        "17602": "AB892X",
+        "17603": "AB892X",
+        "17604": "AB892X",
+        "17605": "AB892X",
+        "17606": "AB892X",
+        "17607": "AB892X",
+        "17608": "AB892X",
+        "17611": "AB892X",
+        "17699": "AB892X",
+        "17701": "AB890X",
+        "17702": "AB890X",
+        "17703": "AB890X",
+        "17705": "AB890X",
+        "17720": "AB890X",
+        "17721": "AB890X",
+        "17723": "AB890X",
+        "17724": "AB890X",
+        "17726": "AB890X",
+        "17727": "AB890X",
+        "17728": "AB890X",
+        "17729": "AB900X",
+        "17730": "AB890X",
+        "17731": "AB890X",
+        "17735": "AB890X",
+        "17737": "AB890X",
+        "17738": "AB890X",
+        "17739": "AB890X",
+        "17740": "AB890X",
+        "17742": "AB890X",
+        "17744": "AB890X",
+        "17745": "AB890X",
+        "17747": "AB890X",
+        "17748": "AB890X",
+        "17749": "AB890X",
+        "17750": "AB890X",
+        "17751": "AB890X",
+        "17752": "AB890X",
+        "17754": "AB890X",
+        "17756": "AB890X",
+        "17758": "AB890X",
+        "17760": "AB890X",
+        "17762": "AB890X",
+        "17763": "AB890X",
+        "17764": "AB890X",
+        "17765": "AB890X",
+        "17767": "AB890X",
+        "17768": "AB890X",
+        "17769": "AB890X",
+        "17771": "AB890X",
+        "17772": "AB890X",
+        "17773": "AB890X",
+        "17774": "AB890X",
+        "17776": "AB890X",
+        "17777": "AB890X",
+        "17778": "AB890X",
+        "17779": "AB890X",
+        "17801": "AB890X",
+        "17810": "AB890X",
+        "17812": "AB892X",
+        "17813": "AB890X",
+        "17814": "AB890X",
+        "17815": "AB890X",
+        "17820": "AB890X",
+        "17821": "AB890X",
+        "17822": "AB890X",
+        "17823": "AB892X",
+        "17824": "AB890X",
+        "17827": "AB890X",
+        "17829": "AB890X",
+        "17830": "AB892X",
+        "17831": "AB890X",
+        "17832": "AB890X",
+        "17833": "AB890X",
+        "17834": "AB890X",
+        "17835": "AB890X",
+        "17836": "AB890X",
+        "17837": "AB890X",
+        "17839": "AB890X",
+        "17840": "AB890X",
+        "17841": "AB892X",
+        "17842": "AB890X",
+        "17843": "AB890X",
+        "17844": "AB890X",
+        "17845": "AB890X",
+        "17846": "AB890X",
+        "17847": "AB890X",
+        "17850": "AB890X",
+        "17851": "AB890X",
+        "17853": "AB890X",
+        "17855": "AB890X",
+        "17856": "AB890X",
+        "17857": "AB890X",
+        "17858": "AB890X",
+        "17859": "AB890X",
+        "17860": "AB890X",
+        "17861": "AB890X",
+        "17862": "AB890X",
+        "17864": "AB890X",
+        "17865": "AB890X",
+        "17866": "AB890X",
+        "17867": "AB890X",
+        "17868": "AB890X",
+        "17870": "AB890X",
+        "17872": "AB890X",
+        "17876": "AB890X",
+        "17877": "AB890X",
+        "17878": "AB890X",
+        "17880": "AB890X",
+        "17881": "AB890X",
+        "17882": "AB890X",
+        "17883": "AB890X",
+        "17884": "AB890X",
+        "17885": "AB890X",
+        "17886": "AB890X",
+        "17887": "AB890X",
+        "17888": "AB890X",
+        "17889": "AB890X",
+        "17901": "AB890X",
+        "17920": "AB890X",
+        "17921": "AB890X",
+        "17922": "AB890X",
+        "17923": "AB890X",
+        "17925": "AB890X",
+        "17929": "AB890X",
+        "17930": "AB890X",
+        "17931": "AB890X",
+        "17932": "AB890X",
+        "17933": "AB890X",
+        "17934": "AB890X",
+        "17935": "AB890X",
+        "17936": "AB890X",
+        "17938": "AB892X",
+        "17941": "AB892X",
+        "17942": "AB890X",
+        "17943": "AB890X",
+        "17944": "AB890X",
+        "17945": "AB890X",
+        "17946": "AB890X",
+        "17948": "AB890X",
+        "17949": "AB890X",
+        "17951": "AB890X",
+        "17952": "AB890X",
+        "17953": "AB890X",
+        "17954": "AB890X",
+        "17957": "AB892X",
+        "17959": "AB890X",
+        "17960": "AB890X",
+        "17961": "AB890X",
+        "17963": "AB890X",
+        "17964": "AB890X",
+        "17965": "AB890X",
+        "17966": "AB890X",
+        "17967": "AB890X",
+        "17968": "AB892X",
+        "17970": "AB890X",
+        "17972": "AB890X",
+        "17974": "AB890X",
+        "17976": "AB890X",
+        "17978": "AB892X",
+        "17979": "AB890X",
+        "17980": "AB892X",
+        "17981": "AB890X",
+        "17982": "AB890X",
+        "17983": "AB892X",
+        "17985": "AB890X",
+        "18001": "AB890X",
+        "18002": "AB890X",
+        "18003": "AB890X",
+        "18010": "AB890X",
+        "18011": "AB890X",
+        "18012": "AB890X",
+        "18013": "AB890X",
+        "18014": "AB890X",
+        "18015": "AB890X",
+        "18016": "AB890X",
+        "18017": "AB890X",
+        "18018": "AB890X",
+        "18020": "AB890X",
+        "18025": "AB890X",
+        "18030": "AB890X",
+        "18031": "AB890X",
+        "18032": "AB890X",
+        "18034": "AB890X",
+        "18035": "AB890X",
+        "18036": "AB890X",
+        "18037": "AB890X",
+        "18038": "AB890X",
+        "18039": "AB890X",
+        "18040": "AB890X",
+        "18041": "AB890X",
+        "18042": "AB890X",
+        "18043": "AB890X",
+        "18044": "AB890X",
+        "18045": "AB890X",
+        "18046": "AB890X",
+        "18049": "AB890X",
+        "18050": "AB890X",
+        "18051": "AB890X",
+        "18052": "AB890X",
+        "18053": "AB890X",
+        "18054": "AB890X",
+        "18055": "AB890X",
+        "18056": "AB890X",
+        "18058": "AB890X",
+        "18059": "AB890X",
+        "18060": "AB890X",
+        "18062": "AB890X",
+        "18063": "AB890X",
+        "18064": "AB890X",
+        "18065": "AB890X",
+        "18066": "AB890X",
+        "18067": "AB890X",
+        "18068": "AB890X",
+        "18069": "AB890X",
+        "18070": "AB890X",
+        "18071": "AB890X",
+        "18072": "AB890X",
+        "18073": "AB890X",
+        "18074": "AB890X",
+        "18076": "AB890X",
+        "18077": "AB890X",
+        "18078": "AB890X",
+        "18079": "AB890X",
+        "18080": "AB890X",
+        "18081": "AB890X",
+        "18083": "AB890X",
+        "18084": "AB890X",
+        "18085": "AB890X",
+        "18086": "AB890X",
+        "18087": "AB890X",
+        "18088": "AB890X",
+        "18091": "AB890X",
+        "18092": "AB890X",
+        "18098": "AB890X",
+        "18099": "AB890X",
+        "18101": "AB890X",
+        "18102": "AB890X",
+        "18103": "AB890X",
+        "18104": "AB890X",
+        "18105": "AB890X",
+        "18106": "AB890X",
+        "18109": "AB890X",
+        "18175": "AB890X",
+        "18195": "AB890X",
+        "18201": "AB890X",
+        "18202": "AB890X",
+        "18210": "AB890X",
+        "18211": "AB890X",
+        "18212": "AB890X",
+        "18214": "AB890X",
+        "18216": "AB890X",
+        "18218": "AB890X",
+        "18219": "AB890X",
+        "18220": "AB890X",
+        "18221": "AB890X",
+        "18222": "AB890X",
+        "18223": "AB890X",
+        "18224": "AB890X",
+        "18225": "AB890X",
+        "18229": "AB890X",
+        "18230": "AB890X",
+        "18231": "AB890X",
+        "18232": "AB890X",
+        "18234": "AB890X",
+        "18235": "AB890X",
+        "18237": "AB890X",
+        "18239": "AB890X",
+        "18240": "AB890X",
+        "18241": "AB890X",
+        "18242": "AB890X",
+        "18244": "AB890X",
+        "18245": "AB890X",
+        "18246": "AB890X",
+        "18247": "AB890X",
+        "18248": "AB890X",
+        "18249": "AB890X",
+        "18250": "AB890X",
+        "18251": "AB890X",
+        "18252": "AB890X",
+        "18254": "AB890X",
+        "18255": "AB890X",
+        "18256": "AB890X",
+        "18301": "AB890X",
+        "18302": "AB890X",
+        "18320": "AB890X",
+        "18321": "AB890X",
+        "18322": "AB890X",
+        "18323": "AB890X",
+        "18324": "AB890X",
+        "18325": "AB890X",
+        "18326": "AB890X",
+        "18327": "AB890X",
+        "18328": "AB890X",
+        "18330": "AB890X",
+        "18331": "AB890X",
+        "18332": "AB890X",
+        "18333": "AB890X",
+        "18334": "AB890X",
+        "18335": "AB890X",
+        "18336": "AB890X",
+        "18337": "AB890X",
+        "18340": "AB890X",
+        "18341": "AB890X",
+        "18342": "AB890X",
+        "18343": "AB890X",
+        "18344": "AB890X",
+        "18346": "AB890X",
+        "18347": "AB890X",
+        "18348": "AB890X",
+        "18349": "AB890X",
+        "18350": "AB890X",
+        "18351": "AB890X",
+        "18352": "AB890X",
+        "18353": "AB890X",
+        "18354": "AB890X",
+        "18355": "AB890X",
+        "18356": "AB890X",
+        "18357": "AB890X",
+        "18360": "AB890X",
+        "18370": "AB890X",
+        "18371": "AB890X",
+        "18372": "AB890X",
+        "18373": "AB890X",
+        "18403": "AB890X",
+        "18405": "AB890X",
+        "18407": "AB890X",
+        "18410": "AB890X",
+        "18411": "AB890X",
+        "18413": "AB890X",
+        "18414": "AB890X",
+        "18415": "AB890X",
+        "18416": "AB890X",
+        "18417": "AB890X",
+        "18419": "AB890X",
+        "18420": "AB890X",
+        "18421": "AB890X",
+        "18424": "AB890X",
+        "18425": "AB890X",
+        "18426": "AB890X",
+        "18427": "AB890X",
+        "18428": "AB890X",
+        "18430": "AB890X",
+        "18431": "AB890X",
+        "18433": "AB890X",
+        "18434": "AB890X",
+        "18435": "AB890X",
+        "18436": "AB890X",
+        "18437": "AB890X",
+        "18438": "AB890X",
+        "18439": "AB890X",
+        "18440": "AB890X",
+        "18441": "AB890X",
+        "18443": "AB890X",
+        "18444": "AB890X",
+        "18445": "AB890X",
+        "18446": "AB890X",
+        "18447": "AB890X",
+        "18448": "AB890X",
+        "18449": "AB890X",
+        "18451": "AB890X",
+        "18452": "AB890X",
+        "18453": "AB890X",
+        "18454": "AB890X",
+        "18455": "AB890X",
+        "18456": "AB890X",
+        "18457": "AB890X",
+        "18458": "AB890X",
+        "18459": "AB890X",
+        "18460": "AB890X",
+        "18461": "AB890X",
+        "18462": "AB890X",
+        "18463": "AB890X",
+        "18464": "AB890X",
+        "18465": "AB890X",
+        "18466": "AB890X",
+        "18469": "AB890X",
+        "18470": "AB890X",
+        "18471": "AB890X",
+        "18472": "AB890X",
+        "18473": "AB890X",
+        "18501": "AB890X",
+        "18502": "AB890X",
+        "18503": "AB890X",
+        "18504": "AB890X",
+        "18505": "AB890X",
+        "18507": "AB890X",
+        "18508": "AB890X",
+        "18509": "AB890X",
+        "18510": "AB890X",
+        "18512": "AB890X",
+        "18514": "AB890X",
+        "18515": "AB890X",
+        "18517": "AB890X",
+        "18518": "AB890X",
+        "18519": "AB890X",
+        "18522": "AB890X",
+        "18540": "AB890X",
+        "18577": "AB890X",
+        "18601": "AB890X",
+        "18602": "AB890X",
+        "18603": "AB890X",
+        "18610": "AB890X",
+        "18611": "AB890X",
+        "18612": "AB890X",
+        "18614": "AB890X",
+        "18615": "AB890X",
+        "18616": "AB890X",
+        "18617": "AB890X",
+        "18618": "AB890X",
+        "18619": "AB890X",
+        "18621": "AB890X",
+        "18622": "AB890X",
+        "18623": "AB890X",
+        "18624": "AB890X",
+        "18625": "AB890X",
+        "18626": "AB890X",
+        "18627": "AB890X",
+        "18628": "AB890X",
+        "18629": "AB890X",
+        "18630": "AB890X",
+        "18631": "AB890X",
+        "18632": "AB890X",
+        "18634": "AB890X",
+        "18635": "AB890X",
+        "18636": "AB890X",
+        "18640": "AB890X",
+        "18641": "AB890X",
+        "18642": "AB890X",
+        "18643": "AB890X",
+        "18644": "AB890X",
+        "18651": "AB890X",
+        "18653": "AB890X",
+        "18654": "AB890X",
+        "18655": "AB890X",
+        "18656": "AB890X",
+        "18657": "AB890X",
+        "18660": "AB890X",
+        "18661": "AB890X",
+        "18690": "AB890X",
+        "18701": "AB890X",
+        "18702": "AB890X",
+        "18703": "AB890X",
+        "18704": "AB890X",
+        "18705": "AB890X",
+        "18706": "AB890X",
+        "18707": "AB890X",
+        "18708": "AB890X",
+        "18709": "AB890X",
+        "18710": "AB890X",
+        "18711": "AB890X",
+        "18762": "AB890X",
+        "18764": "AB890X",
+        "18765": "AB890X",
+        "18766": "AB890X",
+        "18767": "AB890X",
+        "18769": "AB890X",
+        "18773": "AB890X",
+        "18801": "AB890X",
+        "18810": "AB890X",
+        "18812": "AB890X",
+        "18813": "AB890X",
+        "18814": "AB890X",
+        "18815": "AB890X",
+        "18816": "AB890X",
+        "18817": "AB890X",
+        "18818": "AB890X",
+        "18820": "AB890X",
+        "18821": "AB890X",
+        "18822": "AB890X",
+        "18823": "AB890X",
+        "18824": "AB890X",
+        "18825": "AB890X",
+        "18826": "AB890X",
+        "18827": "AB890X",
+        "18828": "AB890X",
+        "18829": "AB890X",
+        "18830": "AB890X",
+        "18831": "AB890X",
+        "18832": "AB890X",
+        "18833": "AB890X",
+        "18834": "AB890X",
+        "18837": "AB890X",
+        "18840": "AB890X",
+        "18842": "AB890X",
+        "18843": "AB890X",
+        "18844": "AB890X",
+        "18845": "AB890X",
+        "18846": "AB890X",
+        "18847": "AB890X",
+        "18848": "AB890X",
+        "18850": "AB890X",
+        "18851": "AB890X",
+        "18853": "AB890X",
+        "18854": "AB890X",
+        "18901": "AB890X",
+        "18902": "AB890X",
+        "18910": "AB890X",
+        "18911": "AB890X",
+        "18912": "AB890X",
+        "18913": "AB890X",
+        "18914": "AB890X",
+        "18915": "AB890X",
+        "18916": "AB890X",
+        "18917": "AB890X",
+        "18918": "AB890X",
+        "18920": "AB890X",
+        "18921": "AB890X",
+        "18922": "AB890X",
+        "18923": "AB890X",
+        "18924": "AB890X",
+        "18925": "AB890X",
+        "18926": "AB890X",
+        "18927": "AB890X",
+        "18928": "AB890X",
+        "18929": "AB890X",
+        "18930": "AB890X",
+        "18931": "AB890X",
+        "18932": "AB890X",
+        "18933": "AB890X",
+        "18934": "AB890X",
+        "18935": "AB890X",
+        "18936": "AB890X",
+        "18938": "AB890X",
+        "18940": "AB890X",
+        "18942": "AB890X",
+        "18943": "AB890X",
+        "18944": "AB890X",
+        "18946": "AB890X",
+        "18947": "AB890X",
+        "18949": "AB890X",
+        "18950": "AB890X",
+        "18951": "AB890X",
+        "18953": "AB890X",
+        "18954": "AB890X",
+        "18955": "AB890X",
+        "18956": "AB890X",
+        "18957": "AB890X",
+        "18958": "AB890X",
+        "18960": "AB890X",
+        "18962": "AB890X",
+        "18963": "AB890X",
+        "18964": "AB890X",
+        "18966": "AB890X",
+        "18968": "AB890X",
+        "18969": "AB890X",
+        "18970": "AB890X",
+        "18971": "AB890X",
+        "18972": "AB890X",
+        "18974": "AB890X",
+        "18976": "AB890X",
+        "18977": "AB890X",
+        "18979": "AB890X",
+        "18980": "AB890X",
+        "18981": "AB890X",
+        "18991": "AB890X",
+        "19001": "AB890X",
+        "19002": "AB890X",
+        "19003": "AB890X",
+        "19004": "AB890X",
+        "19006": "AB890X",
+        "19007": "AB890X",
+        "19008": "AB890X",
+        "19009": "AB890X",
+        "19010": "AB890X",
+        "19012": "AB890X",
+        "19013": "AB890X",
+        "19014": "AB890X",
+        "19015": "AB890X",
+        "19016": "AB890X",
+        "19017": "AB890X",
+        "19018": "AB890X",
+        "19019": "AB890X",
+        "19020": "AB890X",
+        "19021": "AB890X",
+        "19022": "AB890X",
+        "19023": "AB890X",
+        "19025": "AB890X",
+        "19026": "AB890X",
+        "19027": "AB890X",
+        "19028": "AB890X",
+        "19029": "AB890X",
+        "19030": "AB890X",
+        "19031": "AB890X",
+        "19032": "AB890X",
+        "19033": "AB890X",
+        "19034": "AB890X",
+        "19035": "AB890X",
+        "19036": "AB890X",
+        "19037": "AB890X",
+        "19038": "AB890X",
+        "19039": "AB890X",
+        "19040": "AB890X",
+        "19041": "AB890X",
+        "19043": "AB890X",
+        "19044": "AB890X",
+        "19046": "AB890X",
+        "19047": "AB890X",
+        "19048": "AB890X",
+        "19049": "AB890X",
+        "19050": "AB890X",
+        "19052": "AB890X",
+        "19053": "AB890X",
+        "19054": "AB890X",
+        "19055": "AB890X",
+        "19056": "AB890X",
+        "19057": "AB890X",
+        "19058": "AB890X",
+        "19061": "AB890X",
+        "19063": "AB890X",
+        "19064": "AB890X",
+        "19065": "AB890X",
+        "19066": "AB890X",
+        "19067": "AB890X",
+        "19070": "AB890X",
+        "19072": "AB890X",
+        "19073": "AB890X",
+        "19074": "AB890X",
+        "19075": "AB890X",
+        "19076": "AB890X",
+        "19078": "AB890X",
+        "19079": "AB890X",
+        "19080": "AB890X",
+        "19081": "AB890X",
+        "19082": "AB890X",
+        "19083": "AB890X",
+        "19085": "AB890X",
+        "19086": "AB890X",
+        "19087": "AB890X",
+        "19088": "AB890X",
+        "19089": "AB890X",
+        "19090": "AB890X",
+        "19091": "AB890X",
+        "19092": "AB890X",
+        "19093": "AB890X",
+        "19094": "AB890X",
+        "19095": "AB890X",
+        "19096": "AB890X",
+        "19098": "AB890X",
+        "19099": "AB890X",
+        "19101": "AB890X",
+        "19102": "AB890X",
+        "19103": "AB890X",
+        "19104": "AB890X",
+        "19105": "AB890X",
+        "19106": "AB890X",
+        "19107": "AB890X",
+        "19108": "AB890X",
+        "19109": "AB890X",
+        "19110": "AB890X",
+        "19111": "AB890X",
+        "19112": "AB890X",
+        "19113": "AB890X",
+        "19114": "AB890X",
+        "19115": "AB890X",
+        "19116": "AB890X",
+        "19118": "AB890X",
+        "19119": "AB890X",
+        "19120": "AB890X",
+        "19121": "AB890X",
+        "19122": "AB890X",
+        "19123": "AB890X",
+        "19124": "AB890X",
+        "19125": "AB890X",
+        "19126": "AB890X",
+        "19127": "AB890X",
+        "19128": "AB890X",
+        "19129": "AB890X",
+        "19130": "AB890X",
+        "19131": "AB890X",
+        "19132": "AB890X",
+        "19133": "AB890X",
+        "19134": "AB890X",
+        "19135": "AB890X",
+        "19136": "AB890X",
+        "19137": "AB890X",
+        "19138": "AB890X",
+        "19139": "AB890X",
+        "19140": "AB890X",
+        "19141": "AB890X",
+        "19142": "AB890X",
+        "19143": "AB890X",
+        "19144": "AB890X",
+        "19145": "AB890X",
+        "19146": "AB890X",
+        "19147": "AB890X",
+        "19148": "AB890X",
+        "19149": "AB890X",
+        "19150": "AB890X",
+        "19151": "AB890X",
+        "19152": "AB890X",
+        "19153": "AB890X",
+        "19154": "AB890X",
+        "19155": "AB890X",
+        "19160": "AB890X",
+        "19161": "AB890X",
+        "19162": "AB890X",
+        "19170": "AB890X",
+        "19171": "AB890X",
+        "19172": "AB890X",
+        "19173": "AB890X",
+        "19175": "AB890X",
+        "19176": "AB890X",
+        "19177": "AB890X",
+        "19178": "AB890X",
+        "19179": "AB890X",
+        "19181": "AB890X",
+        "19182": "AB890X",
+        "19183": "AB890X",
+        "19184": "AB890X",
+        "19185": "AB890X",
+        "19187": "AB890X",
+        "19188": "AB890X",
+        "19191": "AB890X",
+        "19192": "AB890X",
+        "19193": "AB890X",
+        "19194": "AB890X",
+        "19195": "AB890X",
+        "19196": "AB890X",
+        "19197": "AB890X",
+        "19244": "AB890X",
+        "19255": "AB890X",
+        "19301": "AB890X",
+        "19310": "AB890X",
+        "19311": "AB890X",
+        "19312": "AB890X",
+        "19316": "AB890X",
+        "19317": "AB890X",
+        "19318": "AB890X",
+        "19319": "AB890X",
+        "19320": "AB890X",
+        "19330": "AB890X",
+        "19331": "AB890X",
+        "19333": "AB890X",
+        "19335": "AB890X",
+        "19339": "AB890X",
+        "19340": "AB890X",
+        "19341": "AB890X",
+        "19342": "AB890X",
+        "19343": "AB890X",
+        "19344": "AB890X",
+        "19345": "AB890X",
+        "19346": "AB890X",
+        "19347": "AB890X",
+        "19348": "AB890X",
+        "19350": "AB890X",
+        "19351": "AB890X",
+        "19352": "AB890X",
+        "19353": "AB890X",
+        "19354": "AB890X",
+        "19355": "AB890X",
+        "19357": "AB890X",
+        "19358": "AB890X",
+        "19360": "AB890X",
+        "19362": "AB890X",
+        "19363": "AB890X",
+        "19365": "AB890X",
+        "19366": "AB890X",
+        "19367": "AB890X",
+        "19369": "AB890X",
+        "19371": "AB890X",
+        "19372": "AB890X",
+        "19373": "AB890X",
+        "19374": "AB890X",
+        "19375": "AB890X",
+        "19376": "AB890X",
+        "19380": "AB890X",
+        "19381": "AB890X",
+        "19382": "AB890X",
+        "19383": "AB890X",
+        "19390": "AB890X",
+        "19395": "AB890X",
+        "19397": "AB890X",
+        "19398": "AB890X",
+        "19399": "AB890X",
+        "19401": "AB890X",
+        "19403": "AB890X",
+        "19404": "AB890X",
+        "19405": "AB890X",
+        "19406": "AB890X",
+        "19407": "AB890X",
+        "19408": "AB890X",
+        "19409": "AB890X",
+        "19415": "AB890X",
+        "19420": "AB890X",
+        "19421": "AB890X",
+        "19422": "AB890X",
+        "19423": "AB890X",
+        "19424": "AB890X",
+        "19425": "AB890X",
+        "19426": "AB890X",
+        "19428": "AB890X",
+        "19429": "AB890X",
+        "19430": "AB890X",
+        "19432": "AB890X",
+        "19435": "AB890X",
+        "19436": "AB890X",
+        "19437": "AB890X",
+        "19438": "AB890X",
+        "19440": "AB890X",
+        "19441": "AB890X",
+        "19442": "AB890X",
+        "19443": "AB890X",
+        "19444": "AB890X",
+        "19446": "AB890X",
+        "19450": "AB890X",
+        "19451": "AB890X",
+        "19453": "AB890X",
+        "19454": "AB890X",
+        "19455": "AB890X",
+        "19456": "AB890X",
+        "19457": "AB890X",
+        "19460": "AB890X",
+        "19462": "AB890X",
+        "19464": "AB890X",
+        "19465": "AB887X",
+        "19468": "AB890X",
+        "19470": "AB890X",
+        "19472": "AB890X",
+        "19473": "AB890X",
+        "19474": "AB890X",
+        "19475": "AB890X",
+        "19477": "AB890X",
+        "19478": "AB890X",
+        "19479": "AB891X",
+        "19480": "AB890X",
+        "19481": "AB890X",
+        "19482": "AB890X",
+        "19483": "AB890X",
+        "19484": "AB890X",
+        "19485": "AB890X",
+        "19486": "AB890X",
+        "19487": "AB890X",
+        "19488": "AB890X",
+        "19489": "AB890X",
+        "19490": "AB890X",
+        "19492": "AB890X",
+        "19493": "AB890X",
+        "19494": "AB890X",
+        "19495": "AB890X",
+        "19496": "AB890X",
+        "19501": "AB892X",
+        "19503": "AB890X",
+        "19504": "AB890X",
+        "19505": "AB890X",
+        "19506": "AB890X",
+        "19507": "AB890X",
+        "19508": "AB890X",
+        "19510": "AB890X",
+        "19511": "AB890X",
+        "19512": "AB890X",
+        "19516": "AB890X",
+        "19518": "AB890X",
+        "19519": "AB890X",
+        "19520": "AB890X",
+        "19522": "AB890X",
+        "19523": "AB890X",
+        "19525": "AB890X",
+        "19526": "AB890X",
+        "19529": "AB890X",
+        "19530": "AB890X",
+        "19533": "AB890X",
+        "19534": "AB890X",
+        "19535": "AB890X",
+        "19536": "AB890X",
+        "19538": "AB890X",
+        "19539": "AB890X",
+        "19540": "AB890X",
+        "19541": "AB890X",
+        "19542": "AB890X",
+        "19543": "AB890X",
+        "19544": "AB890X",
+        "19545": "AB890X",
+        "19547": "AB890X",
+        "19548": "AB890X",
+        "19549": "AB890X",
+        "19550": "AB890X",
+        "19551": "AB890X",
+        "19554": "AB890X",
+        "19555": "AB890X",
+        "19559": "AB890X",
+        "19560": "AB890X",
+        "19562": "AB890X",
+        "19564": "AB890X",
+        "19565": "AB890X",
+        "19567": "AB890X",
+        "19601": "AB890X",
+        "19602": "AB890X",
+        "19603": "AB892X",
+        "19604": "AB890X",
+        "19605": "AB890X",
+        "19606": "AB890X",
+        "19607": "AB890X",
+        "19608": "AB890X",
+        "19609": "AB890X",
+        "19610": "AB890X",
+        "19611": "AB890X",
+        "19612": "AB890X",
+        "19640": "AB890X",
+        "19701": "AB890X",
+        "19702": "AB890X",
+        "19703": "AB890X",
+        "19706": "AB890X",
+        "19707": "AB890X",
+        "19708": "AB890X",
+        "19709": "AB890X",
+        "19710": "AB890X",
+        "19711": "AB890X",
+        "19712": "AB890X",
+        "19713": "AB890X",
+        "19714": "AB890X",
+        "19715": "AB890X",
+        "19716": "AB890X",
+        "19717": "AB890X",
+        "19718": "AB890X",
+        "19720": "AB890X",
+        "19721": "AB890X",
+        "19725": "AB890X",
+        "19726": "AB890X",
+        "19730": "AB890X",
+        "19731": "AB890X",
+        "19732": "AB890X",
+        "19733": "AB890X",
+        "19734": "AB890X",
+        "19735": "AB890X",
+        "19736": "AB890X",
+        "19801": "AB890X",
+        "19802": "AB890X",
+        "19803": "AB890X",
+        "19804": "AB890X",
+        "19805": "AB890X",
+        "19806": "AB890X",
+        "19807": "AB890X",
+        "19808": "AB890X",
+        "19809": "AB890X",
+        "19810": "AB890X",
+        "19850": "AB890X",
+        "19880": "AB890X",
+        "19884": "AB890X",
+        "19885": "AB890X",
+        "19886": "AB890X",
+        "19887": "AB890X",
+        "19889": "AB890X",
+        "19890": "AB890X",
+        "19891": "AB890X",
+        "19892": "AB890X",
+        "19893": "AB890X",
+        "19894": "AB890X",
+        "19895": "AB890X",
+        "19896": "AB890X",
+        "19897": "AB890X",
+        "19898": "AB890X",
+        "19899": "AB890X",
+        "19901": "AB890X",
+        "19902": "AB890X",
+        "19903": "AB890X",
+        "19904": "AB890X",
+        "19905": "AB890X",
+        "19906": "AB890X",
+        "19930": "AB890X",
+        "19931": "AB890X",
+        "19933": "AB890X",
+        "19934": "AB890X",
+        "19936": "AB890X",
+        "19938": "AB890X",
+        "19939": "AB890X",
+        "19940": "AB890X",
+        "19941": "AB890X",
+        "19943": "AB890X",
+        "19944": "AB890X",
+        "19945": "AB890X",
+        "19946": "AB890X",
+        "19947": "AB890X",
+        "19950": "AB890X",
+        "19951": "AB890X",
+        "19952": "AB890X",
+        "19953": "AB890X",
+        "19954": "AB890X",
+        "19955": "AB890X",
+        "19956": "AB890X",
+        "19958": "AB890X",
+        "19960": "AB890X",
+        "19961": "AB890X",
+        "19962": "AB890X",
+        "19963": "AB890X",
+        "19964": "AB890X",
+        "19966": "AB890X",
+        "19967": "AB890X",
+        "19968": "AB890X",
+        "19969": "AB890X",
+        "19970": "AB890X",
+        "19971": "AB890X",
+        "19973": "AB890X",
+        "19975": "AB890X",
+        "19977": "AB890X",
+        "19979": "AB890X",
+        "19980": "AB890X",
+        "20001": "AB892X",
+        "20002": "AB892X",
+        "20008": "AB892X",
+        "20011": "AB892X",
+        "20100": "AB890X",
+        "20101": "AB892X",
+        "20102": "AB892X",
+        "20103": "AB892X",
+        "20104": "AB892X",
+        "20105": "AB892X",
+        "20106": "AB892X",
+        "20107": "AB892X",
+        "20108": "AB892X",
+        "20109": "AB892X",
+        "20110": "AB892X",
+        "20111": "AB892X",
+        "20112": "AB892X",
+        "20113": "AB892X",
+        "20115": "AB892X",
+        "20116": "AB892X",
+        "20117": "AB892X",
+        "20118": "AB892X",
+        "20119": "AB892X",
+        "20120": "AB892X",
+        "20121": "AB892X",
+        "20122": "AB892X",
+        "20124": "AB892X",
+        "20128": "AB892X",
+        "20129": "AB892X",
+        "20130": "AB892X",
+        "20131": "AB892X",
+        "20132": "AB892X",
+        "20134": "AB892X",
+        "20135": "AB892X",
+        "20136": "AB892X",
+        "20137": "AB892X",
+        "20138": "AB892X",
+        "20139": "AB892X",
+        "20140": "AB892X",
+        "20141": "AB892X",
+        "20142": "AB892X",
+        "20143": "AB892X",
+        "20144": "AB892X",
+        "20146": "AB892X",
+        "20147": "AB892X",
+        "20148": "AB892X",
+        "20149": "AB892X",
+        "20151": "AB892X",
+        "20152": "AB892X",
+        "20153": "AB892X",
+        "20155": "AB892X",
+        "20156": "AB892X",
+        "20158": "AB892X",
+        "20159": "AB892X",
+        "20160": "AB892X",
+        "20163": "AB892X",
+        "20164": "AB892X",
+        "20165": "AB892X",
+        "20166": "AB892X",
+        "20167": "AB892X",
+        "20168": "AB892X",
+        "20169": "AB892X",
+        "20170": "AB892X",
+        "20171": "AB892X",
+        "20172": "AB892X",
+        "20175": "AB892X",
+        "20176": "AB892X",
+        "20177": "AB892X",
+        "20178": "AB892X",
+        "20180": "AB892X",
+        "20181": "AB892X",
+        "20182": "AB892X",
+        "20184": "AB892X",
+        "20185": "AB892X",
+        "20186": "AB892X",
+        "20187": "AB892X",
+        "20188": "AB892X",
+        "20189": "AB892X",
+        "20190": "AB892X",
+        "20191": "AB892X",
+        "20192": "AB892X",
+        "20193": "AB892X",
+        "20194": "AB892X",
+        "20195": "AB892X",
+        "20196": "AB892X",
+        "20197": "AB892X",
+        "20198": "AB892X",
+        "20199": "AB892X",
+        "20559": "AB892X",
+        "20601": "AB892X",
+        "20602": "AB892X",
+        "20603": "AB892X",
+        "20604": "AB892X",
+        "20606": "AB892X",
+        "20607": "AB892X",
+        "20608": "AB892X",
+        "20609": "AB892X",
+        "20610": "AB892X",
+        "20611": "AB892X",
+        "20612": "AB892X",
+        "20613": "AB892X",
+        "20615": "AB892X",
+        "20616": "AB892X",
+        "20617": "AB892X",
+        "20618": "AB892X",
+        "20619": "AB892X",
+        "20620": "AB892X",
+        "20621": "AB892X",
+        "20622": "AB892X",
+        "20623": "AB892X",
+        "20624": "AB892X",
+        "20625": "AB892X",
+        "20626": "AB892X",
+        "20627": "AB892X",
+        "20628": "AB892X",
+        "20629": "AB892X",
+        "20630": "AB892X",
+        "20632": "AB892X",
+        "20634": "AB892X",
+        "20635": "AB892X",
+        "20636": "AB892X",
+        "20637": "AB892X",
+        "20639": "AB892X",
+        "20640": "AB892X",
+        "20643": "AB892X",
+        "20645": "AB892X",
+        "20646": "AB892X",
+        "20650": "AB892X",
+        "20653": "AB892X",
+        "20656": "AB892X",
+        "20657": "AB892X",
+        "20658": "AB892X",
+        "20659": "AB892X",
+        "20660": "AB892X",
+        "20661": "AB892X",
+        "20662": "AB892X",
+        "20664": "AB892X",
+        "20667": "AB892X",
+        "20670": "AB892X",
+        "20674": "AB892X",
+        "20675": "AB892X",
+        "20676": "AB892X",
+        "20677": "AB892X",
+        "20678": "AB892X",
+        "20680": "AB892X",
+        "20682": "AB892X",
+        "20684": "AB892X",
+        "20685": "AB892X",
+        "20686": "AB892X",
+        "20687": "AB892X",
+        "20688": "AB892X",
+        "20689": "AB892X",
+        "20690": "AB892X",
+        "20692": "AB892X",
+        "20693": "AB892X",
+        "20695": "AB892X",
+        "20697": "AB892X",
+        "20701": "AB890X",
+        "20703": "AB892X",
+        "20704": "AB892X",
+        "20705": "AB892X",
+        "20706": "AB892X",
+        "20707": "AB892X",
+        "20708": "AB892X",
+        "20709": "AB892X",
+        "20710": "AB892X",
+        "20711": "AB890X",
+        "20712": "AB892X",
+        "20714": "AB892X",
+        "20715": "AB892X",
+        "20716": "AB892X",
+        "20717": "AB892X",
+        "20718": "AB892X",
+        "20719": "AB892X",
+        "20720": "AB892X",
+        "20721": "AB892X",
+        "20722": "AB892X",
+        "20723": "AB890X",
+        "20724": "AB890X",
+        "20725": "AB892X",
+        "20726": "AB892X",
+        "20731": "AB892X",
+        "20732": "AB892X",
+        "20733": "AB890X",
+        "20735": "AB892X",
+        "20736": "AB892X",
+        "20737": "AB892X",
+        "20738": "AB892X",
+        "20740": "AB892X",
+        "20741": "AB892X",
+        "20742": "AB892X",
+        "20743": "AB892X",
+        "20744": "AB892X",
+        "20745": "AB892X",
+        "20746": "AB892X",
+        "20747": "AB892X",
+        "20748": "AB892X",
+        "20749": "AB892X",
+        "20750": "AB892X",
+        "20751": "AB890X",
+        "20752": "AB892X",
+        "20753": "AB892X",
+        "20754": "AB892X",
+        "20755": "AB890X",
+        "20757": "AB892X",
+        "20758": "AB890X",
+        "20759": "AB890X",
+        "20762": "AB892X",
+        "20763": "AB890X",
+        "20764": "AB890X",
+        "20765": "AB890X",
+        "20768": "AB892X",
+        "20769": "AB892X",
+        "20770": "AB892X",
+        "20771": "AB892X",
+        "20772": "AB892X",
+        "20773": "AB892X",
+        "20774": "AB892X",
+        "20775": "AB892X",
+        "20776": "AB890X",
+        "20777": "AB890X",
+        "20778": "AB890X",
+        "20779": "AB890X",
+        "20781": "AB892X",
+        "20782": "AB892X",
+        "20783": "AB892X",
+        "20784": "AB892X",
+        "20785": "AB892X",
+        "20787": "AB892X",
+        "20788": "AB892X",
+        "20790": "AB892X",
+        "20791": "AB892X",
+        "20792": "AB892X",
+        "20794": "AB890X",
+        "20797": "AB892X",
+        "20799": "AB892X",
+        "20810": "AB892X",
+        "20811": "AB892X",
+        "20812": "AB892X",
+        "20813": "AB892X",
+        "20814": "AB892X",
+        "20815": "AB892X",
+        "20816": "AB892X",
+        "20817": "AB892X",
+        "20818": "AB892X",
+        "20824": "AB892X",
+        "20825": "AB892X",
+        "20827": "AB892X",
+        "20830": "AB892X",
+        "20832": "AB892X",
+        "20833": "AB892X",
+        "20837": "AB892X",
+        "20838": "AB892X",
+        "20839": "AB892X",
+        "20841": "AB892X",
+        "20842": "AB892X",
+        "20847": "AB892X",
+        "20848": "AB892X",
+        "20849": "AB892X",
+        "20850": "AB892X",
+        "20851": "AB892X",
+        "20852": "AB892X",
+        "20853": "AB892X",
+        "20854": "AB892X",
+        "20855": "AB892X",
+        "20857": "AB892X",
+        "20859": "AB892X",
+        "20860": "AB892X",
+        "20861": "AB892X",
+        "20862": "AB892X",
+        "20866": "AB892X",
+        "20868": "AB892X",
+        "20871": "AB892X",
+        "20872": "AB892X",
+        "20874": "AB892X",
+        "20875": "AB892X",
+        "20876": "AB892X",
+        "20877": "AB892X",
+        "20878": "AB892X",
+        "20879": "AB892X",
+        "20880": "AB892X",
+        "20882": "AB892X",
+        "20883": "AB892X",
+        "20884": "AB892X",
+        "20885": "AB892X",
+        "20886": "AB892X",
+        "20889": "AB892X",
+        "20891": "AB892X",
+        "20892": "AB892X",
+        "20894": "AB892X",
+        "20895": "AB892X",
+        "20896": "AB892X",
+        "20897": "AB892X",
+        "20898": "AB892X",
+        "20899": "AB892X",
+        "20901": "AB892X",
+        "20902": "AB892X",
+        "20903": "AB892X",
+        "20904": "AB892X",
+        "20905": "AB892X",
+        "20906": "AB892X",
+        "20907": "AB892X",
+        "20908": "AB892X",
+        "20910": "AB892X",
+        "20911": "AB892X",
+        "20912": "AB892X",
+        "20913": "AB892X",
+        "20914": "AB892X",
+        "20915": "AB892X",
+        "20916": "AB892X",
+        "20918": "AB892X",
+        "20993": "AB892X",
+        "20997": "AB892X",
+        "21001": "AB890X",
+        "21005": "AB890X",
+        "21009": "AB890X",
+        "21010": "AB890X",
+        "21012": "AB890X",
+        "21013": "AB890X",
+        "21014": "AB890X",
+        "21015": "AB890X",
+        "21017": "AB890X",
+        "21018": "AB890X",
+        "21020": "AB890X",
+        "21022": "AB890X",
+        "21023": "AB890X",
+        "21027": "AB890X",
+        "21028": "AB890X",
+        "21029": "AB890X",
+        "21030": "AB890X",
+        "21031": "AB890X",
+        "21032": "AB890X",
+        "21034": "AB890X",
+        "21035": "AB890X",
+        "21036": "AB890X",
+        "21037": "AB890X",
+        "21040": "AB890X",
+        "21041": "AB890X",
+        "21042": "AB890X",
+        "21043": "AB890X",
+        "21044": "AB890X",
+        "21045": "AB890X",
+        "21046": "AB890X",
+        "21047": "AB890X",
+        "21048": "AB890X",
+        "21050": "AB890X",
+        "21051": "AB890X",
+        "21052": "AB890X",
+        "21053": "AB890X",
+        "21054": "AB890X",
+        "21056": "AB890X",
+        "21057": "AB890X",
+        "21060": "AB890X",
+        "21061": "AB890X",
+        "21062": "AB890X",
+        "21065": "AB890X",
+        "21071": "AB890X",
+        "21074": "AB890X",
+        "21075": "AB890X",
+        "21076": "AB890X",
+        "21077": "AB890X",
+        "21078": "AB890X",
+        "21082": "AB890X",
+        "21084": "AB890X",
+        "21085": "AB890X",
+        "21087": "AB890X",
+        "21088": "AB890X",
+        "21090": "AB890X",
+        "21092": "AB890X",
+        "21093": "AB890X",
+        "21094": "AB890X",
+        "21098": "AB890X",
+        "21102": "AB890X",
+        "21104": "AB890X",
+        "21105": "AB890X",
+        "21106": "AB890X",
+        "21108": "AB890X",
+        "21111": "AB890X",
+        "21113": "AB890X",
+        "21114": "AB890X",
+        "21117": "AB890X",
+        "21120": "AB890X",
+        "21122": "AB890X",
+        "21123": "AB890X",
+        "21128": "AB890X",
+        "21130": "AB890X",
+        "21131": "AB890X",
+        "21132": "AB890X",
+        "21133": "AB890X",
+        "21136": "AB890X",
+        "21139": "AB890X",
+        "21140": "AB890X",
+        "21144": "AB890X",
+        "21146": "AB890X",
+        "21150": "AB890X",
+        "21152": "AB890X",
+        "21153": "AB890X",
+        "21154": "AB890X",
+        "21155": "AB890X",
+        "21156": "AB890X",
+        "21157": "AB890X",
+        "21158": "AB890X",
+        "21160": "AB890X",
+        "21161": "AB890X",
+        "21162": "AB890X",
+        "21163": "AB890X",
+        "21200": "AB890X",
+        "21201": "AB890X",
+        "21202": "AB890X",
+        "21203": "AB890X",
+        "21204": "AB890X",
+        "21205": "AB890X",
+        "21206": "AB890X",
+        "21207": "AB890X",
+        "21208": "AB890X",
+        "21209": "AB890X",
+        "21210": "AB890X",
+        "21211": "AB890X",
+        "21212": "AB890X",
+        "21213": "AB890X",
+        "21214": "AB890X",
+        "21215": "AB890X",
+        "21216": "AB890X",
+        "21217": "AB890X",
+        "21218": "AB890X",
+        "21219": "AB890X",
+        "21220": "AB890X",
+        "21221": "AB890X",
+        "21222": "AB890X",
+        "21223": "AB890X",
+        "21224": "AB890X",
+        "21225": "AB890X",
+        "21226": "AB890X",
+        "21227": "AB890X",
+        "21228": "AB890X",
+        "21229": "AB890X",
+        "21230": "AB890X",
+        "21231": "AB890X",
+        "21233": "AB890X",
+    }
+)
diff --git a/.vim/bundle/black/profiling/dict_huge.py b/.vim/bundle/black/profiling/dict_huge.py
new file mode 100644 (file)
index 0000000..11c7fe1
--- /dev/null
@@ -0,0 +1,41440 @@
+config = some.Structure(
+    some_mapping={
+        "00501": "AB890X",
+        "00544": "AB890X",
+        "01001": "AB889X",
+        "01002": "AB889X",
+        "01003": "AB889X",
+        "01004": "AB889X",
+        "01005": "AB889X",
+        "01007": "AB889X",
+        "01008": "AB889X",
+        "01009": "AB889X",
+        "01010": "AB889X",
+        "01011": "AB889X",
+        "01012": "AB889X",
+        "01013": "AB889X",
+        "01014": "AB889X",
+        "01020": "AB889X",
+        "01021": "AB889X",
+        "01022": "AB889X",
+        "01026": "AB889X",
+        "01027": "AB889X",
+        "01028": "AB889X",
+        "01029": "AB889X",
+        "01030": "AB889X",
+        "01031": "AB889X",
+        "01032": "AB889X",
+        "01033": "AB889X",
+        "01034": "AB889X",
+        "01035": "AB889X",
+        "01036": "AB889X",
+        "01037": "AB889X",
+        "01038": "AB889X",
+        "01039": "AB889X",
+        "01040": "AB889X",
+        "01041": "AB889X",
+        "01050": "AB889X",
+        "01053": "AB889X",
+        "01054": "AB889X",
+        "01056": "AB889X",
+        "01057": "AB889X",
+        "01059": "AB889X",
+        "01060": "AB889X",
+        "01061": "AB889X",
+        "01062": "AB889X",
+        "01063": "AB889X",
+        "01066": "AB889X",
+        "01068": "AB889X",
+        "01069": "AB889X",
+        "01070": "AB889X",
+        "01071": "AB889X",
+        "01072": "AB889X",
+        "01073": "AB889X",
+        "01074": "AB889X",
+        "01075": "AB889X",
+        "01077": "AB889X",
+        "01079": "AB889X",
+        "01080": "AB889X",
+        "01081": "AB889X",
+        "01082": "AB889X",
+        "01083": "AB889X",
+        "01084": "AB889X",
+        "01085": "AB889X",
+        "01086": "AB889X",
+        "01088": "AB889X",
+        "01089": "AB889X",
+        "01090": "AB889X",
+        "01092": "AB889X",
+        "01093": "AB889X",
+        "01094": "AB889X",
+        "01095": "AB889X",
+        "01096": "AB889X",
+        "01097": "AB889X",
+        "01098": "AB889X",
+        "01101": "AB889X",
+        "01102": "AB889X",
+        "01103": "AB889X",
+        "01104": "AB889X",
+        "01105": "AB889X",
+        "01106": "AB889X",
+        "01107": "AB889X",
+        "01108": "AB889X",
+        "01109": "AB889X",
+        "01111": "AB889X",
+        "01115": "AB889X",
+        "01116": "AB889X",
+        "01118": "AB889X",
+        "01119": "AB889X",
+        "01128": "AB889X",
+        "01129": "AB889X",
+        "01133": "AB889X",
+        "01138": "AB889X",
+        "01139": "AB889X",
+        "01144": "AB889X",
+        "01151": "AB889X",
+        "01152": "AB889X",
+        "01195": "AB889X",
+        "01199": "AB889X",
+        "01201": "AB890X",
+        "01202": "AB889X",
+        "01203": "AB889X",
+        "01220": "AB890X",
+        "01222": "AB889X",
+        "01223": "AB889X",
+        "01224": "AB889X",
+        "01225": "AB889X",
+        "01226": "AB889X",
+        "01227": "AB889X",
+        "01229": "AB889X",
+        "01230": "AB889X",
+        "01235": "AB889X",
+        "01236": "AB889X",
+        "01237": "AB889X",
+        "01238": "AB889X",
+        "01240": "AB889X",
+        "01242": "AB889X",
+        "01243": "AB889X",
+        "01244": "AB889X",
+        "01245": "AB889X",
+        "01247": "AB890X",
+        "01252": "AB889X",
+        "01253": "AB889X",
+        "01254": "AB889X",
+        "01255": "AB889X",
+        "01256": "AB889X",
+        "01257": "AB890X",
+        "01258": "AB889X",
+        "01259": "AB889X",
+        "01260": "AB889X",
+        "01262": "AB889X",
+        "01263": "AB889X",
+        "01264": "AB889X",
+        "01266": "AB889X",
+        "01267": "AB890X",
+        "01270": "AB889X",
+        "01301": "AB889X",
+        "01302": "AB889X",
+        "01330": "AB889X",
+        "01331": "AB889X",
+        "01337": "AB889X",
+        "01338": "AB889X",
+        "01339": "AB889X",
+        "01340": "AB889X",
+        "01341": "AB889X",
+        "01342": "AB889X",
+        "01343": "AB889X",
+        "01344": "AB889X",
+        "01346": "AB889X",
+        "01347": "AB889X",
+        "01349": "AB889X",
+        "01350": "AB889X",
+        "01351": "AB889X",
+        "01354": "AB889X",
+        "01355": "AB889X",
+        "01360": "AB889X",
+        "01364": "AB889X",
+        "01366": "AB889X",
+        "01367": "AB890X",
+        "01368": "AB889X",
+        "01370": "AB889X",
+        "01373": "AB889X",
+        "01375": "AB889X",
+        "01376": "AB889X",
+        "01378": "AB889X",
+        "01379": "AB889X",
+        "01380": "AB889X",
+        "01420": "AB889X",
+        "01430": "AB889X",
+        "01431": "AB889X",
+        "01432": "AB889X",
+        "01434": "AB889X",
+        "01436": "AB889X",
+        "01438": "AB889X",
+        "01440": "AB889X",
+        "01441": "AB889X",
+        "01450": "AB889X",
+        "01451": "AB889X",
+        "01452": "AB889X",
+        "01453": "AB889X",
+        "01460": "AB889X",
+        "01462": "AB889X",
+        "01463": "AB889X",
+        "01464": "AB889X",
+        "01467": "AB889X",
+        "01468": "AB889X",
+        "01469": "AB889X",
+        "01470": "AB889X",
+        "01471": "AB889X",
+        "01472": "AB889X",
+        "01473": "AB889X",
+        "01474": "AB889X",
+        "01475": "AB889X",
+        "01477": "AB889X",
+        "01501": "AB889X",
+        "01503": "AB889X",
+        "01504": "AB889X",
+        "01505": "AB889X",
+        "01506": "AB889X",
+        "01507": "AB889X",
+        "01508": "AB889X",
+        "01509": "AB889X",
+        "01510": "AB889X",
+        "01515": "AB889X",
+        "01516": "AB889X",
+        "01517": "AB889X",
+        "01518": "AB889X",
+        "01519": "AB889X",
+        "01520": "AB889X",
+        "01521": "AB889X",
+        "01522": "AB889X",
+        "01523": "AB889X",
+        "01524": "AB889X",
+        "01525": "AB889X",
+        "01526": "AB889X",
+        "01527": "AB889X",
+        "01529": "AB889X",
+        "01531": "AB889X",
+        "01532": "AB889X",
+        "01534": "AB889X",
+        "01535": "AB889X",
+        "01536": "AB889X",
+        "01537": "AB889X",
+        "01538": "AB889X",
+        "01540": "AB889X",
+        "01541": "AB889X",
+        "01542": "AB889X",
+        "01543": "AB889X",
+        "01545": "AB889X",
+        "01546": "AB889X",
+        "01550": "AB889X",
+        "01560": "AB889X",
+        "01561": "AB889X",
+        "01562": "AB889X",
+        "01564": "AB889X",
+        "01566": "AB889X",
+        "01568": "AB889X",
+        "01569": "AB889X",
+        "01570": "AB889X",
+        "01571": "AB889X",
+        "01580": "AB889X",
+        "01581": "AB889X",
+        "01582": "AB889X",
+        "01583": "AB889X",
+        "01585": "AB889X",
+        "01586": "AB889X",
+        "01588": "AB889X",
+        "01590": "AB889X",
+        "01601": "AB889X",
+        "01602": "AB889X",
+        "01603": "AB889X",
+        "01604": "AB889X",
+        "01605": "AB889X",
+        "01606": "AB889X",
+        "01607": "AB889X",
+        "01608": "AB889X",
+        "01609": "AB889X",
+        "01610": "AB889X",
+        "01611": "AB889X",
+        "01612": "AB889X",
+        "01613": "AB889X",
+        "01614": "AB889X",
+        "01615": "AB889X",
+        "01653": "AB889X",
+        "01654": "AB889X",
+        "01655": "AB889X",
+        "01701": "AB889X",
+        "01702": "AB889X",
+        "01703": "AB889X",
+        "01704": "AB889X",
+        "01705": "AB889X",
+        "01718": "AB889X",
+        "01719": "AB889X",
+        "01720": "AB889X",
+        "01721": "AB889X",
+        "01730": "AB889X",
+        "01731": "AB889X",
+        "01740": "AB889X",
+        "01741": "AB889X",
+        "01742": "AB889X",
+        "01745": "AB889X",
+        "01746": "AB889X",
+        "01747": "AB889X",
+        "01748": "AB889X",
+        "01749": "AB889X",
+        "01752": "AB889X",
+        "01754": "AB889X",
+        "01756": "AB889X",
+        "01757": "AB889X",
+        "01760": "AB889X",
+        "01770": "AB889X",
+        "01772": "AB889X",
+        "01773": "AB889X",
+        "01775": "AB889X",
+        "01776": "AB889X",
+        "01778": "AB889X",
+        "01784": "AB889X",
+        "01801": "AB889X",
+        "01803": "AB889X",
+        "01805": "AB889X",
+        "01806": "AB889X",
+        "01807": "AB889X",
+        "01808": "AB889X",
+        "01810": "AB889X",
+        "01812": "AB889X",
+        "01813": "AB889X",
+        "01815": "AB889X",
+        "01821": "AB889X",
+        "01822": "AB889X",
+        "01824": "AB889X",
+        "01826": "AB889X",
+        "01827": "AB889X",
+        "01830": "AB889X",
+        "01831": "AB889X",
+        "01832": "AB889X",
+        "01833": "AB889X",
+        "01834": "AB889X",
+        "01835": "AB889X",
+        "01840": "AB889X",
+        "01841": "AB889X",
+        "01842": "AB889X",
+        "01843": "AB889X",
+        "01844": "AB889X",
+        "01845": "AB889X",
+        "01850": "AB889X",
+        "01851": "AB889X",
+        "01852": "AB889X",
+        "01853": "AB889X",
+        "01854": "AB889X",
+        "01860": "AB889X",
+        "01862": "AB889X",
+        "01863": "AB889X",
+        "01864": "AB889X",
+        "01865": "AB889X",
+        "01866": "AB889X",
+        "01867": "AB889X",
+        "01876": "AB889X",
+        "01879": "AB889X",
+        "01880": "AB889X",
+        "01885": "AB889X",
+        "01886": "AB889X",
+        "01887": "AB889X",
+        "01888": "AB889X",
+        "01889": "AB889X",
+        "01890": "AB889X",
+        "01899": "AB889X",
+        "01901": "AB889X",
+        "01902": "AB889X",
+        "01903": "AB889X",
+        "01904": "AB889X",
+        "01905": "AB889X",
+        "01906": "AB889X",
+        "01907": "AB889X",
+        "01908": "AB889X",
+        "01910": "AB889X",
+        "01913": "AB889X",
+        "01915": "AB889X",
+        "01921": "AB889X",
+        "01922": "AB889X",
+        "01923": "AB889X",
+        "01929": "AB889X",
+        "01930": "AB889X",
+        "01931": "AB889X",
+        "01936": "AB889X",
+        "01937": "AB889X",
+        "01938": "AB889X",
+        "01940": "AB889X",
+        "01944": "AB889X",
+        "01945": "AB889X",
+        "01949": "AB889X",
+        "01950": "AB889X",
+        "01951": "AB889X",
+        "01952": "AB889X",
+        "01960": "AB889X",
+        "01961": "AB889X",
+        "01965": "AB889X",
+        "01966": "AB889X",
+        "01969": "AB889X",
+        "01970": "AB889X",
+        "01971": "AB889X",
+        "01982": "AB889X",
+        "01983": "AB889X",
+        "01984": "AB889X",
+        "01985": "AB889X",
+        "02018": "AB889X",
+        "02019": "AB889X",
+        "02020": "AB889X",
+        "02021": "AB889X",
+        "02025": "AB889X",
+        "02026": "AB889X",
+        "02027": "AB889X",
+        "02030": "AB889X",
+        "02031": "AB889X",
+        "02032": "AB889X",
+        "02035": "AB889X",
+        "02038": "AB889X",
+        "02040": "AB889X",
+        "02041": "AB889X",
+        "02043": "AB889X",
+        "02044": "AB889X",
+        "02045": "AB889X",
+        "02047": "AB889X",
+        "02048": "AB889X",
+        "02050": "AB889X",
+        "02051": "AB889X",
+        "02052": "AB889X",
+        "02053": "AB889X",
+        "02054": "AB889X",
+        "02055": "AB889X",
+        "02056": "AB889X",
+        "02059": "AB889X",
+        "02060": "AB889X",
+        "02061": "AB889X",
+        "02062": "AB889X",
+        "02065": "AB889X",
+        "02066": "AB889X",
+        "02067": "AB889X",
+        "02070": "AB889X",
+        "02071": "AB889X",
+        "02072": "AB889X",
+        "02081": "AB889X",
+        "02090": "AB889X",
+        "02093": "AB889X",
+        "02108": "AB889X",
+        "02109": "AB889X",
+        "02110": "AB889X",
+        "02111": "AB889X",
+        "02112": "AB889X",
+        "02113": "AB889X",
+        "02114": "AB889X",
+        "02115": "AB889X",
+        "02116": "AB889X",
+        "02117": "AB889X",
+        "02118": "AB889X",
+        "02119": "AB889X",
+        "02120": "AB889X",
+        "02121": "AB889X",
+        "02122": "AB889X",
+        "02123": "AB889X",
+        "02124": "AB889X",
+        "02125": "AB889X",
+        "02126": "AB889X",
+        "02127": "AB889X",
+        "02128": "AB889X",
+        "02129": "AB889X",
+        "02130": "AB889X",
+        "02131": "AB889X",
+        "02132": "AB889X",
+        "02133": "AB889X",
+        "02134": "AB889X",
+        "02135": "AB889X",
+        "02136": "AB889X",
+        "02137": "AB889X",
+        "02138": "AB889X",
+        "02139": "AB889X",
+        "02140": "AB889X",
+        "02141": "AB889X",
+        "02142": "AB889X",
+        "02143": "AB889X",
+        "02144": "AB889X",
+        "02145": "AB889X",
+        "02148": "AB889X",
+        "02149": "AB889X",
+        "02150": "AB889X",
+        "02151": "AB889X",
+        "02152": "AB889X",
+        "02153": "AB889X",
+        "02155": "AB889X",
+        "02156": "AB889X",
+        "02163": "AB889X",
+        "02169": "AB889X",
+        "02170": "AB889X",
+        "02171": "AB889X",
+        "02176": "AB889X",
+        "02180": "AB889X",
+        "02184": "AB889X",
+        "02185": "AB889X",
+        "02186": "AB889X",
+        "02187": "AB889X",
+        "02188": "AB889X",
+        "02189": "AB889X",
+        "02190": "AB889X",
+        "02191": "AB889X",
+        "02196": "AB889X",
+        "02199": "AB889X",
+        "02201": "AB889X",
+        "02203": "AB889X",
+        "02204": "AB889X",
+        "02205": "AB889X",
+        "02206": "AB889X",
+        "02207": "AB889X",
+        "02210": "AB889X",
+        "02211": "AB889X",
+        "02212": "AB889X",
+        "02215": "AB889X",
+        "02216": "AB889X",
+        "02217": "AB889X",
+        "02222": "AB889X",
+        "02228": "AB889X",
+        "02238": "AB889X",
+        "02239": "AB889X",
+        "02241": "AB889X",
+        "02266": "AB889X",
+        "02269": "AB889X",
+        "02283": "AB889X",
+        "02284": "AB889X",
+        "02293": "AB889X",
+        "02295": "AB889X",
+        "02297": "AB889X",
+        "02298": "AB889X",
+        "02301": "AB889X",
+        "02302": "AB889X",
+        "02303": "AB889X",
+        "02304": "AB889X",
+        "02305": "AB889X",
+        "02322": "AB889X",
+        "02324": "AB889X",
+        "02325": "AB889X",
+        "02327": "AB889X",
+        "02330": "AB889X",
+        "02331": "AB889X",
+        "02332": "AB889X",
+        "02333": "AB889X",
+        "02334": "AB889X",
+        "02337": "AB889X",
+        "02338": "AB889X",
+        "02339": "AB889X",
+        "02340": "AB889X",
+        "02341": "AB889X",
+        "02343": "AB889X",
+        "02344": "AB889X",
+        "02345": "AB889X",
+        "02346": "AB889X",
+        "02347": "AB889X",
+        "02348": "AB889X",
+        "02349": "AB889X",
+        "02350": "AB889X",
+        "02351": "AB889X",
+        "02355": "AB889X",
+        "02356": "AB889X",
+        "02357": "AB889X",
+        "02358": "AB889X",
+        "02359": "AB889X",
+        "02360": "AB889X",
+        "02361": "AB889X",
+        "02362": "AB889X",
+        "02364": "AB889X",
+        "02366": "AB889X",
+        "02367": "AB889X",
+        "02368": "AB889X",
+        "02370": "AB889X",
+        "02375": "AB889X",
+        "02379": "AB889X",
+        "02381": "AB889X",
+        "02382": "AB889X",
+        "02420": "AB889X",
+        "02421": "AB889X",
+        "02445": "AB889X",
+        "02446": "AB889X",
+        "02447": "AB889X",
+        "02451": "AB889X",
+        "02452": "AB889X",
+        "02453": "AB889X",
+        "02454": "AB889X",
+        "02455": "AB889X",
+        "02456": "AB889X",
+        "02457": "AB889X",
+        "02458": "AB890X",
+        "02459": "AB889X",
+        "02460": "AB889X",
+        "02461": "AB889X",
+        "02462": "AB889X",
+        "02464": "AB889X",
+        "02465": "AB889X",
+        "02466": "AB889X",
+        "02467": "AB889X",
+        "02468": "AB889X",
+        "02471": "AB889X",
+        "02472": "AB889X",
+        "02474": "AB889X",
+        "02475": "AB889X",
+        "02476": "AB889X",
+        "02477": "AB889X",
+        "02478": "AB889X",
+        "02479": "AB889X",
+        "02481": "AB889X",
+        "02482": "AB889X",
+        "02492": "AB889X",
+        "02493": "AB889X",
+        "02494": "AB889X",
+        "02495": "AB889X",
+        "02532": "AB889X",
+        "02534": "AB889X",
+        "02535": "AB889X",
+        "02536": "AB889X",
+        "02537": "AB889X",
+        "02538": "AB889X",
+        "02539": "AB889X",
+        "02540": "AB889X",
+        "02541": "AB889X",
+        "02542": "AB889X",
+        "02543": "AB889X",
+        "02552": "AB889X",
+        "02553": "AB889X",
+        "02554": "AB889X",
+        "02556": "AB889X",
+        "02557": "AB889X",
+        "02558": "AB889X",
+        "02559": "AB889X",
+        "02561": "AB889X",
+        "02562": "AB889X",
+        "02563": "AB889X",
+        "02564": "AB889X",
+        "02565": "AB889X",
+        "02568": "AB889X",
+        "02571": "AB889X",
+        "02573": "AB889X",
+        "02574": "AB889X",
+        "02575": "AB889X",
+        "02576": "AB889X",
+        "02584": "AB889X",
+        "02601": "AB889X",
+        "02630": "AB889X",
+        "02631": "AB889X",
+        "02632": "AB889X",
+        "02633": "AB889X",
+        "02634": "AB889X",
+        "02635": "AB889X",
+        "02636": "AB889X",
+        "02637": "AB889X",
+        "02638": "AB889X",
+        "02639": "AB889X",
+        "02641": "AB889X",
+        "02642": "AB889X",
+        "02643": "AB889X",
+        "02644": "AB889X",
+        "02645": "AB889X",
+        "02646": "AB889X",
+        "02647": "AB889X",
+        "02648": "AB889X",
+        "02649": "AB889X",
+        "02650": "AB889X",
+        "02651": "AB889X",
+        "02652": "AB889X",
+        "02653": "AB889X",
+        "02655": "AB889X",
+        "02657": "AB889X",
+        "02659": "AB889X",
+        "02660": "AB889X",
+        "02661": "AB889X",
+        "02662": "AB889X",
+        "02663": "AB889X",
+        "02664": "AB889X",
+        "02666": "AB889X",
+        "02667": "AB889X",
+        "02668": "AB889X",
+        "02669": "AB889X",
+        "02670": "AB889X",
+        "02671": "AB889X",
+        "02672": "AB889X",
+        "02673": "AB889X",
+        "02675": "AB889X",
+        "02702": "AB889X",
+        "02703": "AB889X",
+        "02712": "AB889X",
+        "02713": "AB889X",
+        "02714": "AB889X",
+        "02715": "AB889X",
+        "02717": "AB889X",
+        "02718": "AB889X",
+        "02719": "AB889X",
+        "02720": "AB889X",
+        "02721": "AB889X",
+        "02722": "AB889X",
+        "02723": "AB889X",
+        "02724": "AB889X",
+        "02725": "AB889X",
+        "02726": "AB889X",
+        "02738": "AB889X",
+        "02739": "AB889X",
+        "02740": "AB889X",
+        "02741": "AB889X",
+        "02742": "AB889X",
+        "02743": "AB889X",
+        "02744": "AB889X",
+        "02745": "AB889X",
+        "02746": "AB889X",
+        "02747": "AB889X",
+        "02748": "AB889X",
+        "02760": "AB889X",
+        "02761": "AB889X",
+        "02762": "AB889X",
+        "02763": "AB889X",
+        "02764": "AB889X",
+        "02766": "AB889X",
+        "02767": "AB889X",
+        "02768": "AB889X",
+        "02769": "AB889X",
+        "02770": "AB889X",
+        "02771": "AB889X",
+        "02777": "AB889X",
+        "02779": "AB889X",
+        "02780": "AB889X",
+        "02783": "AB889X",
+        "02790": "AB889X",
+        "02791": "AB889X",
+        "02801": "AB889X",
+        "02802": "AB889X",
+        "02804": "AB889X",
+        "02806": "AB889X",
+        "02807": "AB889X",
+        "02808": "AB889X",
+        "02809": "AB889X",
+        "02812": "AB889X",
+        "02813": "AB889X",
+        "02814": "AB889X",
+        "02815": "AB889X",
+        "02816": "AB889X",
+        "02817": "AB889X",
+        "02818": "AB889X",
+        "02822": "AB889X",
+        "02823": "AB889X",
+        "02824": "AB889X",
+        "02825": "AB889X",
+        "02826": "AB889X",
+        "02827": "AB889X",
+        "02828": "AB889X",
+        "02829": "AB889X",
+        "02830": "AB889X",
+        "02831": "AB889X",
+        "02832": "AB889X",
+        "02833": "AB889X",
+        "02835": "AB889X",
+        "02836": "AB889X",
+        "02837": "AB889X",
+        "02838": "AB889X",
+        "02839": "AB889X",
+        "02840": "AB889X",
+        "02841": "AB889X",
+        "02842": "AB889X",
+        "02852": "AB889X",
+        "02854": "AB889X",
+        "02857": "AB889X",
+        "02858": "AB889X",
+        "02859": "AB889X",
+        "02860": "AB889X",
+        "02861": "AB889X",
+        "02862": "AB889X",
+        "02863": "AB889X",
+        "02864": "AB889X",
+        "02865": "AB889X",
+        "02871": "AB889X",
+        "02872": "AB889X",
+        "02873": "AB889X",
+        "02874": "AB889X",
+        "02875": "AB889X",
+        "02876": "AB889X",
+        "02877": "AB889X",
+        "02878": "AB889X",
+        "02879": "AB889X",
+        "02880": "AB889X",
+        "02881": "AB889X",
+        "02882": "AB889X",
+        "02883": "AB889X",
+        "02885": "AB889X",
+        "02886": "AB889X",
+        "02887": "AB889X",
+        "02888": "AB889X",
+        "02889": "AB889X",
+        "02891": "AB889X",
+        "02892": "AB889X",
+        "02893": "AB889X",
+        "02894": "AB889X",
+        "02895": "AB889X",
+        "02896": "AB889X",
+        "02898": "AB889X",
+        "02901": "AB889X",
+        "02902": "AB889X",
+        "02903": "AB889X",
+        "02904": "AB889X",
+        "02905": "AB889X",
+        "02906": "AB889X",
+        "02907": "AB889X",
+        "02908": "AB889X",
+        "02909": "AB889X",
+        "02910": "AB889X",
+        "02911": "AB889X",
+        "02912": "AB889X",
+        "02914": "AB889X",
+        "02915": "AB889X",
+        "02916": "AB889X",
+        "02917": "AB889X",
+        "02918": "AB889X",
+        "02919": "AB889X",
+        "02920": "AB889X",
+        "02921": "AB889X",
+        "02940": "AB889X",
+        "03031": "AB889X",
+        "03032": "AB889X",
+        "03033": "AB889X",
+        "03034": "AB889X",
+        "03036": "AB889X",
+        "03037": "AB889X",
+        "03038": "AB889X",
+        "03040": "AB889X",
+        "03041": "AB889X",
+        "03042": "AB889X",
+        "03043": "AB889X",
+        "03044": "AB889X",
+        "03045": "AB889X",
+        "03046": "AB889X",
+        "03047": "AB889X",
+        "03048": "AB889X",
+        "03049": "AB889X",
+        "03051": "AB889X",
+        "03052": "AB889X",
+        "03053": "AB889X",
+        "03054": "AB889X",
+        "03055": "AB889X",
+        "03057": "AB889X",
+        "03060": "AB889X",
+        "03061": "AB889X",
+        "03062": "AB889X",
+        "03063": "AB889X",
+        "03064": "AB889X",
+        "03070": "AB889X",
+        "03071": "AB889X",
+        "03073": "AB889X",
+        "03076": "AB889X",
+        "03077": "AB889X",
+        "03079": "AB889X",
+        "03082": "AB889X",
+        "03084": "AB889X",
+        "03086": "AB889X",
+        "03087": "AB889X",
+        "03101": "AB889X",
+        "03102": "AB889X",
+        "03103": "AB889X",
+        "03104": "AB889X",
+        "03105": "AB889X",
+        "03106": "AB889X",
+        "03107": "AB889X",
+        "03108": "AB889X",
+        "03109": "AB889X",
+        "03110": "AB889X",
+        "03111": "AB889X",
+        "03215": "AB889X",
+        "03216": "AB889X",
+        "03217": "AB889X",
+        "03218": "AB889X",
+        "03220": "AB889X",
+        "03221": "AB889X",
+        "03222": "AB889X",
+        "03223": "AB889X",
+        "03224": "AB889X",
+        "03225": "AB889X",
+        "03226": "AB889X",
+        "03227": "AB889X",
+        "03229": "AB889X",
+        "03230": "AB889X",
+        "03231": "AB889X",
+        "03233": "AB889X",
+        "03234": "AB889X",
+        "03235": "AB889X",
+        "03237": "AB889X",
+        "03238": "AB889X",
+        "03240": "AB889X",
+        "03241": "AB889X",
+        "03242": "AB889X",
+        "03243": "AB889X",
+        "03244": "AB889X",
+        "03245": "AB889X",
+        "03246": "AB889X",
+        "03247": "AB889X",
+        "03249": "AB889X",
+        "03251": "AB889X",
+        "03252": "AB889X",
+        "03253": "AB889X",
+        "03254": "AB889X",
+        "03255": "AB889X",
+        "03256": "AB889X",
+        "03257": "AB889X",
+        "03258": "AB889X",
+        "03259": "AB889X",
+        "03260": "AB889X",
+        "03261": "AB889X",
+        "03262": "AB889X",
+        "03263": "AB889X",
+        "03264": "AB889X",
+        "03266": "AB889X",
+        "03268": "AB889X",
+        "03269": "AB889X",
+        "03272": "AB889X",
+        "03273": "AB889X",
+        "03274": "AB889X",
+        "03275": "AB889X",
+        "03276": "AB889X",
+        "03278": "AB889X",
+        "03279": "AB889X",
+        "03280": "AB889X",
+        "03281": "AB889X",
+        "03282": "AB889X",
+        "03284": "AB889X",
+        "03287": "AB889X",
+        "03289": "AB889X",
+        "03290": "AB889X",
+        "03291": "AB889X",
+        "03293": "AB889X",
+        "03298": "AB889X",
+        "03299": "AB889X",
+        "03301": "AB889X",
+        "03302": "AB889X",
+        "03303": "AB889X",
+        "03304": "AB889X",
+        "03305": "AB889X",
+        "03307": "AB889X",
+        "03431": "AB889X",
+        "03435": "AB889X",
+        "03440": "AB889X",
+        "03441": "AB889X",
+        "03442": "AB889X",
+        "03443": "AB889X",
+        "03444": "AB889X",
+        "03445": "AB889X",
+        "03446": "AB889X",
+        "03447": "AB889X",
+        "03448": "AB889X",
+        "03449": "AB889X",
+        "03450": "AB889X",
+        "03451": "AB889X",
+        "03452": "AB889X",
+        "03455": "AB889X",
+        "03456": "AB889X",
+        "03457": "AB889X",
+        "03458": "AB889X",
+        "03461": "AB889X",
+        "03462": "AB889X",
+        "03464": "AB889X",
+        "03465": "AB889X",
+        "03466": "AB889X",
+        "03467": "AB889X",
+        "03468": "AB889X",
+        "03469": "AB889X",
+        "03470": "AB889X",
+        "03561": "AB889X",
+        "03570": "AB889X",
+        "03574": "AB889X",
+        "03575": "AB889X",
+        "03576": "AB889X",
+        "03579": "AB889X",
+        "03580": "AB889X",
+        "03581": "AB889X",
+        "03582": "AB889X",
+        "03583": "AB889X",
+        "03584": "AB889X",
+        "03585": "AB889X",
+        "03586": "AB889X",
+        "03588": "AB889X",
+        "03589": "AB889X",
+        "03590": "AB889X",
+        "03592": "AB889X",
+        "03593": "AB889X",
+        "03595": "AB889X",
+        "03597": "AB889X",
+        "03598": "AB889X",
+        "03601": "AB889X",
+        "03602": "AB889X",
+        "03603": "AB889X",
+        "03604": "AB889X",
+        "03605": "AB889X",
+        "03607": "AB889X",
+        "03608": "AB889X",
+        "03609": "AB889X",
+        "03740": "AB889X",
+        "03741": "AB889X",
+        "03743": "AB889X",
+        "03745": "AB889X",
+        "03746": "AB889X",
+        "03748": "AB889X",
+        "03749": "AB889X",
+        "03750": "AB889X",
+        "03751": "AB889X",
+        "03752": "AB889X",
+        "03753": "AB889X",
+        "03754": "AB889X",
+        "03755": "AB889X",
+        "03756": "AB889X",
+        "03765": "AB889X",
+        "03766": "AB889X",
+        "03768": "AB889X",
+        "03769": "AB889X",
+        "03770": "AB889X",
+        "03771": "AB889X",
+        "03773": "AB889X",
+        "03774": "AB889X",
+        "03777": "AB889X",
+        "03779": "AB889X",
+        "03780": "AB889X",
+        "03781": "AB889X",
+        "03782": "AB889X",
+        "03784": "AB889X",
+        "03785": "AB889X",
+        "03801": "AB889X",
+        "03802": "AB889X",
+        "03803": "AB889X",
+        "03804": "AB889X",
+        "03805": "AB889X",
+        "03809": "AB889X",
+        "03810": "AB889X",
+        "03811": "AB889X",
+        "03812": "AB889X",
+        "03813": "AB889X",
+        "03814": "AB889X",
+        "03815": "AB889X",
+        "03816": "AB889X",
+        "03817": "AB889X",
+        "03818": "AB889X",
+        "03819": "AB889X",
+        "03820": "AB889X",
+        "03821": "AB889X",
+        "03822": "AB889X",
+        "03823": "AB889X",
+        "03824": "AB889X",
+        "03825": "AB889X",
+        "03826": "AB889X",
+        "03827": "AB889X",
+        "03830": "AB889X",
+        "03832": "AB889X",
+        "03833": "AB889X",
+        "03835": "AB889X",
+        "03836": "AB889X",
+        "03837": "AB889X",
+        "03838": "AB889X",
+        "03839": "AB889X",
+        "03840": "AB889X",
+        "03841": "AB889X",
+        "03842": "AB889X",
+        "03843": "AB889X",
+        "03844": "AB889X",
+        "03845": "AB889X",
+        "03846": "AB889X",
+        "03847": "AB889X",
+        "03848": "AB889X",
+        "03849": "AB889X",
+        "03850": "AB889X",
+        "03851": "AB889X",
+        "03852": "AB889X",
+        "03853": "AB889X",
+        "03854": "AB889X",
+        "03855": "AB889X",
+        "03856": "AB889X",
+        "03857": "AB889X",
+        "03858": "AB889X",
+        "03859": "AB889X",
+        "03860": "AB889X",
+        "03861": "AB889X",
+        "03862": "AB889X",
+        "03864": "AB889X",
+        "03865": "AB889X",
+        "03866": "AB889X",
+        "03867": "AB889X",
+        "03868": "AB889X",
+        "03869": "AB889X",
+        "03870": "AB889X",
+        "03871": "AB889X",
+        "03872": "AB889X",
+        "03873": "AB889X",
+        "03874": "AB889X",
+        "03875": "AB889X",
+        "03878": "AB889X",
+        "03882": "AB889X",
+        "03883": "AB889X",
+        "03884": "AB889X",
+        "03885": "AB889X",
+        "03886": "AB889X",
+        "03887": "AB889X",
+        "03890": "AB889X",
+        "03894": "AB889X",
+        "03896": "AB889X",
+        "03897": "AB889X",
+        "03901": "AB889X",
+        "03902": "AB889X",
+        "03903": "AB889X",
+        "03904": "AB889X",
+        "03905": "AB889X",
+        "03906": "AB889X",
+        "03907": "AB889X",
+        "03908": "AB889X",
+        "03909": "AB889X",
+        "03910": "AB889X",
+        "03911": "AB889X",
+        "04001": "AB889X",
+        "04002": "AB889X",
+        "04003": "AB889X",
+        "04004": "AB889X",
+        "04005": "AB889X",
+        "04006": "AB889X",
+        "04007": "AB889X",
+        "04008": "AB889X",
+        "04009": "AB889X",
+        "04010": "AB889X",
+        "04011": "AB889X",
+        "04013": "AB889X",
+        "04014": "AB889X",
+        "04015": "AB889X",
+        "04016": "AB889X",
+        "04017": "AB889X",
+        "04019": "AB889X",
+        "04020": "AB889X",
+        "04021": "AB889X",
+        "04022": "AB889X",
+        "04024": "AB889X",
+        "04027": "AB889X",
+        "04028": "AB889X",
+        "04029": "AB889X",
+        "04030": "AB889X",
+        "04032": "AB889X",
+        "04033": "AB889X",
+        "04034": "AB889X",
+        "04037": "AB889X",
+        "04038": "AB889X",
+        "04039": "AB889X",
+        "04040": "AB889X",
+        "04041": "AB889X",
+        "04042": "AB889X",
+        "04043": "AB889X",
+        "04046": "AB889X",
+        "04047": "AB889X",
+        "04048": "AB889X",
+        "04049": "AB889X",
+        "04050": "AB889X",
+        "04051": "AB889X",
+        "04054": "AB889X",
+        "04055": "AB889X",
+        "04056": "AB889X",
+        "04057": "AB889X",
+        "04061": "AB889X",
+        "04062": "AB889X",
+        "04063": "AB889X",
+        "04064": "AB889X",
+        "04066": "AB889X",
+        "04068": "AB889X",
+        "04069": "AB889X",
+        "04070": "AB889X",
+        "04071": "AB889X",
+        "04072": "AB889X",
+        "04073": "AB889X",
+        "04074": "AB889X",
+        "04075": "AB889X",
+        "04076": "AB889X",
+        "04077": "AB889X",
+        "04078": "AB889X",
+        "04079": "AB889X",
+        "04082": "AB889X",
+        "04083": "AB889X",
+        "04084": "AB889X",
+        "04085": "AB889X",
+        "04086": "AB889X",
+        "04087": "AB889X",
+        "04088": "AB889X",
+        "04090": "AB889X",
+        "04091": "AB889X",
+        "04092": "AB889X",
+        "04093": "AB889X",
+        "04094": "AB889X",
+        "04095": "AB889X",
+        "04096": "AB889X",
+        "04097": "AB889X",
+        "04098": "AB889X",
+        "04101": "AB889X",
+        "04102": "AB889X",
+        "04103": "AB889X",
+        "04104": "AB889X",
+        "04105": "AB889X",
+        "04106": "AB889X",
+        "04107": "AB889X",
+        "04108": "AB889X",
+        "04109": "AB889X",
+        "04110": "AB889X",
+        "04112": "AB889X",
+        "04116": "AB889X",
+        "04122": "AB889X",
+        "04123": "AB889X",
+        "04124": "AB889X",
+        "04210": "AB889X",
+        "04211": "AB889X",
+        "04212": "AB889X",
+        "04216": "AB889X",
+        "04217": "AB889X",
+        "04219": "AB889X",
+        "04220": "AB889X",
+        "04221": "AB889X",
+        "04222": "AB889X",
+        "04223": "AB889X",
+        "04224": "AB889X",
+        "04225": "AB889X",
+        "04226": "AB889X",
+        "04227": "AB889X",
+        "04228": "AB889X",
+        "04230": "AB889X",
+        "04231": "AB889X",
+        "04234": "AB889X",
+        "04236": "AB889X",
+        "04237": "AB889X",
+        "04238": "AB889X",
+        "04239": "AB889X",
+        "04240": "AB889X",
+        "04241": "AB889X",
+        "04243": "AB889X",
+        "04250": "AB889X",
+        "04252": "AB889X",
+        "04253": "AB889X",
+        "04254": "AB889X",
+        "04255": "AB889X",
+        "04256": "AB889X",
+        "04257": "AB889X",
+        "04258": "AB889X",
+        "04259": "AB889X",
+        "04260": "AB889X",
+        "04261": "AB889X",
+        "04262": "AB889X",
+        "04263": "AB889X",
+        "04265": "AB889X",
+        "04266": "AB889X",
+        "04267": "AB889X",
+        "04268": "AB889X",
+        "04270": "AB889X",
+        "04271": "AB889X",
+        "04274": "AB889X",
+        "04275": "AB889X",
+        "04276": "AB889X",
+        "04278": "AB889X",
+        "04280": "AB889X",
+        "04281": "AB889X",
+        "04282": "AB889X",
+        "04284": "AB889X",
+        "04285": "AB889X",
+        "04286": "AB889X",
+        "04287": "AB889X",
+        "04288": "AB889X",
+        "04289": "AB889X",
+        "04290": "AB889X",
+        "04291": "AB889X",
+        "04292": "AB889X",
+        "04294": "AB889X",
+        "04330": "AB889X",
+        "04332": "AB889X",
+        "04333": "AB889X",
+        "04336": "AB889X",
+        "04338": "AB889X",
+        "04341": "AB889X",
+        "04342": "AB889X",
+        "04343": "AB889X",
+        "04344": "AB889X",
+        "04345": "AB889X",
+        "04346": "AB889X",
+        "04347": "AB889X",
+        "04348": "AB889X",
+        "04349": "AB889X",
+        "04350": "AB889X",
+        "04351": "AB889X",
+        "04352": "AB889X",
+        "04353": "AB889X",
+        "04354": "AB889X",
+        "04355": "AB889X",
+        "04357": "AB889X",
+        "04358": "AB889X",
+        "04359": "AB889X",
+        "04360": "AB889X",
+        "04363": "AB889X",
+        "04364": "AB889X",
+        "04401": "AB889X",
+        "04402": "AB889X",
+        "04406": "AB889X",
+        "04408": "AB889X",
+        "04410": "AB889X",
+        "04411": "AB889X",
+        "04412": "AB889X",
+        "04413": "AB889X",
+        "04414": "AB889X",
+        "04415": "AB889X",
+        "04416": "AB889X",
+        "04417": "AB889X",
+        "04418": "AB889X",
+        "04419": "AB889X",
+        "04420": "AB889X",
+        "04421": "AB889X",
+        "04422": "AB889X",
+        "04424": "AB889X",
+        "04426": "AB889X",
+        "04427": "AB889X",
+        "04428": "AB889X",
+        "04429": "AB889X",
+        "04430": "AB889X",
+        "04431": "AB889X",
+        "04434": "AB889X",
+        "04435": "AB889X",
+        "04438": "AB889X",
+        "04441": "AB889X",
+        "04442": "AB889X",
+        "04443": "AB889X",
+        "04444": "AB889X",
+        "04448": "AB889X",
+        "04449": "AB889X",
+        "04450": "AB889X",
+        "04451": "AB889X",
+        "04453": "AB889X",
+        "04454": "AB889X",
+        "04455": "AB889X",
+        "04456": "AB889X",
+        "04457": "AB889X",
+        "04459": "AB889X",
+        "04460": "AB889X",
+        "04461": "AB889X",
+        "04462": "AB889X",
+        "04463": "AB889X",
+        "04464": "AB889X",
+        "04467": "AB889X",
+        "04468": "AB889X",
+        "04469": "AB889X",
+        "04471": "AB889X",
+        "04472": "AB889X",
+        "04473": "AB889X",
+        "04474": "AB889X",
+        "04475": "AB889X",
+        "04476": "AB889X",
+        "04478": "AB889X",
+        "04479": "AB889X",
+        "04481": "AB889X",
+        "04485": "AB889X",
+        "04487": "AB889X",
+        "04488": "AB889X",
+        "04489": "AB889X",
+        "04490": "AB889X",
+        "04491": "AB889X",
+        "04492": "AB889X",
+        "04493": "AB889X",
+        "04495": "AB889X",
+        "04496": "AB889X",
+        "04497": "AB889X",
+        "04530": "AB889X",
+        "04535": "AB889X",
+        "04537": "AB889X",
+        "04538": "AB889X",
+        "04539": "AB889X",
+        "04541": "AB889X",
+        "04543": "AB889X",
+        "04544": "AB889X",
+        "04547": "AB889X",
+        "04548": "AB889X",
+        "04549": "AB889X",
+        "04551": "AB889X",
+        "04553": "AB889X",
+        "04554": "AB889X",
+        "04555": "AB889X",
+        "04556": "AB889X",
+        "04558": "AB889X",
+        "04562": "AB889X",
+        "04563": "AB889X",
+        "04564": "AB889X",
+        "04565": "AB889X",
+        "04568": "AB889X",
+        "04570": "AB889X",
+        "04571": "AB889X",
+        "04572": "AB889X",
+        "04573": "AB889X",
+        "04574": "AB889X",
+        "04575": "AB889X",
+        "04576": "AB889X",
+        "04578": "AB889X",
+        "04579": "AB889X",
+        "04605": "AB889X",
+        "04606": "AB889X",
+        "04607": "AB889X",
+        "04609": "AB889X",
+        "04611": "AB889X",
+        "04612": "AB889X",
+        "04613": "AB889X",
+        "04614": "AB889X",
+        "04616": "AB889X",
+        "04617": "AB889X",
+        "04619": "AB889X",
+        "04622": "AB889X",
+        "04623": "AB889X",
+        "04624": "AB889X",
+        "04625": "AB889X",
+        "04626": "AB889X",
+        "04627": "AB889X",
+        "04628": "AB889X",
+        "04629": "AB889X",
+        "04630": "AB889X",
+        "04631": "AB889X",
+        "04634": "AB889X",
+        "04635": "AB889X",
+        "04637": "AB889X",
+        "04640": "AB889X",
+        "04642": "AB889X",
+        "04643": "AB889X",
+        "04644": "AB889X",
+        "04645": "AB889X",
+        "04646": "AB889X",
+        "04648": "AB889X",
+        "04649": "AB889X",
+        "04650": "AB889X",
+        "04652": "AB889X",
+        "04653": "AB889X",
+        "04654": "AB889X",
+        "04655": "AB889X",
+        "04657": "AB889X",
+        "04658": "AB889X",
+        "04660": "AB889X",
+        "04662": "AB889X",
+        "04664": "AB889X",
+        "04666": "AB889X",
+        "04667": "AB889X",
+        "04668": "AB889X",
+        "04669": "AB889X",
+        "04671": "AB889X",
+        "04672": "AB889X",
+        "04673": "AB889X",
+        "04674": "AB889X",
+        "04675": "AB889X",
+        "04676": "AB889X",
+        "04677": "AB889X",
+        "04679": "AB889X",
+        "04680": "AB889X",
+        "04681": "AB889X",
+        "04683": "AB889X",
+        "04684": "AB889X",
+        "04685": "AB889X",
+        "04686": "AB889X",
+        "04691": "AB889X",
+        "04693": "AB889X",
+        "04694": "AB889X",
+        "04730": "AB889X",
+        "04732": "AB889X",
+        "04733": "AB889X",
+        "04734": "AB889X",
+        "04735": "AB889X",
+        "04736": "AB889X",
+        "04737": "AB889X",
+        "04738": "AB889X",
+        "04739": "AB889X",
+        "04740": "AB889X",
+        "04741": "AB889X",
+        "04742": "AB889X",
+        "04743": "AB889X",
+        "04744": "AB889X",
+        "04745": "AB889X",
+        "04746": "AB889X",
+        "04747": "AB889X",
+        "04750": "AB889X",
+        "04751": "AB889X",
+        "04756": "AB889X",
+        "04757": "AB889X",
+        "04758": "AB889X",
+        "04760": "AB889X",
+        "04761": "AB889X",
+        "04762": "AB889X",
+        "04763": "AB889X",
+        "04764": "AB889X",
+        "04765": "AB889X",
+        "04766": "AB889X",
+        "04768": "AB889X",
+        "04769": "AB889X",
+        "04772": "AB889X",
+        "04773": "AB889X",
+        "04774": "AB889X",
+        "04775": "AB889X",
+        "04776": "AB889X",
+        "04777": "AB889X",
+        "04779": "AB889X",
+        "04780": "AB889X",
+        "04781": "AB889X",
+        "04783": "AB889X",
+        "04785": "AB889X",
+        "04786": "AB889X",
+        "04787": "AB889X",
+        "04841": "AB889X",
+        "04843": "AB889X",
+        "04846": "AB889X",
+        "04847": "AB889X",
+        "04848": "AB889X",
+        "04849": "AB889X",
+        "04850": "AB889X",
+        "04851": "AB889X",
+        "04852": "AB889X",
+        "04853": "AB889X",
+        "04854": "AB889X",
+        "04855": "AB889X",
+        "04856": "AB889X",
+        "04858": "AB889X",
+        "04859": "AB889X",
+        "04860": "AB889X",
+        "04861": "AB889X",
+        "04862": "AB889X",
+        "04863": "AB889X",
+        "04864": "AB889X",
+        "04865": "AB889X",
+        "04901": "AB889X",
+        "04903": "AB889X",
+        "04910": "AB889X",
+        "04911": "AB889X",
+        "04912": "AB889X",
+        "04915": "AB889X",
+        "04917": "AB889X",
+        "04918": "AB889X",
+        "04920": "AB889X",
+        "04921": "AB889X",
+        "04922": "AB889X",
+        "04923": "AB889X",
+        "04924": "AB889X",
+        "04925": "AB889X",
+        "04926": "AB889X",
+        "04927": "AB889X",
+        "04928": "AB889X",
+        "04929": "AB889X",
+        "04930": "AB889X",
+        "04932": "AB889X",
+        "04933": "AB889X",
+        "04935": "AB889X",
+        "04936": "AB889X",
+        "04937": "AB889X",
+        "04938": "AB889X",
+        "04939": "AB889X",
+        "04940": "AB889X",
+        "04941": "AB889X",
+        "04942": "AB889X",
+        "04943": "AB889X",
+        "04944": "AB889X",
+        "04945": "AB889X",
+        "04947": "AB889X",
+        "04949": "AB889X",
+        "04950": "AB889X",
+        "04951": "AB889X",
+        "04952": "AB889X",
+        "04953": "AB889X",
+        "04954": "AB889X",
+        "04955": "AB889X",
+        "04956": "AB889X",
+        "04957": "AB889X",
+        "04958": "AB889X",
+        "04961": "AB889X",
+        "04962": "AB889X",
+        "04963": "AB889X",
+        "04964": "AB889X",
+        "04965": "AB889X",
+        "04966": "AB889X",
+        "04967": "AB889X",
+        "04969": "AB889X",
+        "04970": "AB889X",
+        "04971": "AB889X",
+        "04972": "AB889X",
+        "04973": "AB889X",
+        "04974": "AB889X",
+        "04975": "AB889X",
+        "04976": "AB889X",
+        "04978": "AB889X",
+        "04979": "AB889X",
+        "04981": "AB889X",
+        "04982": "AB889X",
+        "04983": "AB889X",
+        "04984": "AB889X",
+        "04985": "AB889X",
+        "04986": "AB889X",
+        "04987": "AB889X",
+        "04988": "AB889X",
+        "04989": "AB889X",
+        "04992": "AB889X",
+        "05001": "AB889X",
+        "05009": "AB889X",
+        "05030": "AB889X",
+        "05031": "AB889X",
+        "05032": "AB889X",
+        "05033": "AB889X",
+        "05034": "AB889X",
+        "05035": "AB889X",
+        "05036": "AB889X",
+        "05037": "AB889X",
+        "05038": "AB889X",
+        "05039": "AB889X",
+        "05040": "AB889X",
+        "05041": "AB889X",
+        "05042": "AB889X",
+        "05043": "AB889X",
+        "05045": "AB889X",
+        "05046": "AB889X",
+        "05047": "AB889X",
+        "05048": "AB889X",
+        "05049": "AB889X",
+        "05050": "AB889X",
+        "05051": "AB889X",
+        "05052": "AB889X",
+        "05053": "AB889X",
+        "05054": "AB889X",
+        "05055": "AB889X",
+        "05056": "AB889X",
+        "05058": "AB889X",
+        "05059": "AB889X",
+        "05060": "AB889X",
+        "05061": "AB889X",
+        "05062": "AB889X",
+        "05065": "AB889X",
+        "05067": "AB889X",
+        "05068": "AB889X",
+        "05069": "AB889X",
+        "05070": "AB889X",
+        "05071": "AB889X",
+        "05072": "AB889X",
+        "05073": "AB889X",
+        "05074": "AB889X",
+        "05075": "AB889X",
+        "05076": "AB889X",
+        "05077": "AB889X",
+        "05079": "AB889X",
+        "05081": "AB889X",
+        "05083": "AB889X",
+        "05084": "AB889X",
+        "05085": "AB889X",
+        "05086": "AB889X",
+        "05088": "AB889X",
+        "05089": "AB889X",
+        "05091": "AB889X",
+        "05101": "AB889X",
+        "05141": "AB889X",
+        "05142": "AB889X",
+        "05143": "AB889X",
+        "05144": "AB889X",
+        "05146": "AB889X",
+        "05148": "AB889X",
+        "05149": "AB889X",
+        "05150": "AB889X",
+        "05151": "AB889X",
+        "05152": "AB889X",
+        "05153": "AB889X",
+        "05154": "AB889X",
+        "05155": "AB889X",
+        "05156": "AB889X",
+        "05158": "AB889X",
+        "05159": "AB889X",
+        "05161": "AB889X",
+        "05201": "AB889X",
+        "05250": "AB889X",
+        "05251": "AB889X",
+        "05252": "AB889X",
+        "05253": "AB889X",
+        "05254": "AB889X",
+        "05255": "AB889X",
+        "05257": "AB889X",
+        "05260": "AB889X",
+        "05261": "AB889X",
+        "05262": "AB889X",
+        "05301": "AB889X",
+        "05302": "AB889X",
+        "05303": "AB889X",
+        "05304": "AB889X",
+        "05340": "AB889X",
+        "05341": "AB889X",
+        "05342": "AB889X",
+        "05343": "AB889X",
+        "05344": "AB889X",
+        "05345": "AB889X",
+        "05346": "AB889X",
+        "05350": "AB889X",
+        "05351": "AB889X",
+        "05352": "AB889X",
+        "05353": "AB889X",
+        "05354": "AB889X",
+        "05355": "AB889X",
+        "05356": "AB889X",
+        "05357": "AB889X",
+        "05358": "AB889X",
+        "05359": "AB889X",
+        "05360": "AB889X",
+        "05361": "AB889X",
+        "05362": "AB889X",
+        "05363": "AB889X",
+        "05401": "AB889X",
+        "05402": "AB889X",
+        "05403": "AB889X",
+        "05404": "AB889X",
+        "05405": "AB889X",
+        "05406": "AB889X",
+        "05407": "AB889X",
+        "05408": "AB889X",
+        "05439": "AB889X",
+        "05440": "AB889X",
+        "05441": "AB889X",
+        "05442": "AB889X",
+        "05443": "AB889X",
+        "05444": "AB889X",
+        "05445": "AB889X",
+        "05446": "AB889X",
+        "05447": "AB889X",
+        "05448": "AB889X",
+        "05449": "AB889X",
+        "05450": "AB889X",
+        "05451": "AB889X",
+        "05452": "AB889X",
+        "05453": "AB889X",
+        "05454": "AB889X",
+        "05455": "AB889X",
+        "05456": "AB889X",
+        "05457": "AB889X",
+        "05458": "AB889X",
+        "05459": "AB889X",
+        "05460": "AB889X",
+        "05461": "AB889X",
+        "05462": "AB889X",
+        "05463": "AB889X",
+        "05464": "AB889X",
+        "05465": "AB889X",
+        "05466": "AB889X",
+        "05468": "AB889X",
+        "05469": "AB889X",
+        "05470": "AB889X",
+        "05471": "AB889X",
+        "05472": "AB889X",
+        "05473": "AB889X",
+        "05474": "AB889X",
+        "05476": "AB889X",
+        "05477": "AB889X",
+        "05478": "AB889X",
+        "05479": "AB889X",
+        "05481": "AB889X",
+        "05482": "AB889X",
+        "05483": "AB889X",
+        "05485": "AB889X",
+        "05486": "AB889X",
+        "05487": "AB889X",
+        "05488": "AB889X",
+        "05489": "AB889X",
+        "05490": "AB889X",
+        "05491": "AB889X",
+        "05492": "AB889X",
+        "05494": "AB889X",
+        "05495": "AB889X",
+        "05501": "AB889X",
+        "05544": "AB889X",
+        "05601": "AB889X",
+        "05602": "AB889X",
+        "05603": "AB889X",
+        "05604": "AB889X",
+        "05609": "AB889X",
+        "05620": "AB889X",
+        "05633": "AB889X",
+        "05640": "AB889X",
+        "05641": "AB889X",
+        "05647": "AB889X",
+        "05648": "AB889X",
+        "05649": "AB889X",
+        "05650": "AB889X",
+        "05651": "AB889X",
+        "05652": "AB889X",
+        "05653": "AB889X",
+        "05654": "AB889X",
+        "05655": "AB889X",
+        "05656": "AB889X",
+        "05657": "AB889X",
+        "05658": "AB889X",
+        "05660": "AB889X",
+        "05661": "AB889X",
+        "05662": "AB889X",
+        "05663": "AB889X",
+        "05664": "AB889X",
+        "05665": "AB889X",
+        "05666": "AB889X",
+        "05667": "AB889X",
+        "05669": "AB889X",
+        "05670": "AB889X",
+        "05671": "AB889X",
+        "05672": "AB889X",
+        "05673": "AB889X",
+        "05674": "AB889X",
+        "05675": "AB889X",
+        "05676": "AB889X",
+        "05677": "AB889X",
+        "05678": "AB889X",
+        "05679": "AB889X",
+        "05680": "AB889X",
+        "05681": "AB889X",
+        "05682": "AB889X",
+        "05701": "AB889X",
+        "05702": "AB889X",
+        "05730": "AB889X",
+        "05731": "AB889X",
+        "05732": "AB889X",
+        "05733": "AB889X",
+        "05734": "AB889X",
+        "05735": "AB889X",
+        "05736": "AB889X",
+        "05737": "AB889X",
+        "05738": "AB889X",
+        "05739": "AB889X",
+        "05740": "AB889X",
+        "05741": "AB889X",
+        "05742": "AB889X",
+        "05743": "AB889X",
+        "05744": "AB889X",
+        "05745": "AB889X",
+        "05746": "AB889X",
+        "05747": "AB889X",
+        "05748": "AB889X",
+        "05750": "AB889X",
+        "05751": "AB889X",
+        "05753": "AB889X",
+        "05757": "AB889X",
+        "05758": "AB889X",
+        "05759": "AB889X",
+        "05760": "AB889X",
+        "05761": "AB889X",
+        "05762": "AB889X",
+        "05763": "AB889X",
+        "05764": "AB889X",
+        "05765": "AB889X",
+        "05766": "AB889X",
+        "05767": "AB889X",
+        "05768": "AB889X",
+        "05769": "AB889X",
+        "05770": "AB889X",
+        "05772": "AB889X",
+        "05773": "AB889X",
+        "05774": "AB889X",
+        "05775": "AB889X",
+        "05776": "AB889X",
+        "05777": "AB889X",
+        "05778": "AB889X",
+        "05819": "AB889X",
+        "05820": "AB889X",
+        "05821": "AB889X",
+        "05822": "AB889X",
+        "05823": "AB889X",
+        "05824": "AB889X",
+        "05825": "AB889X",
+        "05826": "AB889X",
+        "05827": "AB889X",
+        "05828": "AB889X",
+        "05829": "AB889X",
+        "05830": "AB889X",
+        "05832": "AB889X",
+        "05833": "AB889X",
+        "05836": "AB889X",
+        "05837": "AB889X",
+        "05838": "AB889X",
+        "05839": "AB889X",
+        "05840": "AB889X",
+        "05841": "AB889X",
+        "05842": "AB889X",
+        "05843": "AB889X",
+        "05845": "AB889X",
+        "05846": "AB889X",
+        "05847": "AB889X",
+        "05848": "AB889X",
+        "05849": "AB889X",
+        "05850": "AB889X",
+        "05851": "AB889X",
+        "05853": "AB889X",
+        "05855": "AB889X",
+        "05857": "AB889X",
+        "05858": "AB889X",
+        "05859": "AB889X",
+        "05860": "AB889X",
+        "05861": "AB889X",
+        "05862": "AB889X",
+        "05863": "AB889X",
+        "05866": "AB889X",
+        "05867": "AB889X",
+        "05868": "AB889X",
+        "05871": "AB889X",
+        "05872": "AB889X",
+        "05873": "AB889X",
+        "05874": "AB889X",
+        "05875": "AB889X",
+        "05901": "AB889X",
+        "05902": "AB889X",
+        "05903": "AB889X",
+        "05904": "AB889X",
+        "05905": "AB889X",
+        "05906": "AB889X",
+        "05907": "AB889X",
+        "06001": "AB890X",
+        "06002": "AB890X",
+        "06006": "AB890X",
+        "06010": "AB890X",
+        "06011": "AB890X",
+        "06013": "AB890X",
+        "06016": "AB890X",
+        "06018": "AB890X",
+        "06019": "AB890X",
+        "06020": "AB890X",
+        "06021": "AB890X",
+        "06022": "AB890X",
+        "06023": "AB890X",
+        "06024": "AB890X",
+        "06025": "AB890X",
+        "06026": "AB890X",
+        "06027": "AB890X",
+        "06028": "AB890X",
+        "06029": "AB890X",
+        "06030": "AB890X",
+        "06031": "AB890X",
+        "06032": "AB890X",
+        "06033": "AB890X",
+        "06034": "AB890X",
+        "06035": "AB890X",
+        "06037": "AB890X",
+        "06039": "AB890X",
+        "06040": "AB890X",
+        "06041": "AB890X",
+        "06042": "AB890X",
+        "06043": "AB890X",
+        "06045": "AB890X",
+        "06050": "AB890X",
+        "06051": "AB890X",
+        "06052": "AB890X",
+        "06053": "AB890X",
+        "06057": "AB890X",
+        "06058": "AB890X",
+        "06059": "AB890X",
+        "06060": "AB890X",
+        "06061": "AB890X",
+        "06062": "AB890X",
+        "06063": "AB890X",
+        "06064": "AB890X",
+        "06065": "AB890X",
+        "06066": "AB890X",
+        "06067": "AB890X",
+        "06068": "AB890X",
+        "06069": "AB890X",
+        "06070": "AB890X",
+        "06071": "AB890X",
+        "06072": "AB890X",
+        "06073": "AB890X",
+        "06074": "AB890X",
+        "06075": "AB890X",
+        "06076": "AB890X",
+        "06077": "AB890X",
+        "06078": "AB890X",
+        "06079": "AB890X",
+        "06080": "AB890X",
+        "06081": "AB890X",
+        "06082": "AB890X",
+        "06083": "AB890X",
+        "06084": "AB890X",
+        "06085": "AB890X",
+        "06087": "AB890X",
+        "06088": "AB890X",
+        "06089": "AB890X",
+        "06090": "AB890X",
+        "06091": "AB890X",
+        "06092": "AB890X",
+        "06093": "AB890X",
+        "06094": "AB890X",
+        "06095": "AB890X",
+        "06096": "AB890X",
+        "06098": "AB890X",
+        "06101": "AB890X",
+        "06102": "AB890X",
+        "06103": "AB890X",
+        "06104": "AB890X",
+        "06105": "AB890X",
+        "06106": "AB890X",
+        "06107": "AB890X",
+        "06108": "AB890X",
+        "06109": "AB890X",
+        "06110": "AB890X",
+        "06111": "AB890X",
+        "06112": "AB890X",
+        "06114": "AB890X",
+        "06115": "AB890X",
+        "06117": "AB890X",
+        "06118": "AB890X",
+        "06119": "AB890X",
+        "06120": "AB890X",
+        "06123": "AB890X",
+        "06126": "AB890X",
+        "06127": "AB890X",
+        "06128": "AB890X",
+        "06129": "AB890X",
+        "06131": "AB890X",
+        "06132": "AB890X",
+        "06133": "AB890X",
+        "06134": "AB890X",
+        "06137": "AB890X",
+        "06138": "AB890X",
+        "06140": "AB890X",
+        "06141": "AB890X",
+        "06142": "AB890X",
+        "06143": "AB890X",
+        "06144": "AB890X",
+        "06145": "AB890X",
+        "06146": "AB890X",
+        "06147": "AB890X",
+        "06150": "AB890X",
+        "06151": "AB890X",
+        "06152": "AB890X",
+        "06153": "AB890X",
+        "06154": "AB890X",
+        "06155": "AB890X",
+        "06156": "AB890X",
+        "06160": "AB890X",
+        "06161": "AB890X",
+        "06167": "AB890X",
+        "06176": "AB890X",
+        "06180": "AB890X",
+        "06183": "AB890X",
+        "06199": "AB890X",
+        "06226": "AB890X",
+        "06230": "AB890X",
+        "06231": "AB890X",
+        "06232": "AB890X",
+        "06233": "AB890X",
+        "06234": "AB890X",
+        "06235": "AB890X",
+        "06237": "AB890X",
+        "06238": "AB890X",
+        "06239": "AB890X",
+        "06241": "AB890X",
+        "06242": "AB890X",
+        "06243": "AB890X",
+        "06244": "AB890X",
+        "06245": "AB890X",
+        "06246": "AB890X",
+        "06247": "AB890X",
+        "06248": "AB890X",
+        "06249": "AB890X",
+        "06250": "AB890X",
+        "06251": "AB890X",
+        "06254": "AB890X",
+        "06255": "AB890X",
+        "06256": "AB890X",
+        "06258": "AB890X",
+        "06259": "AB890X",
+        "06260": "AB890X",
+        "06262": "AB890X",
+        "06263": "AB890X",
+        "06264": "AB890X",
+        "06265": "AB890X",
+        "06266": "AB890X",
+        "06267": "AB890X",
+        "06268": "AB890X",
+        "06269": "AB890X",
+        "06277": "AB890X",
+        "06278": "AB890X",
+        "06279": "AB890X",
+        "06280": "AB890X",
+        "06281": "AB890X",
+        "06282": "AB890X",
+        "06320": "AB890X",
+        "06330": "AB890X",
+        "06331": "AB890X",
+        "06332": "AB890X",
+        "06333": "AB890X",
+        "06334": "AB890X",
+        "06335": "AB890X",
+        "06336": "AB890X",
+        "06338": "AB890X",
+        "06339": "AB890X",
+        "06340": "AB890X",
+        "06349": "AB890X",
+        "06350": "AB890X",
+        "06351": "AB890X",
+        "06353": "AB890X",
+        "06354": "AB890X",
+        "06355": "AB890X",
+        "06357": "AB890X",
+        "06359": "AB890X",
+        "06360": "AB890X",
+        "06365": "AB890X",
+        "06370": "AB890X",
+        "06371": "AB890X",
+        "06372": "AB890X",
+        "06373": "AB890X",
+        "06374": "AB890X",
+        "06375": "AB890X",
+        "06376": "AB890X",
+        "06377": "AB890X",
+        "06378": "AB890X",
+        "06379": "AB890X",
+        "06380": "AB890X",
+        "06382": "AB890X",
+        "06383": "AB890X",
+        "06384": "AB890X",
+        "06385": "AB890X",
+        "06386": "AB890X",
+        "06387": "AB890X",
+        "06388": "AB890X",
+        "06389": "AB890X",
+        "06390": "AB890X",
+        "06401": "AB890X",
+        "06403": "AB890X",
+        "06404": "AB890X",
+        "06405": "AB890X",
+        "06408": "AB890X",
+        "06409": "AB890X",
+        "06410": "AB890X",
+        "06411": "AB890X",
+        "06412": "AB890X",
+        "06413": "AB890X",
+        "06414": "AB890X",
+        "06415": "AB890X",
+        "06416": "AB890X",
+        "06417": "AB890X",
+        "06418": "AB890X",
+        "06419": "AB890X",
+        "06420": "AB890X",
+        "06422": "AB890X",
+        "06423": "AB890X",
+        "06424": "AB890X",
+        "06426": "AB890X",
+        "06437": "AB890X",
+        "06438": "AB890X",
+        "06439": "AB890X",
+        "06440": "AB890X",
+        "06441": "AB890X",
+        "06442": "AB890X",
+        "06443": "AB890X",
+        "06444": "AB890X",
+        "06447": "AB890X",
+        "06450": "AB890X",
+        "06451": "AB890X",
+        "06454": "AB890X",
+        "06455": "AB890X",
+        "06456": "AB890X",
+        "06457": "AB890X",
+        "06459": "AB890X",
+        "06460": "AB890X",
+        "06461": "AB890X",
+        "06467": "AB890X",
+        "06468": "AB890X",
+        "06469": "AB890X",
+        "06470": "AB890X",
+        "06471": "AB890X",
+        "06472": "AB890X",
+        "06473": "AB890X",
+        "06474": "AB890X",
+        "06475": "AB890X",
+        "06477": "AB890X",
+        "06478": "AB890X",
+        "06479": "AB890X",
+        "06480": "AB890X",
+        "06481": "AB890X",
+        "06482": "AB890X",
+        "06483": "AB890X",
+        "06484": "AB890X",
+        "06487": "AB890X",
+        "06488": "AB890X",
+        "06489": "AB890X",
+        "06491": "AB890X",
+        "06492": "AB890X",
+        "06493": "AB890X",
+        "06494": "AB890X",
+        "06495": "AB890X",
+        "06497": "AB890X",
+        "06498": "AB890X",
+        "06501": "AB890X",
+        "06502": "AB890X",
+        "06503": "AB890X",
+        "06504": "AB890X",
+        "06505": "AB890X",
+        "06506": "AB890X",
+        "06507": "AB890X",
+        "06508": "AB890X",
+        "06509": "AB890X",
+        "06510": "AB890X",
+        "06511": "AB890X",
+        "06512": "AB890X",
+        "06513": "AB890X",
+        "06514": "AB890X",
+        "06515": "AB890X",
+        "06516": "AB890X",
+        "06517": "AB890X",
+        "06518": "AB890X",
+        "06519": "AB890X",
+        "06520": "AB890X",
+        "06521": "AB890X",
+        "06524": "AB890X",
+        "06525": "AB890X",
+        "06530": "AB890X",
+        "06531": "AB890X",
+        "06532": "AB890X",
+        "06533": "AB890X",
+        "06534": "AB890X",
+        "06535": "AB890X",
+        "06536": "AB890X",
+        "06537": "AB890X",
+        "06538": "AB890X",
+        "06540": "AB890X",
+        "06601": "AB890X",
+        "06602": "AB890X",
+        "06604": "AB890X",
+        "06605": "AB890X",
+        "06606": "AB890X",
+        "06607": "AB890X",
+        "06608": "AB890X",
+        "06610": "AB890X",
+        "06611": "AB890X",
+        "06612": "AB890X",
+        "06614": "AB890X",
+        "06615": "AB890X",
+        "06650": "AB890X",
+        "06673": "AB890X",
+        "06699": "AB890X",
+        "06701": "AB890X",
+        "06702": "AB890X",
+        "06703": "AB890X",
+        "06704": "AB890X",
+        "06705": "AB890X",
+        "06706": "AB890X",
+        "06708": "AB890X",
+        "06710": "AB890X",
+        "06712": "AB890X",
+        "06716": "AB890X",
+        "06720": "AB890X",
+        "06721": "AB890X",
+        "06722": "AB890X",
+        "06723": "AB890X",
+        "06724": "AB890X",
+        "06725": "AB890X",
+        "06726": "AB890X",
+        "06749": "AB890X",
+        "06750": "AB890X",
+        "06751": "AB890X",
+        "06752": "AB890X",
+        "06753": "AB890X",
+        "06754": "AB890X",
+        "06755": "AB890X",
+        "06756": "AB890X",
+        "06757": "AB890X",
+        "06758": "AB890X",
+        "06759": "AB890X",
+        "06762": "AB890X",
+        "06763": "AB890X",
+        "06770": "AB890X",
+        "06776": "AB890X",
+        "06777": "AB890X",
+        "06778": "AB890X",
+        "06779": "AB890X",
+        "06781": "AB890X",
+        "06782": "AB890X",
+        "06783": "AB890X",
+        "06784": "AB890X",
+        "06785": "AB890X",
+        "06786": "AB890X",
+        "06787": "AB890X",
+        "06790": "AB890X",
+        "06791": "AB890X",
+        "06792": "AB890X",
+        "06793": "AB890X",
+        "06794": "AB890X",
+        "06795": "AB890X",
+        "06796": "AB890X",
+        "06798": "AB890X",
+        "06801": "AB890X",
+        "06804": "AB890X",
+        "06807": "AB890X",
+        "06810": "AB890X",
+        "06811": "AB890X",
+        "06812": "AB890X",
+        "06813": "AB890X",
+        "06814": "AB890X",
+        "06816": "AB890X",
+        "06817": "AB890X",
+        "06820": "AB890X",
+        "06824": "AB890X",
+        "06825": "AB890X",
+        "06828": "AB890X",
+        "06829": "AB890X",
+        "06830": "AB890X",
+        "06831": "AB890X",
+        "06832": "AB890X",
+        "06836": "AB890X",
+        "06838": "AB890X",
+        "06840": "AB890X",
+        "06842": "AB890X",
+        "06850": "AB890X",
+        "06851": "AB890X",
+        "06852": "AB890X",
+        "06853": "AB890X",
+        "06854": "AB890X",
+        "06855": "AB890X",
+        "06856": "AB890X",
+        "06857": "AB890X",
+        "06858": "AB890X",
+        "06859": "AB890X",
+        "06860": "AB890X",
+        "06870": "AB890X",
+        "06875": "AB890X",
+        "06876": "AB890X",
+        "06877": "AB890X",
+        "06878": "AB890X",
+        "06879": "AB890X",
+        "06880": "AB890X",
+        "06881": "AB890X",
+        "06883": "AB890X",
+        "06888": "AB890X",
+        "06889": "AB890X",
+        "06890": "AB890X",
+        "06896": "AB890X",
+        "06897": "AB890X",
+        "06901": "AB890X",
+        "06902": "AB890X",
+        "06903": "AB890X",
+        "06904": "AB890X",
+        "06905": "AB890X",
+        "06906": "AB890X",
+        "06907": "AB890X",
+        "06910": "AB890X",
+        "06911": "AB890X",
+        "06912": "AB890X",
+        "06913": "AB890X",
+        "06914": "AB890X",
+        "06920": "AB890X",
+        "06921": "AB890X",
+        "06922": "AB890X",
+        "06925": "AB890X",
+        "06926": "AB890X",
+        "06927": "AB890X",
+        "06928": "AB890X",
+        "07001": "AB890X",
+        "07002": "AB890X",
+        "07003": "AB890X",
+        "07004": "AB890X",
+        "07005": "AB890X",
+        "07006": "AB890X",
+        "07007": "AB890X",
+        "07008": "AB890X",
+        "07009": "AB890X",
+        "07010": "AB890X",
+        "07011": "AB890X",
+        "07012": "AB890X",
+        "07013": "AB890X",
+        "07014": "AB890X",
+        "07015": "AB890X",
+        "07016": "AB890X",
+        "07017": "AB890X",
+        "07018": "AB890X",
+        "07019": "AB890X",
+        "07020": "AB890X",
+        "07021": "AB890X",
+        "07022": "AB890X",
+        "07023": "AB890X",
+        "07024": "AB890X",
+        "07026": "AB890X",
+        "07027": "AB890X",
+        "07028": "AB890X",
+        "07029": "AB890X",
+        "07030": "AB890X",
+        "07031": "AB890X",
+        "07032": "AB890X",
+        "07033": "AB890X",
+        "07034": "AB890X",
+        "07035": "AB890X",
+        "07036": "AB890X",
+        "07039": "AB890X",
+        "07040": "AB890X",
+        "07041": "AB890X",
+        "07042": "AB890X",
+        "07043": "AB890X",
+        "07044": "AB890X",
+        "07045": "AB890X",
+        "07046": "AB890X",
+        "07047": "AB890X",
+        "07050": "AB890X",
+        "07051": "AB890X",
+        "07052": "AB890X",
+        "07054": "AB890X",
+        "07055": "AB890X",
+        "07057": "AB890X",
+        "07058": "AB890X",
+        "07059": "AB890X",
+        "07060": "AB890X",
+        "07061": "AB890X",
+        "07062": "AB890X",
+        "07063": "AB890X",
+        "07064": "AB890X",
+        "07065": "AB890X",
+        "07066": "AB890X",
+        "07067": "AB890X",
+        "07068": "AB890X",
+        "07069": "AB890X",
+        "07070": "AB890X",
+        "07071": "AB890X",
+        "07072": "AB890X",
+        "07073": "AB890X",
+        "07074": "AB890X",
+        "07075": "AB890X",
+        "07076": "AB890X",
+        "07077": "AB890X",
+        "07078": "AB890X",
+        "07079": "AB890X",
+        "07080": "AB890X",
+        "07081": "AB890X",
+        "07082": "AB890X",
+        "07083": "AB890X",
+        "07086": "AB890X",
+        "07087": "AB890X",
+        "07088": "AB890X",
+        "07090": "AB890X",
+        "07091": "AB890X",
+        "07092": "AB890X",
+        "07093": "AB890X",
+        "07094": "AB890X",
+        "07095": "AB890X",
+        "07096": "AB890X",
+        "07097": "AB890X",
+        "07099": "AB890X",
+        "07101": "AB890X",
+        "07102": "AB890X",
+        "07103": "AB890X",
+        "07104": "AB890X",
+        "07105": "AB890X",
+        "07106": "AB890X",
+        "07107": "AB890X",
+        "07108": "AB890X",
+        "07109": "AB890X",
+        "07110": "AB890X",
+        "07111": "AB890X",
+        "07112": "AB890X",
+        "07114": "AB890X",
+        "07175": "AB890X",
+        "07182": "AB890X",
+        "07184": "AB890X",
+        "07188": "AB890X",
+        "07189": "AB890X",
+        "07191": "AB890X",
+        "07192": "AB890X",
+        "07193": "AB890X",
+        "07194": "AB890X",
+        "07195": "AB890X",
+        "07198": "AB890X",
+        "07199": "AB890X",
+        "07201": "AB890X",
+        "07202": "AB890X",
+        "07203": "AB890X",
+        "07204": "AB890X",
+        "07205": "AB890X",
+        "07206": "AB890X",
+        "07207": "AB890X",
+        "07208": "AB890X",
+        "07302": "AB890X",
+        "07303": "AB890X",
+        "07304": "AB890X",
+        "07305": "AB890X",
+        "07306": "AB890X",
+        "07307": "AB890X",
+        "07308": "AB890X",
+        "07309": "AB890X",
+        "07310": "AB890X",
+        "07311": "AB890X",
+        "07395": "AB890X",
+        "07399": "AB890X",
+        "07401": "AB890X",
+        "07403": "AB890X",
+        "07405": "AB890X",
+        "07407": "AB890X",
+        "07410": "AB890X",
+        "07416": "AB890X",
+        "07417": "AB890X",
+        "07418": "AB890X",
+        "07419": "AB890X",
+        "07420": "AB890X",
+        "07421": "AB890X",
+        "07422": "AB890X",
+        "07423": "AB890X",
+        "07424": "AB890X",
+        "07428": "AB890X",
+        "07430": "AB890X",
+        "07432": "AB890X",
+        "07435": "AB890X",
+        "07436": "AB890X",
+        "07438": "AB890X",
+        "07439": "AB890X",
+        "07440": "AB890X",
+        "07442": "AB890X",
+        "07444": "AB890X",
+        "07446": "AB890X",
+        "07450": "AB890X",
+        "07451": "AB890X",
+        "07452": "AB890X",
+        "07456": "AB890X",
+        "07457": "AB890X",
+        "07458": "AB890X",
+        "07460": "AB890X",
+        "07461": "AB890X",
+        "07462": "AB890X",
+        "07463": "AB890X",
+        "07465": "AB890X",
+        "07470": "AB890X",
+        "07474": "AB890X",
+        "07477": "AB890X",
+        "07480": "AB890X",
+        "07481": "AB890X",
+        "07495": "AB890X",
+        "07501": "AB890X",
+        "07502": "AB890X",
+        "07503": "AB890X",
+        "07504": "AB890X",
+        "07505": "AB890X",
+        "07506": "AB890X",
+        "07507": "AB890X",
+        "07508": "AB890X",
+        "07509": "AB890X",
+        "07510": "AB890X",
+        "07511": "AB890X",
+        "07512": "AB890X",
+        "07513": "AB890X",
+        "07514": "AB890X",
+        "07522": "AB890X",
+        "07524": "AB890X",
+        "07533": "AB890X",
+        "07538": "AB890X",
+        "07543": "AB890X",
+        "07544": "AB890X",
+        "07601": "AB890X",
+        "07602": "AB890X",
+        "07603": "AB890X",
+        "07604": "AB890X",
+        "07605": "AB890X",
+        "07606": "AB890X",
+        "07607": "AB890X",
+        "07608": "AB890X",
+        "07620": "AB890X",
+        "07621": "AB890X",
+        "07624": "AB890X",
+        "07626": "AB890X",
+        "07627": "AB890X",
+        "07628": "AB890X",
+        "07630": "AB890X",
+        "07631": "AB890X",
+        "07632": "AB890X",
+        "07640": "AB890X",
+        "07641": "AB890X",
+        "07642": "AB890X",
+        "07643": "AB890X",
+        "07644": "AB890X",
+        "07645": "AB890X",
+        "07646": "AB890X",
+        "07647": "AB890X",
+        "07648": "AB890X",
+        "07649": "AB890X",
+        "07650": "AB890X",
+        "07652": "AB890X",
+        "07653": "AB890X",
+        "07656": "AB890X",
+        "07657": "AB890X",
+        "07660": "AB890X",
+        "07661": "AB890X",
+        "07662": "AB890X",
+        "07663": "AB890X",
+        "07666": "AB890X",
+        "07670": "AB890X",
+        "07675": "AB890X",
+        "07676": "AB890X",
+        "07677": "AB890X",
+        "07699": "AB890X",
+        "07701": "AB890X",
+        "07702": "AB890X",
+        "07703": "AB890X",
+        "07704": "AB890X",
+        "07709": "AB890X",
+        "07710": "AB890X",
+        "07711": "AB890X",
+        "07712": "AB890X",
+        "07715": "AB890X",
+        "07716": "AB890X",
+        "07717": "AB890X",
+        "07718": "AB890X",
+        "07719": "AB890X",
+        "07720": "AB890X",
+        "07721": "AB890X",
+        "07722": "AB890X",
+        "07723": "AB890X",
+        "07724": "AB890X",
+        "07726": "AB890X",
+        "07727": "AB890X",
+        "07728": "AB890X",
+        "07730": "AB890X",
+        "07731": "AB890X",
+        "07732": "AB890X",
+        "07733": "AB890X",
+        "07734": "AB890X",
+        "07735": "AB890X",
+        "07737": "AB890X",
+        "07738": "AB890X",
+        "07739": "AB890X",
+        "07740": "AB890X",
+        "07746": "AB890X",
+        "07747": "AB890X",
+        "07748": "AB890X",
+        "07750": "AB890X",
+        "07751": "AB890X",
+        "07752": "AB890X",
+        "07753": "AB890X",
+        "07754": "AB890X",
+        "07755": "AB890X",
+        "07756": "AB890X",
+        "07757": "AB890X",
+        "07758": "AB890X",
+        "07760": "AB890X",
+        "07762": "AB890X",
+        "07763": "AB890X",
+        "07764": "AB890X",
+        "07765": "AB890X",
+        "07777": "AB890X",
+        "07799": "AB890X",
+        "07801": "AB890X",
+        "07802": "AB890X",
+        "07803": "AB890X",
+        "07806": "AB890X",
+        "07820": "AB890X",
+        "07821": "AB890X",
+        "07822": "AB890X",
+        "07823": "AB890X",
+        "07825": "AB890X",
+        "07826": "AB890X",
+        "07827": "AB890X",
+        "07828": "AB890X",
+        "07829": "AB890X",
+        "07830": "AB890X",
+        "07831": "AB890X",
+        "07832": "AB890X",
+        "07833": "AB890X",
+        "07834": "AB890X",
+        "07836": "AB890X",
+        "07837": "AB890X",
+        "07838": "AB890X",
+        "07839": "AB890X",
+        "07840": "AB890X",
+        "07842": "AB890X",
+        "07843": "AB890X",
+        "07844": "AB890X",
+        "07845": "AB890X",
+        "07846": "AB890X",
+        "07847": "AB890X",
+        "07848": "AB890X",
+        "07849": "AB890X",
+        "07850": "AB890X",
+        "07851": "AB890X",
+        "07852": "AB890X",
+        "07853": "AB890X",
+        "07855": "AB890X",
+        "07856": "AB890X",
+        "07857": "AB890X",
+        "07860": "AB890X",
+        "07863": "AB890X",
+        "07865": "AB890X",
+        "07866": "AB890X",
+        "07869": "AB890X",
+        "07870": "AB890X",
+        "07871": "AB890X",
+        "07874": "AB890X",
+        "07875": "AB890X",
+        "07876": "AB890X",
+        "07877": "AB890X",
+        "07878": "AB890X",
+        "07879": "AB890X",
+        "07880": "AB890X",
+        "07881": "AB890X",
+        "07882": "AB890X",
+        "07885": "AB890X",
+        "07890": "AB890X",
+        "07901": "AB890X",
+        "07902": "AB890X",
+        "07920": "AB890X",
+        "07921": "AB890X",
+        "07922": "AB890X",
+        "07924": "AB890X",
+        "07926": "AB890X",
+        "07927": "AB890X",
+        "07928": "AB890X",
+        "07930": "AB890X",
+        "07931": "AB890X",
+        "07932": "AB890X",
+        "07933": "AB890X",
+        "07934": "AB890X",
+        "07935": "AB890X",
+        "07936": "AB890X",
+        "07938": "AB890X",
+        "07939": "AB890X",
+        "07940": "AB890X",
+        "07945": "AB890X",
+        "07946": "AB890X",
+        "07950": "AB890X",
+        "07960": "AB890X",
+        "07961": "AB890X",
+        "07962": "AB890X",
+        "07963": "AB890X",
+        "07970": "AB890X",
+        "07974": "AB890X",
+        "07976": "AB890X",
+        "07977": "AB890X",
+        "07978": "AB890X",
+        "07979": "AB890X",
+        "07980": "AB890X",
+        "07981": "AB890X",
+        "07983": "AB890X",
+        "07999": "AB890X",
+        "08001": "AB890X",
+        "08002": "AB890X",
+        "08003": "AB890X",
+        "08004": "AB890X",
+        "08005": "AB890X",
+        "08006": "AB890X",
+        "08007": "AB890X",
+        "08008": "AB890X",
+        "08009": "AB890X",
+        "08010": "AB890X",
+        "08011": "AB890X",
+        "08012": "AB890X",
+        "08014": "AB890X",
+        "08015": "AB890X",
+        "08016": "AB890X",
+        "08018": "AB890X",
+        "08019": "AB890X",
+        "08020": "AB890X",
+        "08021": "AB890X",
+        "08022": "AB890X",
+        "08023": "AB890X",
+        "08025": "AB890X",
+        "08026": "AB890X",
+        "08027": "AB890X",
+        "08028": "AB890X",
+        "08029": "AB890X",
+        "08030": "AB890X",
+        "08031": "AB890X",
+        "08032": "AB890X",
+        "08033": "AB890X",
+        "08034": "AB890X",
+        "08035": "AB890X",
+        "08036": "AB890X",
+        "08037": "AB890X",
+        "08038": "AB890X",
+        "08039": "AB890X",
+        "08041": "AB890X",
+        "08042": "AB890X",
+        "08043": "AB890X",
+        "08045": "AB890X",
+        "08046": "AB890X",
+        "08048": "AB890X",
+        "08049": "AB890X",
+        "08050": "AB890X",
+        "08051": "AB890X",
+        "08052": "AB890X",
+        "08053": "AB890X",
+        "08054": "AB890X",
+        "08055": "AB890X",
+        "08056": "AB890X",
+        "08057": "AB890X",
+        "08059": "AB890X",
+        "08060": "AB890X",
+        "08061": "AB890X",
+        "08062": "AB890X",
+        "08063": "AB890X",
+        "08064": "AB890X",
+        "08065": "AB890X",
+        "08066": "AB890X",
+        "08067": "AB890X",
+        "08068": "AB890X",
+        "08069": "AB890X",
+        "08070": "AB890X",
+        "08071": "AB890X",
+        "08072": "AB890X",
+        "08073": "AB890X",
+        "08074": "AB890X",
+        "08075": "AB890X",
+        "08076": "AB890X",
+        "08077": "AB890X",
+        "08078": "AB890X",
+        "08079": "AB890X",
+        "08080": "AB890X",
+        "08081": "AB890X",
+        "08083": "AB890X",
+        "08084": "AB890X",
+        "08085": "AB890X",
+        "08086": "AB890X",
+        "08087": "AB890X",
+        "08088": "AB890X",
+        "08089": "AB890X",
+        "08090": "AB890X",
+        "08091": "AB890X",
+        "08092": "AB890X",
+        "08093": "AB890X",
+        "08094": "AB890X",
+        "08095": "AB890X",
+        "08096": "AB890X",
+        "08097": "AB890X",
+        "08098": "AB890X",
+        "08099": "AB890X",
+        "08101": "AB890X",
+        "08102": "AB890X",
+        "08103": "AB890X",
+        "08104": "AB890X",
+        "08105": "AB890X",
+        "08106": "AB890X",
+        "08107": "AB890X",
+        "08108": "AB890X",
+        "08109": "AB890X",
+        "08110": "AB890X",
+        "08201": "AB890X",
+        "08202": "AB890X",
+        "08203": "AB890X",
+        "08204": "AB890X",
+        "08205": "AB890X",
+        "08210": "AB890X",
+        "08212": "AB890X",
+        "08213": "AB890X",
+        "08214": "AB890X",
+        "08215": "AB890X",
+        "08217": "AB890X",
+        "08218": "AB890X",
+        "08219": "AB890X",
+        "08220": "AB890X",
+        "08221": "AB890X",
+        "08223": "AB890X",
+        "08224": "AB890X",
+        "08225": "AB890X",
+        "08226": "AB890X",
+        "08230": "AB890X",
+        "08231": "AB890X",
+        "08232": "AB890X",
+        "08234": "AB890X",
+        "08240": "AB890X",
+        "08241": "AB890X",
+        "08242": "AB890X",
+        "08243": "AB890X",
+        "08244": "AB890X",
+        "08245": "AB890X",
+        "08246": "AB890X",
+        "08247": "AB890X",
+        "08248": "AB890X",
+        "08250": "AB890X",
+        "08251": "AB890X",
+        "08252": "AB890X",
+        "08260": "AB890X",
+        "08270": "AB890X",
+        "08302": "AB890X",
+        "08310": "AB890X",
+        "08311": "AB890X",
+        "08312": "AB890X",
+        "08313": "AB890X",
+        "08314": "AB890X",
+        "08315": "AB890X",
+        "08316": "AB890X",
+        "08317": "AB890X",
+        "08318": "AB890X",
+        "08319": "AB890X",
+        "08320": "AB890X",
+        "08321": "AB890X",
+        "08322": "AB890X",
+        "08323": "AB890X",
+        "08324": "AB890X",
+        "08326": "AB890X",
+        "08327": "AB890X",
+        "08328": "AB890X",
+        "08329": "AB890X",
+        "08330": "AB890X",
+        "08332": "AB890X",
+        "08340": "AB890X",
+        "08341": "AB890X",
+        "08342": "AB890X",
+        "08343": "AB890X",
+        "08344": "AB890X",
+        "08345": "AB890X",
+        "08346": "AB890X",
+        "08347": "AB890X",
+        "08348": "AB890X",
+        "08349": "AB890X",
+        "08350": "AB890X",
+        "08352": "AB890X",
+        "08353": "AB890X",
+        "08360": "AB890X",
+        "08361": "AB890X",
+        "08362": "AB890X",
+        "08401": "AB890X",
+        "08402": "AB890X",
+        "08403": "AB890X",
+        "08404": "AB890X",
+        "08405": "AB890X",
+        "08406": "AB890X",
+        "08501": "AB890X",
+        "08502": "AB890X",
+        "08504": "AB890X",
+        "08505": "AB890X",
+        "08510": "AB890X",
+        "08511": "AB890X",
+        "08512": "AB890X",
+        "08514": "AB890X",
+        "08515": "AB890X",
+        "08518": "AB890X",
+        "08520": "AB890X",
+        "08525": "AB890X",
+        "08526": "AB890X",
+        "08527": "AB890X",
+        "08528": "AB890X",
+        "08530": "AB890X",
+        "08533": "AB890X",
+        "08534": "AB890X",
+        "08535": "AB890X",
+        "08536": "AB890X",
+        "08540": "AB890X",
+        "08541": "AB890X",
+        "08542": "AB890X",
+        "08543": "AB890X",
+        "08544": "AB890X",
+        "08550": "AB890X",
+        "08551": "AB890X",
+        "08553": "AB890X",
+        "08554": "AB890X",
+        "08555": "AB890X",
+        "08556": "AB890X",
+        "08557": "AB890X",
+        "08558": "AB890X",
+        "08559": "AB890X",
+        "08560": "AB890X",
+        "08561": "AB890X",
+        "08562": "AB890X",
+        "08601": "AB890X",
+        "08602": "AB890X",
+        "08603": "AB890X",
+        "08604": "AB890X",
+        "08605": "AB890X",
+        "08606": "AB890X",
+        "08607": "AB890X",
+        "08608": "AB890X",
+        "08609": "AB890X",
+        "08610": "AB890X",
+        "08611": "AB890X",
+        "08618": "AB890X",
+        "08619": "AB890X",
+        "08620": "AB890X",
+        "08625": "AB890X",
+        "08628": "AB890X",
+        "08629": "AB890X",
+        "08638": "AB890X",
+        "08640": "AB890X",
+        "08641": "AB890X",
+        "08645": "AB890X",
+        "08646": "AB890X",
+        "08647": "AB890X",
+        "08648": "AB890X",
+        "08650": "AB890X",
+        "08666": "AB890X",
+        "08677": "AB890X",
+        "08690": "AB890X",
+        "08691": "AB890X",
+        "08695": "AB890X",
+        "08701": "AB890X",
+        "08720": "AB890X",
+        "08721": "AB890X",
+        "08722": "AB890X",
+        "08723": "AB890X",
+        "08724": "AB890X",
+        "08730": "AB890X",
+        "08731": "AB890X",
+        "08732": "AB890X",
+        "08733": "AB890X",
+        "08734": "AB890X",
+        "08735": "AB890X",
+        "08736": "AB890X",
+        "08738": "AB890X",
+        "08739": "AB890X",
+        "08740": "AB890X",
+        "08741": "AB890X",
+        "08742": "AB890X",
+        "08750": "AB890X",
+        "08751": "AB890X",
+        "08752": "AB890X",
+        "08753": "AB890X",
+        "08754": "AB890X",
+        "08755": "AB890X",
+        "08756": "AB890X",
+        "08757": "AB890X",
+        "08758": "AB890X",
+        "08759": "AB890X",
+        "08801": "AB890X",
+        "08802": "AB890X",
+        "08803": "AB890X",
+        "08804": "AB890X",
+        "08805": "AB890X",
+        "08807": "AB890X",
+        "08808": "AB890X",
+        "08809": "AB890X",
+        "08810": "AB890X",
+        "08812": "AB890X",
+        "08816": "AB890X",
+        "08817": "AB890X",
+        "08818": "AB890X",
+        "08820": "AB890X",
+        "08821": "AB890X",
+        "08822": "AB890X",
+        "08823": "AB890X",
+        "08824": "AB890X",
+        "08825": "AB890X",
+        "08826": "AB890X",
+        "08827": "AB890X",
+        "08828": "AB890X",
+        "08829": "AB890X",
+        "08830": "AB890X",
+        "08831": "AB890X",
+        "08832": "AB890X",
+        "08833": "AB890X",
+        "08834": "AB890X",
+        "08835": "AB890X",
+        "08836": "AB890X",
+        "08837": "AB890X",
+        "08840": "AB890X",
+        "08844": "AB890X",
+        "08846": "AB890X",
+        "08848": "AB890X",
+        "08850": "AB890X",
+        "08852": "AB890X",
+        "08853": "AB890X",
+        "08854": "AB890X",
+        "08855": "AB890X",
+        "08857": "AB890X",
+        "08858": "AB890X",
+        "08859": "AB890X",
+        "08861": "AB890X",
+        "08862": "AB890X",
+        "08863": "AB890X",
+        "08865": "AB890X",
+        "08867": "AB890X",
+        "08868": "AB890X",
+        "08869": "AB890X",
+        "08870": "AB890X",
+        "08871": "AB890X",
+        "08872": "AB890X",
+        "08873": "AB890X",
+        "08875": "AB890X",
+        "08876": "AB890X",
+        "08879": "AB890X",
+        "08880": "AB890X",
+        "08882": "AB890X",
+        "08884": "AB890X",
+        "08885": "AB890X",
+        "08886": "AB890X",
+        "08887": "AB890X",
+        "08888": "AB890X",
+        "08889": "AB890X",
+        "08890": "AB890X",
+        "08896": "AB890X",
+        "08899": "AB890X",
+        "08901": "AB890X",
+        "08902": "AB890X",
+        "08903": "AB890X",
+        "08904": "AB890X",
+        "08905": "AB890X",
+        "08906": "AB890X",
+        "08922": "AB890X",
+        "08933": "AB890X",
+        "08988": "AB890X",
+        "08989": "AB890X",
+        "10001": "AB890X",
+        "10002": "AB890X",
+        "10003": "AB890X",
+        "10004": "AB890X",
+        "10005": "AB890X",
+        "10006": "AB890X",
+        "10007": "AB890X",
+        "10008": "AB890X",
+        "10009": "AB890X",
+        "10010": "AB890X",
+        "10011": "AB890X",
+        "10012": "AB890X",
+        "10013": "AB890X",
+        "10014": "AB890X",
+        "10015": "AB890X",
+        "10016": "AB890X",
+        "10017": "AB890X",
+        "10018": "AB890X",
+        "10019": "AB890X",
+        "10020": "AB890X",
+        "10021": "AB890X",
+        "10022": "AB890X",
+        "10023": "AB890X",
+        "10024": "AB890X",
+        "10025": "AB890X",
+        "10026": "AB890X",
+        "10027": "AB890X",
+        "10028": "AB890X",
+        "10029": "AB890X",
+        "10030": "AB890X",
+        "10031": "AB890X",
+        "10032": "AB890X",
+        "10033": "AB890X",
+        "10034": "AB890X",
+        "10035": "AB890X",
+        "10036": "AB890X",
+        "10037": "AB890X",
+        "10038": "AB890X",
+        "10039": "AB890X",
+        "10040": "AB890X",
+        "10041": "AB890X",
+        "10043": "AB890X",
+        "10044": "AB890X",
+        "10045": "AB890X",
+        "10046": "AB890X",
+        "10047": "AB890X",
+        "10048": "AB890X",
+        "10055": "AB890X",
+        "10060": "AB890X",
+        "10069": "AB890X",
+        "10072": "AB890X",
+        "10079": "AB890X",
+        "10080": "AB890X",
+        "10081": "AB890X",
+        "10082": "AB890X",
+        "10087": "AB890X",
+        "10090": "AB890X",
+        "10094": "AB890X",
+        "10095": "AB890X",
+        "10096": "AB890X",
+        "10098": "AB890X",
+        "10099": "AB890X",
+        "10101": "AB890X",
+        "10102": "AB890X",
+        "10103": "AB890X",
+        "10104": "AB890X",
+        "10105": "AB890X",
+        "10106": "AB890X",
+        "10107": "AB890X",
+        "10108": "AB890X",
+        "10109": "AB890X",
+        "10110": "AB890X",
+        "10111": "AB890X",
+        "10112": "AB890X",
+        "10113": "AB890X",
+        "10114": "AB890X",
+        "10115": "AB890X",
+        "10116": "AB890X",
+        "10117": "AB890X",
+        "10118": "AB890X",
+        "10119": "AB890X",
+        "10120": "AB890X",
+        "10121": "AB890X",
+        "10122": "AB890X",
+        "10123": "AB890X",
+        "10124": "AB890X",
+        "10125": "AB890X",
+        "10126": "AB890X",
+        "10128": "AB890X",
+        "10129": "AB890X",
+        "10130": "AB890X",
+        "10131": "AB890X",
+        "10132": "AB890X",
+        "10133": "AB890X",
+        "10138": "AB890X",
+        "10149": "AB890X",
+        "10150": "AB890X",
+        "10151": "AB890X",
+        "10152": "AB890X",
+        "10153": "AB890X",
+        "10154": "AB890X",
+        "10155": "AB890X",
+        "10156": "AB890X",
+        "10157": "AB890X",
+        "10158": "AB890X",
+        "10159": "AB890X",
+        "10160": "AB890X",
+        "10161": "AB890X",
+        "10162": "AB890X",
+        "10163": "AB890X",
+        "10164": "AB890X",
+        "10165": "AB890X",
+        "10166": "AB890X",
+        "10167": "AB890X",
+        "10168": "AB890X",
+        "10169": "AB890X",
+        "10170": "AB890X",
+        "10171": "AB890X",
+        "10172": "AB890X",
+        "10173": "AB890X",
+        "10174": "AB890X",
+        "10175": "AB890X",
+        "10176": "AB890X",
+        "10177": "AB890X",
+        "10178": "AB890X",
+        "10179": "AB890X",
+        "10184": "AB890X",
+        "10185": "AB890X",
+        "10196": "AB890X",
+        "10197": "AB890X",
+        "10199": "AB890X",
+        "10203": "AB890X",
+        "10211": "AB890X",
+        "10212": "AB890X",
+        "10213": "AB890X",
+        "10242": "AB890X",
+        "10249": "AB890X",
+        "10256": "AB890X",
+        "10257": "AB890X",
+        "10258": "AB890X",
+        "10259": "AB890X",
+        "10260": "AB890X",
+        "10261": "AB890X",
+        "10265": "AB890X",
+        "10268": "AB890X",
+        "10269": "AB890X",
+        "10270": "AB890X",
+        "10271": "AB890X",
+        "10272": "AB890X",
+        "10273": "AB890X",
+        "10274": "AB890X",
+        "10275": "AB890X",
+        "10276": "AB890X",
+        "10277": "AB890X",
+        "10278": "AB890X",
+        "10279": "AB890X",
+        "10280": "AB890X",
+        "10281": "AB890X",
+        "10282": "AB890X",
+        "10285": "AB890X",
+        "10286": "AB890X",
+        "10292": "AB890X",
+        "10301": "AB890X",
+        "10302": "AB890X",
+        "10303": "AB890X",
+        "10304": "AB890X",
+        "10305": "AB890X",
+        "10306": "AB890X",
+        "10307": "AB890X",
+        "10308": "AB890X",
+        "10309": "AB890X",
+        "10310": "AB890X",
+        "10311": "AB890X",
+        "10312": "AB890X",
+        "10313": "AB890X",
+        "10314": "AB890X",
+        "10451": "AB890X",
+        "10452": "AB890X",
+        "10453": "AB890X",
+        "10454": "AB890X",
+        "10455": "AB890X",
+        "10456": "AB890X",
+        "10457": "AB890X",
+        "10458": "AB890X",
+        "10459": "AB890X",
+        "10460": "AB890X",
+        "10461": "AB890X",
+        "10462": "AB890X",
+        "10463": "AB890X",
+        "10464": "AB890X",
+        "10465": "AB890X",
+        "10466": "AB890X",
+        "10467": "AB890X",
+        "10468": "AB890X",
+        "10469": "AB890X",
+        "10470": "AB890X",
+        "10471": "AB890X",
+        "10472": "AB890X",
+        "10473": "AB890X",
+        "10474": "AB890X",
+        "10475": "AB890X",
+        "10499": "AB890X",
+        "10501": "AB890X",
+        "10502": "AB890X",
+        "10503": "AB890X",
+        "10504": "AB890X",
+        "10505": "AB890X",
+        "10506": "AB890X",
+        "10507": "AB890X",
+        "10509": "AB890X",
+        "10510": "AB890X",
+        "10511": "AB890X",
+        "10512": "AB890X",
+        "10514": "AB890X",
+        "10516": "AB890X",
+        "10517": "AB890X",
+        "10518": "AB890X",
+        "10519": "AB890X",
+        "10520": "AB890X",
+        "10521": "AB890X",
+        "10522": "AB890X",
+        "10523": "AB890X",
+        "10524": "AB890X",
+        "10526": "AB890X",
+        "10527": "AB890X",
+        "10528": "AB890X",
+        "10530": "AB890X",
+        "10532": "AB890X",
+        "10533": "AB890X",
+        "10535": "AB890X",
+        "10536": "AB890X",
+        "10537": "AB890X",
+        "10538": "AB890X",
+        "10540": "AB890X",
+        "10541": "AB890X",
+        "10542": "AB890X",
+        "10543": "AB890X",
+        "10545": "AB890X",
+        "10546": "AB890X",
+        "10547": "AB890X",
+        "10548": "AB890X",
+        "10549": "AB890X",
+        "10550": "AB890X",
+        "10551": "AB890X",
+        "10552": "AB890X",
+        "10553": "AB890X",
+        "10557": "AB890X",
+        "10558": "AB890X",
+        "10560": "AB890X",
+        "10562": "AB890X",
+        "10566": "AB890X",
+        "10567": "AB890X",
+        "10570": "AB890X",
+        "10571": "AB890X",
+        "10572": "AB890X",
+        "10573": "AB890X",
+        "10576": "AB890X",
+        "10577": "AB890X",
+        "10578": "AB890X",
+        "10579": "AB890X",
+        "10580": "AB890X",
+        "10583": "AB890X",
+        "10587": "AB890X",
+        "10588": "AB890X",
+        "10589": "AB890X",
+        "10590": "AB890X",
+        "10591": "AB890X",
+        "10594": "AB890X",
+        "10595": "AB890X",
+        "10596": "AB890X",
+        "10597": "AB890X",
+        "10598": "AB890X",
+        "10601": "AB890X",
+        "10602": "AB890X",
+        "10603": "AB890X",
+        "10604": "AB890X",
+        "10605": "AB890X",
+        "10606": "AB890X",
+        "10607": "AB890X",
+        "10610": "AB890X",
+        "10701": "AB890X",
+        "10702": "AB890X",
+        "10703": "AB890X",
+        "10704": "AB890X",
+        "10705": "AB890X",
+        "10706": "AB890X",
+        "10707": "AB890X",
+        "10708": "AB890X",
+        "10709": "AB890X",
+        "10710": "AB890X",
+        "10801": "AB890X",
+        "10802": "AB890X",
+        "10803": "AB890X",
+        "10804": "AB890X",
+        "10805": "AB890X",
+        "10901": "AB890X",
+        "10910": "AB890X",
+        "10911": "AB890X",
+        "10912": "AB890X",
+        "10913": "AB890X",
+        "10914": "AB890X",
+        "10915": "AB890X",
+        "10916": "AB890X",
+        "10917": "AB890X",
+        "10918": "AB890X",
+        "10919": "AB890X",
+        "10920": "AB890X",
+        "10921": "AB890X",
+        "10922": "AB890X",
+        "10923": "AB890X",
+        "10924": "AB890X",
+        "10925": "AB890X",
+        "10926": "AB890X",
+        "10927": "AB890X",
+        "10928": "AB890X",
+        "10930": "AB890X",
+        "10931": "AB890X",
+        "10932": "AB890X",
+        "10933": "AB890X",
+        "10940": "AB890X",
+        "10941": "AB890X",
+        "10943": "AB890X",
+        "10949": "AB890X",
+        "10950": "AB890X",
+        "10952": "AB890X",
+        "10953": "AB890X",
+        "10954": "AB890X",
+        "10956": "AB890X",
+        "10958": "AB890X",
+        "10959": "AB890X",
+        "10960": "AB890X",
+        "10962": "AB890X",
+        "10963": "AB890X",
+        "10964": "AB890X",
+        "10965": "AB890X",
+        "10968": "AB890X",
+        "10969": "AB890X",
+        "10970": "AB890X",
+        "10973": "AB890X",
+        "10974": "AB890X",
+        "10975": "AB890X",
+        "10976": "AB890X",
+        "10977": "AB890X",
+        "10979": "AB890X",
+        "10980": "AB890X",
+        "10981": "AB890X",
+        "10982": "AB890X",
+        "10983": "AB890X",
+        "10984": "AB890X",
+        "10985": "AB890X",
+        "10986": "AB890X",
+        "10987": "AB890X",
+        "10988": "AB890X",
+        "10989": "AB890X",
+        "10990": "AB890X",
+        "10992": "AB890X",
+        "10993": "AB890X",
+        "10994": "AB890X",
+        "10996": "AB890X",
+        "10997": "AB890X",
+        "10998": "AB890X",
+        "11001": "AB890X",
+        "11002": "AB890X",
+        "11003": "AB890X",
+        "11004": "AB890X",
+        "11005": "AB890X",
+        "11010": "AB890X",
+        "11020": "AB890X",
+        "11021": "AB890X",
+        "11022": "AB890X",
+        "11023": "AB890X",
+        "11024": "AB890X",
+        "11025": "AB890X",
+        "11026": "AB890X",
+        "11027": "AB890X",
+        "11030": "AB890X",
+        "11040": "AB890X",
+        "11041": "AB890X",
+        "11042": "AB890X",
+        "11043": "AB890X",
+        "11044": "AB890X",
+        "11050": "AB890X",
+        "11051": "AB890X",
+        "11052": "AB890X",
+        "11053": "AB890X",
+        "11054": "AB890X",
+        "11055": "AB890X",
+        "11096": "AB890X",
+        "11099": "AB890X",
+        "11101": "AB890X",
+        "11102": "AB890X",
+        "11103": "AB890X",
+        "11104": "AB890X",
+        "11105": "AB890X",
+        "11106": "AB890X",
+        "11109": "AB890X",
+        "11120": "AB890X",
+        "11201": "AB890X",
+        "11202": "AB890X",
+        "11203": "AB890X",
+        "11204": "AB890X",
+        "11205": "AB890X",
+        "11206": "AB890X",
+        "11207": "AB890X",
+        "11208": "AB890X",
+        "11209": "AB890X",
+        "11210": "AB890X",
+        "11211": "AB890X",
+        "11212": "AB890X",
+        "11213": "AB890X",
+        "11214": "AB890X",
+        "11215": "AB890X",
+        "11216": "AB890X",
+        "11217": "AB890X",
+        "11218": "AB890X",
+        "11219": "AB890X",
+        "11220": "AB890X",
+        "11221": "AB890X",
+        "11222": "AB890X",
+        "11223": "AB890X",
+        "11224": "AB890X",
+        "11225": "AB890X",
+        "11226": "AB890X",
+        "11228": "AB890X",
+        "11229": "AB890X",
+        "11230": "AB890X",
+        "11231": "AB890X",
+        "11232": "AB890X",
+        "11233": "AB890X",
+        "11234": "AB890X",
+        "11235": "AB890X",
+        "11236": "AB890X",
+        "11237": "AB890X",
+        "11238": "AB890X",
+        "11239": "AB890X",
+        "11240": "AB890X",
+        "11241": "AB890X",
+        "11242": "AB890X",
+        "11243": "AB890X",
+        "11244": "AB890X",
+        "11245": "AB890X",
+        "11247": "AB890X",
+        "11248": "AB890X",
+        "11249": "AB890X",
+        "11251": "AB890X",
+        "11252": "AB890X",
+        "11254": "AB890X",
+        "11255": "AB890X",
+        "11256": "AB890X",
+        "11351": "AB890X",
+        "11352": "AB890X",
+        "11354": "AB890X",
+        "11355": "AB890X",
+        "11356": "AB890X",
+        "11357": "AB890X",
+        "11358": "AB890X",
+        "11359": "AB890X",
+        "11360": "AB890X",
+        "11361": "AB890X",
+        "11362": "AB890X",
+        "11363": "AB890X",
+        "11364": "AB890X",
+        "11365": "AB890X",
+        "11366": "AB890X",
+        "11367": "AB890X",
+        "11368": "AB890X",
+        "11369": "AB890X",
+        "11370": "AB890X",
+        "11371": "AB890X",
+        "11372": "AB890X",
+        "11373": "AB890X",
+        "11374": "AB890X",
+        "11375": "AB890X",
+        "11377": "AB890X",
+        "11378": "AB890X",
+        "11379": "AB890X",
+        "11380": "AB890X",
+        "11381": "AB890X",
+        "11385": "AB890X",
+        "11386": "AB890X",
+        "11390": "AB890X",
+        "11405": "AB890X",
+        "11411": "AB890X",
+        "11412": "AB890X",
+        "11413": "AB890X",
+        "11414": "AB890X",
+        "11415": "AB890X",
+        "11416": "AB890X",
+        "11417": "AB890X",
+        "11418": "AB890X",
+        "11419": "AB890X",
+        "11420": "AB890X",
+        "11421": "AB890X",
+        "11422": "AB890X",
+        "11423": "AB890X",
+        "11424": "AB890X",
+        "11425": "AB890X",
+        "11426": "AB890X",
+        "11427": "AB890X",
+        "11428": "AB890X",
+        "11429": "AB890X",
+        "11430": "AB890X",
+        "11431": "AB890X",
+        "11432": "AB890X",
+        "11433": "AB890X",
+        "11434": "AB890X",
+        "11435": "AB890X",
+        "11436": "AB890X",
+        "11439": "AB890X",
+        "11451": "AB890X",
+        "11499": "AB890X",
+        "11501": "AB890X",
+        "11507": "AB890X",
+        "11509": "AB890X",
+        "11510": "AB890X",
+        "11514": "AB890X",
+        "11516": "AB890X",
+        "11518": "AB890X",
+        "11520": "AB890X",
+        "11530": "AB890X",
+        "11531": "AB890X",
+        "11535": "AB890X",
+        "11536": "AB890X",
+        "11542": "AB890X",
+        "11545": "AB890X",
+        "11547": "AB890X",
+        "11548": "AB890X",
+        "11549": "AB890X",
+        "11550": "AB890X",
+        "11551": "AB890X",
+        "11552": "AB890X",
+        "11553": "AB890X",
+        "11554": "AB890X",
+        "11555": "AB890X",
+        "11556": "AB890X",
+        "11557": "AB890X",
+        "11558": "AB890X",
+        "11559": "AB890X",
+        "11560": "AB890X",
+        "11561": "AB890X",
+        "11563": "AB890X",
+        "11565": "AB890X",
+        "11566": "AB890X",
+        "11568": "AB890X",
+        "11569": "AB890X",
+        "11570": "AB890X",
+        "11571": "AB890X",
+        "11572": "AB890X",
+        "11575": "AB890X",
+        "11576": "AB890X",
+        "11577": "AB890X",
+        "11579": "AB890X",
+        "11580": "AB890X",
+        "11581": "AB890X",
+        "11582": "AB890X",
+        "11590": "AB890X",
+        "11592": "AB890X",
+        "11594": "AB890X",
+        "11595": "AB890X",
+        "11596": "AB890X",
+        "11597": "AB890X",
+        "11598": "AB890X",
+        "11599": "AB890X",
+        "11690": "AB890X",
+        "11691": "AB890X",
+        "11692": "AB890X",
+        "11693": "AB890X",
+        "11694": "AB890X",
+        "11695": "AB890X",
+        "11697": "AB890X",
+        "11701": "AB890X",
+        "11702": "AB890X",
+        "11703": "AB890X",
+        "11704": "AB890X",
+        "11705": "AB890X",
+        "11706": "AB890X",
+        "11707": "AB890X",
+        "11708": "AB890X",
+        "11709": "AB890X",
+        "11710": "AB890X",
+        "11713": "AB890X",
+        "11714": "AB890X",
+        "11715": "AB890X",
+        "11716": "AB890X",
+        "11717": "AB890X",
+        "11718": "AB890X",
+        "11719": "AB890X",
+        "11720": "AB890X",
+        "11721": "AB890X",
+        "11722": "AB890X",
+        "11724": "AB890X",
+        "11725": "AB890X",
+        "11726": "AB890X",
+        "11727": "AB890X",
+        "11729": "AB890X",
+        "11730": "AB890X",
+        "11731": "AB890X",
+        "11732": "AB890X",
+        "11733": "AB890X",
+        "11735": "AB890X",
+        "11736": "AB890X",
+        "11737": "AB890X",
+        "11738": "AB890X",
+        "11739": "AB890X",
+        "11740": "AB890X",
+        "11741": "AB890X",
+        "11742": "AB890X",
+        "11743": "AB890X",
+        "11746": "AB890X",
+        "11747": "AB890X",
+        "11749": "AB890X",
+        "11750": "AB890X",
+        "11751": "AB890X",
+        "11752": "AB890X",
+        "11753": "AB890X",
+        "11754": "AB890X",
+        "11755": "AB890X",
+        "11756": "AB890X",
+        "11757": "AB890X",
+        "11758": "AB890X",
+        "11760": "AB890X",
+        "11762": "AB890X",
+        "11763": "AB890X",
+        "11764": "AB890X",
+        "11765": "AB890X",
+        "11766": "AB890X",
+        "11767": "AB890X",
+        "11768": "AB890X",
+        "11769": "AB890X",
+        "11770": "AB890X",
+        "11771": "AB890X",
+        "11772": "AB890X",
+        "11773": "AB890X",
+        "11774": "AB890X",
+        "11775": "AB890X",
+        "11776": "AB890X",
+        "11777": "AB890X",
+        "11778": "AB890X",
+        "11779": "AB890X",
+        "11780": "AB890X",
+        "11782": "AB890X",
+        "11783": "AB890X",
+        "11784": "AB890X",
+        "11786": "AB890X",
+        "11787": "AB890X",
+        "11788": "AB890X",
+        "11789": "AB890X",
+        "11790": "AB890X",
+        "11791": "AB890X",
+        "11792": "AB890X",
+        "11793": "AB890X",
+        "11794": "AB890X",
+        "11795": "AB890X",
+        "11796": "AB890X",
+        "11797": "AB890X",
+        "11798": "AB890X",
+        "11801": "AB890X",
+        "11802": "AB890X",
+        "11803": "AB890X",
+        "11804": "AB890X",
+        "11815": "AB890X",
+        "11819": "AB890X",
+        "11853": "AB890X",
+        "11854": "AB890X",
+        "11855": "AB890X",
+        "11901": "AB890X",
+        "11930": "AB890X",
+        "11931": "AB890X",
+        "11932": "AB890X",
+        "11933": "AB890X",
+        "11934": "AB890X",
+        "11935": "AB890X",
+        "11937": "AB890X",
+        "11939": "AB890X",
+        "11940": "AB890X",
+        "11941": "AB890X",
+        "11942": "AB890X",
+        "11944": "AB890X",
+        "11946": "AB890X",
+        "11947": "AB890X",
+        "11948": "AB890X",
+        "11949": "AB890X",
+        "11950": "AB890X",
+        "11951": "AB890X",
+        "11952": "AB890X",
+        "11953": "AB890X",
+        "11954": "AB890X",
+        "11955": "AB890X",
+        "11956": "AB890X",
+        "11957": "AB890X",
+        "11958": "AB890X",
+        "11959": "AB890X",
+        "11960": "AB890X",
+        "11961": "AB890X",
+        "11962": "AB890X",
+        "11963": "AB890X",
+        "11964": "AB890X",
+        "11965": "AB890X",
+        "11967": "AB890X",
+        "11968": "AB890X",
+        "11969": "AB890X",
+        "11970": "AB890X",
+        "11971": "AB890X",
+        "11972": "AB890X",
+        "11973": "AB890X",
+        "11975": "AB890X",
+        "11976": "AB890X",
+        "11977": "AB890X",
+        "11978": "AB890X",
+        "11980": "AB890X",
+        "12007": "AB890X",
+        "12008": "AB890X",
+        "12009": "AB890X",
+        "12010": "AB890X",
+        "12015": "AB890X",
+        "12016": "AB890X",
+        "12017": "AB890X",
+        "12018": "AB890X",
+        "12019": "AB890X",
+        "12020": "AB890X",
+        "12022": "AB890X",
+        "12023": "AB890X",
+        "12024": "AB890X",
+        "12025": "AB890X",
+        "12027": "AB890X",
+        "12028": "AB890X",
+        "12029": "AB890X",
+        "12031": "AB890X",
+        "12032": "AB890X",
+        "12033": "AB890X",
+        "12035": "AB890X",
+        "12036": "AB890X",
+        "12037": "AB890X",
+        "12040": "AB890X",
+        "12041": "AB890X",
+        "12042": "AB890X",
+        "12043": "AB890X",
+        "12045": "AB890X",
+        "12046": "AB890X",
+        "12047": "AB890X",
+        "12050": "AB890X",
+        "12051": "AB890X",
+        "12052": "AB890X",
+        "12053": "AB890X",
+        "12054": "AB890X",
+        "12055": "AB890X",
+        "12056": "AB890X",
+        "12057": "AB890X",
+        "12058": "AB890X",
+        "12059": "AB890X",
+        "12060": "AB890X",
+        "12061": "AB890X",
+        "12062": "AB890X",
+        "12063": "AB890X",
+        "12064": "AB900X",
+        "12065": "AB890X",
+        "12066": "AB890X",
+        "12067": "AB890X",
+        "12068": "AB890X",
+        "12069": "AB890X",
+        "12070": "AB890X",
+        "12071": "AB890X",
+        "12072": "AB890X",
+        "12073": "AB890X",
+        "12074": "AB890X",
+        "12075": "AB890X",
+        "12076": "AB890X",
+        "12077": "AB890X",
+        "12078": "AB890X",
+        "12082": "AB890X",
+        "12083": "AB890X",
+        "12084": "AB890X",
+        "12085": "AB890X",
+        "12086": "AB890X",
+        "12087": "AB890X",
+        "12089": "AB890X",
+        "12090": "AB890X",
+        "12092": "AB890X",
+        "12093": "AB900X",
+        "12094": "AB890X",
+        "12095": "AB890X",
+        "12106": "AB890X",
+        "12107": "AB890X",
+        "12108": "AB890X",
+        "12110": "AB890X",
+        "12115": "AB890X",
+        "12116": "AB900X",
+        "12117": "AB890X",
+        "12118": "AB890X",
+        "12120": "AB890X",
+        "12121": "AB890X",
+        "12122": "AB890X",
+        "12123": "AB890X",
+        "12124": "AB890X",
+        "12125": "AB890X",
+        "12128": "AB890X",
+        "12130": "AB890X",
+        "12131": "AB890X",
+        "12132": "AB890X",
+        "12133": "AB890X",
+        "12134": "AB890X",
+        "12136": "AB890X",
+        "12137": "AB890X",
+        "12138": "AB890X",
+        "12139": "AB900X",
+        "12140": "AB890X",
+        "12141": "AB890X",
+        "12143": "AB890X",
+        "12144": "AB890X",
+        "12147": "AB890X",
+        "12148": "AB890X",
+        "12149": "AB890X",
+        "12150": "AB890X",
+        "12151": "AB890X",
+        "12153": "AB890X",
+        "12154": "AB890X",
+        "12155": "AB900X",
+        "12156": "AB890X",
+        "12157": "AB890X",
+        "12158": "AB890X",
+        "12159": "AB890X",
+        "12160": "AB890X",
+        "12161": "AB890X",
+        "12164": "AB890X",
+        "12165": "AB890X",
+        "12166": "AB890X",
+        "12167": "AB900X",
+        "12168": "AB890X",
+        "12169": "AB890X",
+        "12170": "AB890X",
+        "12172": "AB890X",
+        "12173": "AB890X",
+        "12174": "AB890X",
+        "12175": "AB890X",
+        "12176": "AB890X",
+        "12177": "AB890X",
+        "12180": "AB890X",
+        "12181": "AB890X",
+        "12182": "AB890X",
+        "12183": "AB890X",
+        "12184": "AB890X",
+        "12185": "AB890X",
+        "12186": "AB890X",
+        "12187": "AB890X",
+        "12188": "AB890X",
+        "12189": "AB890X",
+        "12190": "AB890X",
+        "12192": "AB890X",
+        "12193": "AB890X",
+        "12194": "AB890X",
+        "12195": "AB890X",
+        "12196": "AB890X",
+        "12197": "AB900X",
+        "12198": "AB890X",
+        "12201": "AB890X",
+        "12202": "AB890X",
+        "12203": "AB890X",
+        "12204": "AB890X",
+        "12205": "AB890X",
+        "12206": "AB890X",
+        "12207": "AB890X",
+        "12208": "AB890X",
+        "12209": "AB890X",
+        "12210": "AB890X",
+        "12211": "AB890X",
+        "12212": "AB890X",
+        "12214": "AB890X",
+        "12220": "AB890X",
+        "12222": "AB890X",
+        "12223": "AB890X",
+        "12224": "AB890X",
+        "12225": "AB890X",
+        "12226": "AB890X",
+        "12227": "AB890X",
+        "12228": "AB890X",
+        "12229": "AB890X",
+        "12230": "AB890X",
+        "12231": "AB890X",
+        "12232": "AB890X",
+        "12233": "AB890X",
+        "12234": "AB890X",
+        "12235": "AB890X",
+        "12236": "AB890X",
+        "12237": "AB890X",
+        "12238": "AB890X",
+        "12239": "AB890X",
+        "12240": "AB890X",
+        "12241": "AB890X",
+        "12242": "AB890X",
+        "12243": "AB890X",
+        "12244": "AB890X",
+        "12245": "AB890X",
+        "12246": "AB890X",
+        "12247": "AB890X",
+        "12248": "AB890X",
+        "12249": "AB890X",
+        "12250": "AB890X",
+        "12252": "AB890X",
+        "12255": "AB890X",
+        "12256": "AB890X",
+        "12257": "AB890X",
+        "12260": "AB890X",
+        "12261": "AB890X",
+        "12288": "AB890X",
+        "12301": "AB890X",
+        "12302": "AB890X",
+        "12303": "AB890X",
+        "12304": "AB890X",
+        "12305": "AB890X",
+        "12306": "AB890X",
+        "12307": "AB890X",
+        "12308": "AB890X",
+        "12309": "AB890X",
+        "12325": "AB890X",
+        "12345": "AB890X",
+        "12401": "AB890X",
+        "12402": "AB890X",
+        "12404": "AB890X",
+        "12405": "AB890X",
+        "12406": "AB900X",
+        "12407": "AB890X",
+        "12409": "AB890X",
+        "12410": "AB890X",
+        "12411": "AB890X",
+        "12412": "AB890X",
+        "12413": "AB890X",
+        "12414": "AB890X",
+        "12416": "AB890X",
+        "12417": "AB890X",
+        "12418": "AB890X",
+        "12419": "AB890X",
+        "12420": "AB890X",
+        "12421": "AB900X",
+        "12422": "AB890X",
+        "12423": "AB890X",
+        "12424": "AB890X",
+        "12427": "AB890X",
+        "12428": "AB890X",
+        "12429": "AB890X",
+        "12430": "AB900X",
+        "12431": "AB890X",
+        "12432": "AB890X",
+        "12433": "AB890X",
+        "12434": "AB900X",
+        "12435": "AB890X",
+        "12436": "AB890X",
+        "12438": "AB900X",
+        "12439": "AB890X",
+        "12440": "AB890X",
+        "12441": "AB890X",
+        "12442": "AB890X",
+        "12443": "AB890X",
+        "12444": "AB890X",
+        "12446": "AB890X",
+        "12448": "AB890X",
+        "12449": "AB890X",
+        "12450": "AB890X",
+        "12451": "AB890X",
+        "12452": "AB890X",
+        "12453": "AB890X",
+        "12454": "AB890X",
+        "12455": "AB900X",
+        "12456": "AB890X",
+        "12457": "AB890X",
+        "12458": "AB890X",
+        "12459": "AB900X",
+        "12460": "AB890X",
+        "12461": "AB890X",
+        "12463": "AB890X",
+        "12464": "AB890X",
+        "12465": "AB890X",
+        "12466": "AB890X",
+        "12468": "AB900X",
+        "12469": "AB890X",
+        "12470": "AB890X",
+        "12471": "AB890X",
+        "12472": "AB890X",
+        "12473": "AB890X",
+        "12474": "AB900X",
+        "12475": "AB890X",
+        "12477": "AB890X",
+        "12480": "AB890X",
+        "12481": "AB890X",
+        "12482": "AB890X",
+        "12483": "AB890X",
+        "12484": "AB890X",
+        "12485": "AB890X",
+        "12486": "AB890X",
+        "12487": "AB890X",
+        "12489": "AB890X",
+        "12490": "AB890X",
+        "12491": "AB890X",
+        "12492": "AB890X",
+        "12493": "AB890X",
+        "12494": "AB890X",
+        "12495": "AB890X",
+        "12496": "AB890X",
+        "12498": "AB890X",
+        "12501": "AB890X",
+        "12502": "AB890X",
+        "12503": "AB890X",
+        "12504": "AB890X",
+        "12506": "AB890X",
+        "12507": "AB890X",
+        "12508": "AB890X",
+        "12510": "AB890X",
+        "12511": "AB890X",
+        "12512": "AB890X",
+        "12513": "AB890X",
+        "12514": "AB890X",
+        "12515": "AB890X",
+        "12516": "AB890X",
+        "12517": "AB890X",
+        "12518": "AB890X",
+        "12520": "AB890X",
+        "12521": "AB890X",
+        "12522": "AB890X",
+        "12523": "AB890X",
+        "12524": "AB890X",
+        "12525": "AB890X",
+        "12526": "AB890X",
+        "12527": "AB890X",
+        "12528": "AB890X",
+        "12529": "AB890X",
+        "12530": "AB890X",
+        "12531": "AB890X",
+        "12533": "AB890X",
+        "12534": "AB890X",
+        "12537": "AB890X",
+        "12538": "AB890X",
+        "12540": "AB890X",
+        "12541": "AB890X",
+        "12542": "AB890X",
+        "12543": "AB890X",
+        "12544": "AB890X",
+        "12545": "AB890X",
+        "12546": "AB890X",
+        "12547": "AB890X",
+        "12548": "AB890X",
+        "12549": "AB890X",
+        "12550": "AB890X",
+        "12551": "AB890X",
+        "12552": "AB890X",
+        "12553": "AB890X",
+        "12555": "AB890X",
+        "12561": "AB890X",
+        "12563": "AB890X",
+        "12564": "AB890X",
+        "12565": "AB890X",
+        "12566": "AB890X",
+        "12567": "AB890X",
+        "12568": "AB890X",
+        "12569": "AB890X",
+        "12570": "AB890X",
+        "12571": "AB890X",
+        "12572": "AB890X",
+        "12574": "AB890X",
+        "12575": "AB890X",
+        "12577": "AB890X",
+        "12578": "AB890X",
+        "12580": "AB890X",
+        "12581": "AB890X",
+        "12582": "AB890X",
+        "12583": "AB890X",
+        "12584": "AB890X",
+        "12585": "AB890X",
+        "12586": "AB890X",
+        "12588": "AB890X",
+        "12589": "AB890X",
+        "12590": "AB890X",
+        "12592": "AB890X",
+        "12593": "AB890X",
+        "12594": "AB890X",
+        "12601": "AB890X",
+        "12602": "AB890X",
+        "12603": "AB890X",
+        "12604": "AB890X",
+        "12701": "AB890X",
+        "12719": "AB890X",
+        "12720": "AB890X",
+        "12721": "AB890X",
+        "12722": "AB890X",
+        "12723": "AB890X",
+        "12724": "AB890X",
+        "12725": "AB890X",
+        "12726": "AB890X",
+        "12727": "AB890X",
+        "12729": "AB890X",
+        "12732": "AB890X",
+        "12733": "AB890X",
+        "12734": "AB890X",
+        "12736": "AB890X",
+        "12737": "AB890X",
+        "12738": "AB890X",
+        "12740": "AB890X",
+        "12741": "AB890X",
+        "12742": "AB890X",
+        "12743": "AB890X",
+        "12745": "AB890X",
+        "12746": "AB890X",
+        "12747": "AB890X",
+        "12748": "AB890X",
+        "12749": "AB890X",
+        "12750": "AB890X",
+        "12751": "AB890X",
+        "12752": "AB890X",
+        "12754": "AB890X",
+        "12758": "AB890X",
+        "12759": "AB890X",
+        "12760": "AB890X",
+        "12762": "AB890X",
+        "12763": "AB890X",
+        "12764": "AB890X",
+        "12765": "AB890X",
+        "12766": "AB890X",
+        "12767": "AB890X",
+        "12768": "AB890X",
+        "12769": "AB890X",
+        "12770": "AB890X",
+        "12771": "AB890X",
+        "12775": "AB890X",
+        "12776": "AB890X",
+        "12777": "AB890X",
+        "12778": "AB890X",
+        "12779": "AB890X",
+        "12780": "AB890X",
+        "12781": "AB890X",
+        "12783": "AB890X",
+        "12784": "AB890X",
+        "12785": "AB890X",
+        "12786": "AB890X",
+        "12787": "AB890X",
+        "12788": "AB890X",
+        "12789": "AB890X",
+        "12790": "AB890X",
+        "12791": "AB890X",
+        "12792": "AB890X",
+        "12801": "AB890X",
+        "12803": "AB890X",
+        "12804": "AB890X",
+        "12808": "AB890X",
+        "12809": "AB890X",
+        "12810": "AB890X",
+        "12811": "AB890X",
+        "12812": "AB890X",
+        "12814": "AB890X",
+        "12815": "AB890X",
+        "12816": "AB890X",
+        "12817": "AB890X",
+        "12819": "AB890X",
+        "12820": "AB890X",
+        "12821": "AB890X",
+        "12822": "AB890X",
+        "12823": "AB890X",
+        "12824": "AB890X",
+        "12827": "AB890X",
+        "12828": "AB890X",
+        "12831": "AB890X",
+        "12832": "AB890X",
+        "12833": "AB890X",
+        "12834": "AB890X",
+        "12835": "AB890X",
+        "12836": "AB890X",
+        "12837": "AB890X",
+        "12838": "AB890X",
+        "12839": "AB890X",
+        "12841": "AB890X",
+        "12842": "AB890X",
+        "12843": "AB890X",
+        "12844": "AB890X",
+        "12845": "AB890X",
+        "12846": "AB890X",
+        "12847": "AB890X",
+        "12848": "AB890X",
+        "12849": "AB890X",
+        "12850": "AB890X",
+        "12851": "AB890X",
+        "12852": "AB890X",
+        "12853": "AB890X",
+        "12854": "AB890X",
+        "12855": "AB889X",
+        "12856": "AB890X",
+        "12857": "AB890X",
+        "12858": "AB889X",
+        "12859": "AB890X",
+        "12860": "AB890X",
+        "12861": "AB890X",
+        "12862": "AB890X",
+        "12863": "AB890X",
+        "12864": "AB890X",
+        "12865": "AB890X",
+        "12866": "AB890X",
+        "12870": "AB889X",
+        "12871": "AB890X",
+        "12872": "AB889X",
+        "12873": "AB890X",
+        "12874": "AB890X",
+        "12878": "AB890X",
+        "12879": "AB889X",
+        "12883": "AB889X",
+        "12884": "AB890X",
+        "12885": "AB890X",
+        "12886": "AB890X",
+        "12887": "AB890X",
+        "12901": "AB889X",
+        "12903": "AB889X",
+        "12910": "AB889X",
+        "12911": "AB889X",
+        "12912": "AB889X",
+        "12913": "AB889X",
+        "12914": "AB889X",
+        "12915": "AB889X",
+        "12916": "AB889X",
+        "12917": "AB889X",
+        "12918": "AB890X",
+        "12919": "AB889X",
+        "12920": "AB889X",
+        "12921": "AB889X",
+        "12922": "AB889X",
+        "12923": "AB889X",
+        "12924": "AB889X",
+        "12926": "AB889X",
+        "12927": "AB900X",
+        "12928": "AB889X",
+        "12929": "AB889X",
+        "12930": "AB889X",
+        "12932": "AB889X",
+        "12933": "AB889X",
+        "12934": "AB889X",
+        "12935": "AB889X",
+        "12936": "AB889X",
+        "12937": "AB889X",
+        "12939": "AB889X",
+        "12941": "AB889X",
+        "12942": "AB889X",
+        "12943": "AB889X",
+        "12944": "AB889X",
+        "12945": "AB889X",
+        "12946": "AB889X",
+        "12949": "AB889X",
+        "12950": "AB889X",
+        "12952": "AB889X",
+        "12953": "AB889X",
+        "12955": "AB889X",
+        "12956": "AB889X",
+        "12957": "AB889X",
+        "12958": "AB889X",
+        "12959": "AB889X",
+        "12960": "AB889X",
+        "12961": "AB889X",
+        "12962": "AB889X",
+        "12964": "AB889X",
+        "12965": "AB900X",
+        "12966": "AB889X",
+        "12967": "AB900X",
+        "12969": "AB889X",
+        "12970": "AB889X",
+        "12972": "AB889X",
+        "12973": "AB889X",
+        "12974": "AB889X",
+        "12975": "AB889X",
+        "12976": "AB889X",
+        "12977": "AB889X",
+        "12978": "AB889X",
+        "12979": "AB889X",
+        "12980": "AB889X",
+        "12981": "AB889X",
+        "12983": "AB889X",
+        "12985": "AB889X",
+        "12986": "AB900X",
+        "12987": "AB889X",
+        "12989": "AB889X",
+        "12992": "AB889X",
+        "12993": "AB889X",
+        "12995": "AB889X",
+        "12996": "AB889X",
+        "12997": "AB889X",
+        "12998": "AB889X",
+        "13020": "AB900X",
+        "13021": "AB900X",
+        "13022": "AB900X",
+        "13024": "AB900X",
+        "13026": "AB900X",
+        "13027": "AB900X",
+        "13028": "AB900X",
+        "13029": "AB900X",
+        "13030": "AB900X",
+        "13031": "AB900X",
+        "13032": "AB900X",
+        "13033": "AB900X",
+        "13034": "AB900X",
+        "13035": "AB900X",
+        "13036": "AB900X",
+        "13037": "AB900X",
+        "13039": "AB900X",
+        "13040": "AB890X",
+        "13041": "AB900X",
+        "13042": "AB900X",
+        "13043": "AB900X",
+        "13044": "AB900X",
+        "13045": "AB900X",
+        "13051": "AB900X",
+        "13052": "AB900X",
+        "13053": "AB900X",
+        "13054": "AB900X",
+        "13056": "AB890X",
+        "13057": "AB900X",
+        "13060": "AB900X",
+        "13061": "AB900X",
+        "13062": "AB900X",
+        "13063": "AB900X",
+        "13064": "AB900X",
+        "13065": "AB900X",
+        "13066": "AB900X",
+        "13068": "AB900X",
+        "13069": "AB900X",
+        "13071": "AB900X",
+        "13072": "AB900X",
+        "13073": "AB900X",
+        "13074": "AB900X",
+        "13076": "AB900X",
+        "13077": "AB890X",
+        "13078": "AB900X",
+        "13080": "AB900X",
+        "13081": "AB900X",
+        "13082": "AB900X",
+        "13083": "AB900X",
+        "13084": "AB900X",
+        "13087": "AB890X",
+        "13088": "AB900X",
+        "13089": "AB900X",
+        "13090": "AB900X",
+        "13092": "AB900X",
+        "13093": "AB900X",
+        "13101": "AB890X",
+        "13102": "AB900X",
+        "13103": "AB900X",
+        "13104": "AB900X",
+        "13107": "AB900X",
+        "13108": "AB900X",
+        "13110": "AB900X",
+        "13111": "AB900X",
+        "13112": "AB900X",
+        "13113": "AB900X",
+        "13114": "AB900X",
+        "13115": "AB900X",
+        "13116": "AB900X",
+        "13117": "AB900X",
+        "13118": "AB900X",
+        "13119": "AB900X",
+        "13120": "AB900X",
+        "13121": "AB900X",
+        "13122": "AB900X",
+        "13123": "AB900X",
+        "13124": "AB900X",
+        "13126": "AB900X",
+        "13131": "AB900X",
+        "13132": "AB900X",
+        "13134": "AB900X",
+        "13135": "AB900X",
+        "13136": "AB900X",
+        "13137": "AB900X",
+        "13138": "AB900X",
+        "13139": "AB900X",
+        "13140": "AB900X",
+        "13141": "AB890X",
+        "13142": "AB900X",
+        "13143": "AB900X",
+        "13144": "AB900X",
+        "13145": "AB900X",
+        "13146": "AB900X",
+        "13147": "AB900X",
+        "13148": "AB900X",
+        "13152": "AB900X",
+        "13153": "AB900X",
+        "13154": "AB900X",
+        "13155": "AB900X",
+        "13156": "AB900X",
+        "13157": "AB900X",
+        "13158": "AB900X",
+        "13159": "AB900X",
+        "13160": "AB900X",
+        "13162": "AB900X",
+        "13163": "AB900X",
+        "13164": "AB900X",
+        "13165": "AB900X",
+        "13166": "AB900X",
+        "13167": "AB900X",
+        "13201": "AB900X",
+        "13202": "AB900X",
+        "13203": "AB900X",
+        "13204": "AB900X",
+        "13205": "AB900X",
+        "13206": "AB900X",
+        "13207": "AB900X",
+        "13208": "AB900X",
+        "13209": "AB900X",
+        "13210": "AB900X",
+        "13211": "AB900X",
+        "13212": "AB900X",
+        "13214": "AB900X",
+        "13215": "AB900X",
+        "13217": "AB900X",
+        "13218": "AB900X",
+        "13219": "AB900X",
+        "13220": "AB900X",
+        "13221": "AB900X",
+        "13224": "AB900X",
+        "13225": "AB900X",
+        "13235": "AB900X",
+        "13244": "AB900X",
+        "13250": "AB900X",
+        "13251": "AB900X",
+        "13252": "AB900X",
+        "13261": "AB900X",
+        "13290": "AB900X",
+        "13301": "AB900X",
+        "13302": "AB900X",
+        "13303": "AB900X",
+        "13304": "AB900X",
+        "13305": "AB900X",
+        "13308": "AB900X",
+        "13309": "AB900X",
+        "13310": "AB900X",
+        "13312": "AB900X",
+        "13313": "AB900X",
+        "13314": "AB900X",
+        "13315": "AB900X",
+        "13316": "AB900X",
+        "13317": "AB890X",
+        "13318": "AB900X",
+        "13319": "AB900X",
+        "13320": "AB900X",
+        "13321": "AB900X",
+        "13322": "AB900X",
+        "13323": "AB900X",
+        "13324": "AB900X",
+        "13325": "AB900X",
+        "13326": "AB900X",
+        "13327": "AB900X",
+        "13328": "AB900X",
+        "13329": "AB900X",
+        "13331": "AB900X",
+        "13332": "AB890X",
+        "13333": "AB900X",
+        "13334": "AB900X",
+        "13335": "AB900X",
+        "13337": "AB900X",
+        "13338": "AB900X",
+        "13339": "AB890X",
+        "13340": "AB900X",
+        "13341": "AB900X",
+        "13342": "AB900X",
+        "13343": "AB900X",
+        "13345": "AB900X",
+        "13346": "AB900X",
+        "13348": "AB900X",
+        "13350": "AB900X",
+        "13352": "AB900X",
+        "13353": "AB890X",
+        "13354": "AB900X",
+        "13355": "AB900X",
+        "13357": "AB900X",
+        "13360": "AB900X",
+        "13361": "AB900X",
+        "13362": "AB900X",
+        "13363": "AB900X",
+        "13364": "AB900X",
+        "13365": "AB900X",
+        "13367": "AB900X",
+        "13368": "AB900X",
+        "13401": "AB900X",
+        "13402": "AB900X",
+        "13403": "AB900X",
+        "13404": "AB900X",
+        "13406": "AB900X",
+        "13407": "AB900X",
+        "13408": "AB900X",
+        "13409": "AB900X",
+        "13410": "AB900X",
+        "13411": "AB900X",
+        "13413": "AB900X",
+        "13415": "AB900X",
+        "13416": "AB900X",
+        "13417": "AB900X",
+        "13418": "AB900X",
+        "13420": "AB900X",
+        "13421": "AB900X",
+        "13424": "AB900X",
+        "13425": "AB900X",
+        "13426": "AB900X",
+        "13428": "AB890X",
+        "13431": "AB900X",
+        "13433": "AB900X",
+        "13435": "AB900X",
+        "13436": "AB890X",
+        "13437": "AB900X",
+        "13438": "AB900X",
+        "13439": "AB900X",
+        "13440": "AB900X",
+        "13441": "AB900X",
+        "13442": "AB900X",
+        "13449": "AB900X",
+        "13450": "AB900X",
+        "13452": "AB890X",
+        "13454": "AB900X",
+        "13455": "AB900X",
+        "13456": "AB900X",
+        "13457": "AB900X",
+        "13459": "AB890X",
+        "13460": "AB890X",
+        "13461": "AB900X",
+        "13464": "AB890X",
+        "13465": "AB900X",
+        "13468": "AB900X",
+        "13469": "AB900X",
+        "13470": "AB900X",
+        "13471": "AB900X",
+        "13472": "AB900X",
+        "13473": "AB900X",
+        "13475": "AB900X",
+        "13476": "AB900X",
+        "13477": "AB900X",
+        "13478": "AB900X",
+        "13479": "AB900X",
+        "13480": "AB900X",
+        "13482": "AB900X",
+        "13483": "AB900X",
+        "13484": "AB900X",
+        "13485": "AB900X",
+        "13486": "AB900X",
+        "13488": "AB900X",
+        "13489": "AB900X",
+        "13490": "AB900X",
+        "13491": "AB900X",
+        "13492": "AB900X",
+        "13493": "AB900X",
+        "13494": "AB900X",
+        "13495": "AB900X",
+        "13501": "AB900X",
+        "13502": "AB900X",
+        "13503": "AB900X",
+        "13504": "AB900X",
+        "13505": "AB900X",
+        "13599": "AB900X",
+        "13601": "AB900X",
+        "13602": "AB900X",
+        "13603": "AB900X",
+        "13605": "AB900X",
+        "13606": "AB900X",
+        "13607": "AB900X",
+        "13608": "AB900X",
+        "13611": "AB900X",
+        "13612": "AB900X",
+        "13613": "AB900X",
+        "13614": "AB900X",
+        "13615": "AB900X",
+        "13616": "AB900X",
+        "13617": "AB900X",
+        "13618": "AB900X",
+        "13619": "AB900X",
+        "13620": "AB900X",
+        "13621": "AB900X",
+        "13622": "AB900X",
+        "13623": "AB900X",
+        "13624": "AB900X",
+        "13625": "AB900X",
+        "13626": "AB900X",
+        "13627": "AB900X",
+        "13628": "AB900X",
+        "13630": "AB900X",
+        "13631": "AB900X",
+        "13632": "AB900X",
+        "13633": "AB900X",
+        "13634": "AB900X",
+        "13635": "AB900X",
+        "13636": "AB900X",
+        "13637": "AB900X",
+        "13638": "AB900X",
+        "13639": "AB900X",
+        "13640": "AB900X",
+        "13641": "AB900X",
+        "13642": "AB900X",
+        "13643": "AB900X",
+        "13645": "AB900X",
+        "13646": "AB900X",
+        "13647": "AB900X",
+        "13648": "AB900X",
+        "13649": "AB900X",
+        "13650": "AB900X",
+        "13651": "AB900X",
+        "13652": "AB900X",
+        "13654": "AB900X",
+        "13655": "AB900X",
+        "13656": "AB900X",
+        "13657": "AB900X",
+        "13658": "AB900X",
+        "13659": "AB900X",
+        "13660": "AB900X",
+        "13661": "AB900X",
+        "13662": "AB900X",
+        "13664": "AB900X",
+        "13665": "AB900X",
+        "13666": "AB900X",
+        "13667": "AB900X",
+        "13668": "AB900X",
+        "13669": "AB900X",
+        "13670": "AB900X",
+        "13671": "AB900X",
+        "13672": "AB900X",
+        "13673": "AB900X",
+        "13674": "AB900X",
+        "13675": "AB900X",
+        "13676": "AB900X",
+        "13677": "AB900X",
+        "13678": "AB900X",
+        "13679": "AB900X",
+        "13680": "AB900X",
+        "13681": "AB900X",
+        "13682": "AB900X",
+        "13683": "AB900X",
+        "13684": "AB900X",
+        "13685": "AB900X",
+        "13687": "AB900X",
+        "13690": "AB900X",
+        "13691": "AB900X",
+        "13692": "AB900X",
+        "13693": "AB900X",
+        "13694": "AB900X",
+        "13695": "AB900X",
+        "13696": "AB900X",
+        "13697": "AB900X",
+        "13699": "AB900X",
+        "13730": "AB890X",
+        "13731": "AB900X",
+        "13732": "AB890X",
+        "13733": "AB890X",
+        "13734": "AB890X",
+        "13736": "AB890X",
+        "13737": "AB890X",
+        "13738": "AB890X",
+        "13739": "AB900X",
+        "13740": "AB900X",
+        "13743": "AB890X",
+        "13744": "AB890X",
+        "13745": "AB890X",
+        "13746": "AB890X",
+        "13747": "AB900X",
+        "13748": "AB890X",
+        "13749": "AB890X",
+        "13750": "AB900X",
+        "13751": "AB900X",
+        "13752": "AB900X",
+        "13753": "AB900X",
+        "13754": "AB890X",
+        "13755": "AB890X",
+        "13756": "AB890X",
+        "13757": "AB900X",
+        "13758": "AB890X",
+        "13760": "AB890X",
+        "13761": "AB890X",
+        "13762": "AB890X",
+        "13763": "AB890X",
+        "13774": "AB900X",
+        "13775": "AB900X",
+        "13776": "AB900X",
+        "13777": "AB890X",
+        "13778": "AB890X",
+        "13780": "AB890X",
+        "13782": "AB900X",
+        "13783": "AB890X",
+        "13784": "AB890X",
+        "13786": "AB900X",
+        "13787": "AB890X",
+        "13788": "AB900X",
+        "13790": "AB890X",
+        "13794": "AB890X",
+        "13795": "AB890X",
+        "13796": "AB900X",
+        "13797": "AB890X",
+        "13801": "AB890X",
+        "13802": "AB890X",
+        "13803": "AB890X",
+        "13804": "AB900X",
+        "13806": "AB900X",
+        "13807": "AB900X",
+        "13808": "AB900X",
+        "13809": "AB900X",
+        "13810": "AB900X",
+        "13811": "AB890X",
+        "13812": "AB890X",
+        "13813": "AB890X",
+        "13814": "AB890X",
+        "13815": "AB890X",
+        "13820": "AB900X",
+        "13825": "AB900X",
+        "13826": "AB890X",
+        "13827": "AB890X",
+        "13830": "AB890X",
+        "13832": "AB890X",
+        "13833": "AB890X",
+        "13834": "AB900X",
+        "13835": "AB890X",
+        "13837": "AB900X",
+        "13838": "AB900X",
+        "13839": "AB900X",
+        "13840": "AB890X",
+        "13841": "AB890X",
+        "13842": "AB900X",
+        "13843": "AB900X",
+        "13844": "AB890X",
+        "13845": "AB890X",
+        "13846": "AB900X",
+        "13847": "AB900X",
+        "13848": "AB890X",
+        "13849": "AB900X",
+        "13850": "AB890X",
+        "13851": "AB890X",
+        "13856": "AB900X",
+        "13859": "AB900X",
+        "13860": "AB900X",
+        "13861": "AB900X",
+        "13862": "AB890X",
+        "13863": "AB890X",
+        "13864": "AB890X",
+        "13865": "AB890X",
+        "13901": "AB890X",
+        "13902": "AB890X",
+        "13903": "AB890X",
+        "13904": "AB890X",
+        "13905": "AB890X",
+        "14001": "AB900X",
+        "14004": "AB900X",
+        "14005": "AB900X",
+        "14006": "AB900X",
+        "14008": "AB900X",
+        "14009": "AB900X",
+        "14010": "AB900X",
+        "14011": "AB900X",
+        "14012": "AB900X",
+        "14013": "AB900X",
+        "14020": "AB900X",
+        "14021": "AB900X",
+        "14024": "AB900X",
+        "14025": "AB900X",
+        "14026": "AB900X",
+        "14027": "AB900X",
+        "14028": "AB900X",
+        "14029": "AB900X",
+        "14030": "AB900X",
+        "14031": "AB900X",
+        "14032": "AB900X",
+        "14033": "AB900X",
+        "14034": "AB900X",
+        "14035": "AB900X",
+        "14036": "AB900X",
+        "14037": "AB900X",
+        "14038": "AB900X",
+        "14039": "AB900X",
+        "14040": "AB900X",
+        "14041": "AB900X",
+        "14042": "AB900X",
+        "14043": "AB900X",
+        "14047": "AB900X",
+        "14048": "AB900X",
+        "14051": "AB900X",
+        "14052": "AB900X",
+        "14054": "AB900X",
+        "14055": "AB900X",
+        "14056": "AB900X",
+        "14057": "AB900X",
+        "14058": "AB900X",
+        "14059": "AB900X",
+        "14060": "AB900X",
+        "14061": "AB900X",
+        "14062": "AB900X",
+        "14063": "AB900X",
+        "14065": "AB900X",
+        "14066": "AB900X",
+        "14067": "AB900X",
+        "14068": "AB900X",
+        "14069": "AB900X",
+        "14070": "AB900X",
+        "14072": "AB900X",
+        "14075": "AB900X",
+        "14080": "AB900X",
+        "14081": "AB900X",
+        "14082": "AB900X",
+        "14083": "AB900X",
+        "14085": "AB900X",
+        "14086": "AB900X",
+        "14091": "AB900X",
+        "14092": "AB900X",
+        "14094": "AB900X",
+        "14095": "AB900X",
+        "14098": "AB900X",
+        "14101": "AB900X",
+        "14102": "AB900X",
+        "14103": "AB900X",
+        "14105": "AB900X",
+        "14107": "AB900X",
+        "14108": "AB900X",
+        "14109": "AB900X",
+        "14110": "AB900X",
+        "14111": "AB900X",
+        "14112": "AB900X",
+        "14113": "AB900X",
+        "14120": "AB900X",
+        "14125": "AB900X",
+        "14126": "AB900X",
+        "14127": "AB900X",
+        "14129": "AB900X",
+        "14130": "AB900X",
+        "14131": "AB900X",
+        "14132": "AB900X",
+        "14133": "AB900X",
+        "14134": "AB900X",
+        "14135": "AB900X",
+        "14136": "AB900X",
+        "14138": "AB900X",
+        "14139": "AB900X",
+        "14140": "AB900X",
+        "14141": "AB900X",
+        "14143": "AB900X",
+        "14144": "AB900X",
+        "14145": "AB900X",
+        "14150": "AB900X",
+        "14151": "AB900X",
+        "14166": "AB900X",
+        "14167": "AB900X",
+        "14168": "AB900X",
+        "14169": "AB900X",
+        "14170": "AB900X",
+        "14171": "AB900X",
+        "14172": "AB900X",
+        "14173": "AB900X",
+        "14174": "AB900X",
+        "14201": "AB900X",
+        "14202": "AB900X",
+        "14203": "AB900X",
+        "14204": "AB900X",
+        "14205": "AB900X",
+        "14206": "AB900X",
+        "14207": "AB900X",
+        "14208": "AB900X",
+        "14209": "AB900X",
+        "14210": "AB900X",
+        "14211": "AB900X",
+        "14212": "AB900X",
+        "14213": "AB900X",
+        "14214": "AB900X",
+        "14215": "AB900X",
+        "14216": "AB900X",
+        "14217": "AB900X",
+        "14218": "AB900X",
+        "14219": "AB900X",
+        "14220": "AB900X",
+        "14221": "AB900X",
+        "14222": "AB900X",
+        "14223": "AB900X",
+        "14224": "AB900X",
+        "14225": "AB900X",
+        "14226": "AB900X",
+        "14227": "AB900X",
+        "14228": "AB900X",
+        "14231": "AB900X",
+        "14233": "AB900X",
+        "14240": "AB900X",
+        "14241": "AB900X",
+        "14260": "AB900X",
+        "14261": "AB900X",
+        "14263": "AB900X",
+        "14264": "AB900X",
+        "14265": "AB900X",
+        "14267": "AB900X",
+        "14269": "AB900X",
+        "14270": "AB900X",
+        "14272": "AB900X",
+        "14273": "AB900X",
+        "14276": "AB900X",
+        "14280": "AB900X",
+        "14301": "AB900X",
+        "14302": "AB900X",
+        "14303": "AB900X",
+        "14304": "AB900X",
+        "14305": "AB900X",
+        "14410": "AB900X",
+        "14411": "AB900X",
+        "14413": "AB900X",
+        "14414": "AB900X",
+        "14415": "AB900X",
+        "14416": "AB900X",
+        "14418": "AB900X",
+        "14420": "AB900X",
+        "14422": "AB900X",
+        "14423": "AB900X",
+        "14424": "AB900X",
+        "14425": "AB900X",
+        "14427": "AB900X",
+        "14428": "AB900X",
+        "14429": "AB900X",
+        "14430": "AB900X",
+        "14432": "AB900X",
+        "14433": "AB900X",
+        "14435": "AB900X",
+        "14437": "AB900X",
+        "14441": "AB900X",
+        "14443": "AB900X",
+        "14445": "AB900X",
+        "14449": "AB900X",
+        "14450": "AB900X",
+        "14452": "AB900X",
+        "14453": "AB900X",
+        "14454": "AB900X",
+        "14456": "AB900X",
+        "14461": "AB900X",
+        "14462": "AB900X",
+        "14463": "AB900X",
+        "14464": "AB900X",
+        "14466": "AB900X",
+        "14467": "AB900X",
+        "14468": "AB900X",
+        "14469": "AB900X",
+        "14470": "AB900X",
+        "14471": "AB900X",
+        "14472": "AB900X",
+        "14475": "AB900X",
+        "14476": "AB900X",
+        "14477": "AB900X",
+        "14478": "AB900X",
+        "14479": "AB900X",
+        "14480": "AB900X",
+        "14481": "AB900X",
+        "14482": "AB900X",
+        "14485": "AB900X",
+        "14486": "AB900X",
+        "14487": "AB900X",
+        "14488": "AB900X",
+        "14489": "AB900X",
+        "14502": "AB900X",
+        "14504": "AB900X",
+        "14505": "AB900X",
+        "14506": "AB900X",
+        "14507": "AB900X",
+        "14508": "AB900X",
+        "14510": "AB900X",
+        "14511": "AB900X",
+        "14512": "AB900X",
+        "14513": "AB900X",
+        "14514": "AB900X",
+        "14515": "AB900X",
+        "14516": "AB900X",
+        "14517": "AB900X",
+        "14518": "AB900X",
+        "14519": "AB900X",
+        "14520": "AB900X",
+        "14521": "AB900X",
+        "14522": "AB900X",
+        "14525": "AB900X",
+        "14526": "AB900X",
+        "14527": "AB900X",
+        "14529": "AB890X",
+        "14530": "AB900X",
+        "14532": "AB900X",
+        "14533": "AB900X",
+        "14534": "AB900X",
+        "14536": "AB900X",
+        "14537": "AB900X",
+        "14538": "AB900X",
+        "14539": "AB900X",
+        "14541": "AB900X",
+        "14542": "AB900X",
+        "14543": "AB900X",
+        "14544": "AB900X",
+        "14545": "AB900X",
+        "14546": "AB900X",
+        "14547": "AB900X",
+        "14548": "AB900X",
+        "14549": "AB900X",
+        "14550": "AB900X",
+        "14551": "AB900X",
+        "14555": "AB900X",
+        "14556": "AB900X",
+        "14557": "AB900X",
+        "14558": "AB900X",
+        "14559": "AB900X",
+        "14560": "AB900X",
+        "14561": "AB900X",
+        "14563": "AB900X",
+        "14564": "AB900X",
+        "14568": "AB900X",
+        "14569": "AB900X",
+        "14571": "AB900X",
+        "14572": "AB900X",
+        "14580": "AB900X",
+        "14585": "AB900X",
+        "14586": "AB900X",
+        "14588": "AB900X",
+        "14589": "AB900X",
+        "14590": "AB900X",
+        "14591": "AB900X",
+        "14592": "AB900X",
+        "14602": "AB900X",
+        "14603": "AB900X",
+        "14604": "AB900X",
+        "14605": "AB900X",
+        "14606": "AB900X",
+        "14607": "AB900X",
+        "14608": "AB900X",
+        "14609": "AB900X",
+        "14610": "AB900X",
+        "14611": "AB900X",
+        "14612": "AB900X",
+        "14613": "AB900X",
+        "14614": "AB900X",
+        "14615": "AB900X",
+        "14616": "AB900X",
+        "14617": "AB900X",
+        "14618": "AB900X",
+        "14619": "AB900X",
+        "14620": "AB900X",
+        "14621": "AB900X",
+        "14622": "AB900X",
+        "14623": "AB900X",
+        "14624": "AB900X",
+        "14625": "AB900X",
+        "14626": "AB900X",
+        "14627": "AB900X",
+        "14638": "AB900X",
+        "14639": "AB900X",
+        "14642": "AB900X",
+        "14643": "AB900X",
+        "14644": "AB900X",
+        "14645": "AB900X",
+        "14646": "AB900X",
+        "14647": "AB900X",
+        "14649": "AB900X",
+        "14650": "AB900X",
+        "14651": "AB900X",
+        "14652": "AB900X",
+        "14653": "AB900X",
+        "14664": "AB900X",
+        "14673": "AB900X",
+        "14683": "AB900X",
+        "14692": "AB900X",
+        "14694": "AB900X",
+        "14701": "AB900X",
+        "14702": "AB900X",
+        "14706": "AB900X",
+        "14707": "AB900X",
+        "14708": "AB900X",
+        "14709": "AB900X",
+        "14710": "AB900X",
+        "14711": "AB900X",
+        "14712": "AB900X",
+        "14714": "AB900X",
+        "14715": "AB900X",
+        "14716": "AB900X",
+        "14717": "AB900X",
+        "14718": "AB900X",
+        "14719": "AB900X",
+        "14720": "AB900X",
+        "14721": "AB900X",
+        "14722": "AB900X",
+        "14723": "AB900X",
+        "14724": "AB900X",
+        "14726": "AB900X",
+        "14727": "AB900X",
+        "14728": "AB900X",
+        "14729": "AB900X",
+        "14730": "AB900X",
+        "14731": "AB900X",
+        "14732": "AB900X",
+        "14733": "AB900X",
+        "14735": "AB900X",
+        "14736": "AB900X",
+        "14737": "AB900X",
+        "14738": "AB900X",
+        "14739": "AB900X",
+        "14740": "AB900X",
+        "14741": "AB900X",
+        "14742": "AB900X",
+        "14743": "AB900X",
+        "14744": "AB900X",
+        "14745": "AB900X",
+        "14747": "AB900X",
+        "14748": "AB900X",
+        "14750": "AB900X",
+        "14751": "AB900X",
+        "14752": "AB900X",
+        "14753": "AB900X",
+        "14754": "AB900X",
+        "14755": "AB900X",
+        "14756": "AB900X",
+        "14757": "AB900X",
+        "14758": "AB900X",
+        "14760": "AB900X",
+        "14762": "AB900X",
+        "14766": "AB900X",
+        "14767": "AB900X",
+        "14769": "AB900X",
+        "14770": "AB900X",
+        "14772": "AB900X",
+        "14774": "AB900X",
+        "14775": "AB900X",
+        "14777": "AB900X",
+        "14778": "AB900X",
+        "14779": "AB900X",
+        "14781": "AB900X",
+        "14782": "AB900X",
+        "14783": "AB900X",
+        "14784": "AB900X",
+        "14785": "AB900X",
+        "14786": "AB900X",
+        "14787": "AB900X",
+        "14788": "AB900X",
+        "14801": "AB890X",
+        "14802": "AB900X",
+        "14803": "AB900X",
+        "14804": "AB900X",
+        "14805": "AB890X",
+        "14806": "AB900X",
+        "14807": "AB900X",
+        "14808": "AB900X",
+        "14809": "AB900X",
+        "14810": "AB890X",
+        "14812": "AB890X",
+        "14813": "AB900X",
+        "14814": "AB890X",
+        "14815": "AB890X",
+        "14816": "AB890X",
+        "14817": "AB900X",
+        "14818": "AB890X",
+        "14819": "AB890X",
+        "14820": "AB890X",
+        "14821": "AB890X",
+        "14822": "AB900X",
+        "14823": "AB890X",
+        "14824": "AB890X",
+        "14825": "AB890X",
+        "14826": "AB900X",
+        "14827": "AB890X",
+        "14830": "AB890X",
+        "14831": "AB890X",
+        "14836": "AB900X",
+        "14837": "AB900X",
+        "14838": "AB890X",
+        "14839": "AB890X",
+        "14840": "AB890X",
+        "14841": "AB890X",
+        "14842": "AB900X",
+        "14843": "AB890X",
+        "14845": "AB890X",
+        "14846": "AB900X",
+        "14847": "AB900X",
+        "14850": "AB900X",
+        "14851": "AB900X",
+        "14852": "AB900X",
+        "14853": "AB900X",
+        "14854": "AB900X",
+        "14855": "AB890X",
+        "14856": "AB890X",
+        "14857": "AB900X",
+        "14858": "AB890X",
+        "14859": "AB890X",
+        "14860": "AB900X",
+        "14861": "AB890X",
+        "14863": "AB890X",
+        "14864": "AB890X",
+        "14865": "AB890X",
+        "14867": "AB900X",
+        "14869": "AB890X",
+        "14870": "AB890X",
+        "14871": "AB890X",
+        "14872": "AB890X",
+        "14873": "AB890X",
+        "14874": "AB890X",
+        "14876": "AB890X",
+        "14877": "AB890X",
+        "14878": "AB900X",
+        "14879": "AB890X",
+        "14880": "AB900X",
+        "14881": "AB900X",
+        "14882": "AB900X",
+        "14883": "AB890X",
+        "14884": "AB900X",
+        "14885": "AB890X",
+        "14886": "AB900X",
+        "14887": "AB890X",
+        "14889": "AB890X",
+        "14891": "AB890X",
+        "14892": "AB890X",
+        "14893": "AB890X",
+        "14894": "AB890X",
+        "14895": "AB900X",
+        "14897": "AB900X",
+        "14898": "AB890X",
+        "14901": "AB890X",
+        "14902": "AB890X",
+        "14903": "AB890X",
+        "14904": "AB890X",
+        "14905": "AB890X",
+        "14925": "AB890X",
+        "15001": "AB900X",
+        "15003": "AB900X",
+        "15004": "AB900X",
+        "15005": "AB900X",
+        "15006": "AB900X",
+        "15007": "AB900X",
+        "15009": "AB900X",
+        "15010": "AB900X",
+        "15012": "AB900X",
+        "15014": "AB900X",
+        "15015": "AB900X",
+        "15017": "AB900X",
+        "15018": "AB900X",
+        "15019": "AB900X",
+        "15020": "AB900X",
+        "15021": "AB900X",
+        "15022": "AB900X",
+        "15024": "AB900X",
+        "15025": "AB900X",
+        "15026": "AB900X",
+        "15027": "AB900X",
+        "15028": "AB900X",
+        "15030": "AB900X",
+        "15031": "AB900X",
+        "15032": "AB900X",
+        "15033": "AB900X",
+        "15034": "AB900X",
+        "15035": "AB900X",
+        "15037": "AB900X",
+        "15038": "AB900X",
+        "15042": "AB900X",
+        "15043": "AB900X",
+        "15044": "AB900X",
+        "15045": "AB900X",
+        "15046": "AB900X",
+        "15047": "AB900X",
+        "15049": "AB900X",
+        "15050": "AB900X",
+        "15051": "AB900X",
+        "15052": "AB900X",
+        "15053": "AB900X",
+        "15054": "AB900X",
+        "15055": "AB900X",
+        "15056": "AB900X",
+        "15057": "AB900X",
+        "15059": "AB900X",
+        "15060": "AB900X",
+        "15061": "AB900X",
+        "15062": "AB900X",
+        "15063": "AB900X",
+        "15064": "AB900X",
+        "15065": "AB900X",
+        "15066": "AB900X",
+        "15067": "AB900X",
+        "15068": "AB900X",
+        "15069": "AB900X",
+        "15071": "AB900X",
+        "15072": "AB900X",
+        "15074": "AB900X",
+        "15075": "AB900X",
+        "15076": "AB900X",
+        "15077": "AB900X",
+        "15078": "AB900X",
+        "15081": "AB900X",
+        "15082": "AB900X",
+        "15083": "AB900X",
+        "15084": "AB900X",
+        "15085": "AB900X",
+        "15086": "AB900X",
+        "15087": "AB900X",
+        "15088": "AB900X",
+        "15089": "AB900X",
+        "15090": "AB900X",
+        "15091": "AB900X",
+        "15095": "AB900X",
+        "15096": "AB900X",
+        "15101": "AB900X",
+        "15102": "AB900X",
+        "15104": "AB900X",
+        "15106": "AB900X",
+        "15108": "AB900X",
+        "15110": "AB900X",
+        "15112": "AB900X",
+        "15116": "AB900X",
+        "15120": "AB900X",
+        "15122": "AB900X",
+        "15123": "AB900X",
+        "15126": "AB900X",
+        "15127": "AB900X",
+        "15129": "AB900X",
+        "15131": "AB900X",
+        "15132": "AB900X",
+        "15133": "AB900X",
+        "15134": "AB900X",
+        "15135": "AB900X",
+        "15136": "AB900X",
+        "15137": "AB900X",
+        "15139": "AB900X",
+        "15140": "AB900X",
+        "15142": "AB900X",
+        "15143": "AB900X",
+        "15144": "AB900X",
+        "15145": "AB900X",
+        "15146": "AB900X",
+        "15147": "AB900X",
+        "15148": "AB900X",
+        "15201": "AB900X",
+        "15202": "AB900X",
+        "15203": "AB900X",
+        "15204": "AB900X",
+        "15205": "AB900X",
+        "15206": "AB900X",
+        "15207": "AB900X",
+        "15208": "AB900X",
+        "15209": "AB900X",
+        "15210": "AB900X",
+        "15211": "AB900X",
+        "15212": "AB900X",
+        "15213": "AB900X",
+        "15214": "AB900X",
+        "15215": "AB900X",
+        "15216": "AB900X",
+        "15217": "AB900X",
+        "15218": "AB900X",
+        "15219": "AB900X",
+        "15220": "AB900X",
+        "15221": "AB900X",
+        "15222": "AB900X",
+        "15223": "AB900X",
+        "15224": "AB900X",
+        "15225": "AB900X",
+        "15226": "AB900X",
+        "15227": "AB900X",
+        "15228": "AB900X",
+        "15229": "AB900X",
+        "15230": "AB900X",
+        "15231": "AB900X",
+        "15232": "AB900X",
+        "15233": "AB900X",
+        "15234": "AB900X",
+        "15235": "AB900X",
+        "15236": "AB900X",
+        "15237": "AB900X",
+        "15238": "AB900X",
+        "15239": "AB900X",
+        "15240": "AB900X",
+        "15241": "AB900X",
+        "15242": "AB900X",
+        "15243": "AB900X",
+        "15244": "AB900X",
+        "15250": "AB900X",
+        "15251": "AB900X",
+        "15252": "AB900X",
+        "15253": "AB900X",
+        "15254": "AB900X",
+        "15255": "AB900X",
+        "15257": "AB900X",
+        "15258": "AB900X",
+        "15259": "AB900X",
+        "15260": "AB900X",
+        "15261": "AB900X",
+        "15262": "AB900X",
+        "15263": "AB900X",
+        "15264": "AB900X",
+        "15265": "AB900X",
+        "15267": "AB900X",
+        "15268": "AB900X",
+        "15270": "AB900X",
+        "15272": "AB900X",
+        "15274": "AB900X",
+        "15275": "AB900X",
+        "15276": "AB900X",
+        "15277": "AB900X",
+        "15278": "AB900X",
+        "15279": "AB900X",
+        "15281": "AB900X",
+        "15282": "AB900X",
+        "15283": "AB900X",
+        "15285": "AB900X",
+        "15286": "AB900X",
+        "15289": "AB900X",
+        "15290": "AB900X",
+        "15295": "AB900X",
+        "15301": "AB900X",
+        "15310": "AB900X",
+        "15311": "AB900X",
+        "15312": "AB900X",
+        "15313": "AB900X",
+        "15314": "AB900X",
+        "15315": "AB900X",
+        "15316": "AB900X",
+        "15317": "AB900X",
+        "15320": "AB900X",
+        "15321": "AB900X",
+        "15322": "AB900X",
+        "15323": "AB900X",
+        "15324": "AB900X",
+        "15325": "AB900X",
+        "15327": "AB900X",
+        "15329": "AB900X",
+        "15330": "AB900X",
+        "15331": "AB900X",
+        "15332": "AB900X",
+        "15333": "AB900X",
+        "15334": "AB900X",
+        "15336": "AB900X",
+        "15337": "AB900X",
+        "15338": "AB900X",
+        "15339": "AB900X",
+        "15340": "AB900X",
+        "15341": "AB900X",
+        "15342": "AB900X",
+        "15344": "AB900X",
+        "15345": "AB900X",
+        "15346": "AB900X",
+        "15347": "AB900X",
+        "15348": "AB900X",
+        "15349": "AB900X",
+        "15350": "AB900X",
+        "15351": "AB900X",
+        "15352": "AB900X",
+        "15353": "AB900X",
+        "15357": "AB900X",
+        "15358": "AB900X",
+        "15359": "AB900X",
+        "15360": "AB900X",
+        "15361": "AB900X",
+        "15362": "AB900X",
+        "15363": "AB900X",
+        "15364": "AB900X",
+        "15365": "AB900X",
+        "15366": "AB900X",
+        "15367": "AB900X",
+        "15368": "AB900X",
+        "15370": "AB900X",
+        "15376": "AB900X",
+        "15377": "AB900X",
+        "15378": "AB900X",
+        "15379": "AB900X",
+        "15380": "AB900X",
+        "15401": "AB900X",
+        "15410": "AB900X",
+        "15411": "AB900X",
+        "15412": "AB900X",
+        "15413": "AB900X",
+        "15415": "AB900X",
+        "15416": "AB900X",
+        "15417": "AB900X",
+        "15419": "AB900X",
+        "15420": "AB900X",
+        "15421": "AB900X",
+        "15422": "AB900X",
+        "15423": "AB900X",
+        "15424": "AB900X",
+        "15425": "AB900X",
+        "15427": "AB900X",
+        "15428": "AB900X",
+        "15429": "AB900X",
+        "15430": "AB900X",
+        "15431": "AB900X",
+        "15432": "AB900X",
+        "15433": "AB900X",
+        "15434": "AB900X",
+        "15435": "AB900X",
+        "15436": "AB900X",
+        "15437": "AB900X",
+        "15438": "AB900X",
+        "15439": "AB900X",
+        "15440": "AB900X",
+        "15442": "AB900X",
+        "15443": "AB900X",
+        "15444": "AB900X",
+        "15445": "AB900X",
+        "15446": "AB900X",
+        "15447": "AB900X",
+        "15448": "AB900X",
+        "15449": "AB900X",
+        "15450": "AB900X",
+        "15451": "AB900X",
+        "15454": "AB900X",
+        "15455": "AB900X",
+        "15456": "AB900X",
+        "15458": "AB900X",
+        "15459": "AB900X",
+        "15460": "AB900X",
+        "15461": "AB900X",
+        "15462": "AB900X",
+        "15463": "AB900X",
+        "15464": "AB900X",
+        "15465": "AB900X",
+        "15466": "AB900X",
+        "15467": "AB900X",
+        "15468": "AB900X",
+        "15469": "AB900X",
+        "15470": "AB900X",
+        "15472": "AB900X",
+        "15473": "AB900X",
+        "15474": "AB900X",
+        "15475": "AB900X",
+        "15476": "AB900X",
+        "15477": "AB900X",
+        "15478": "AB900X",
+        "15479": "AB900X",
+        "15480": "AB900X",
+        "15482": "AB900X",
+        "15483": "AB900X",
+        "15484": "AB900X",
+        "15485": "AB900X",
+        "15486": "AB900X",
+        "15488": "AB900X",
+        "15489": "AB900X",
+        "15490": "AB900X",
+        "15492": "AB900X",
+        "15501": "AB900X",
+        "15502": "AB900X",
+        "15510": "AB900X",
+        "15520": "AB900X",
+        "15521": "AB900X",
+        "15522": "AB900X",
+        "15530": "AB900X",
+        "15531": "AB900X",
+        "15532": "AB900X",
+        "15533": "AB900X",
+        "15534": "AB900X",
+        "15535": "AB900X",
+        "15536": "AB892X",
+        "15537": "AB900X",
+        "15538": "AB900X",
+        "15539": "AB900X",
+        "15540": "AB900X",
+        "15541": "AB900X",
+        "15542": "AB900X",
+        "15544": "AB900X",
+        "15545": "AB900X",
+        "15546": "AB900X",
+        "15547": "AB900X",
+        "15548": "AB900X",
+        "15549": "AB900X",
+        "15550": "AB900X",
+        "15551": "AB900X",
+        "15552": "AB900X",
+        "15553": "AB900X",
+        "15554": "AB900X",
+        "15555": "AB900X",
+        "15557": "AB900X",
+        "15558": "AB900X",
+        "15559": "AB900X",
+        "15560": "AB900X",
+        "15561": "AB900X",
+        "15562": "AB900X",
+        "15563": "AB900X",
+        "15564": "AB900X",
+        "15565": "AB900X",
+        "15601": "AB900X",
+        "15605": "AB900X",
+        "15606": "AB900X",
+        "15610": "AB900X",
+        "15611": "AB900X",
+        "15612": "AB900X",
+        "15613": "AB900X",
+        "15615": "AB900X",
+        "15616": "AB900X",
+        "15617": "AB900X",
+        "15618": "AB900X",
+        "15619": "AB900X",
+        "15620": "AB900X",
+        "15621": "AB900X",
+        "15622": "AB900X",
+        "15623": "AB900X",
+        "15624": "AB900X",
+        "15625": "AB900X",
+        "15626": "AB900X",
+        "15627": "AB900X",
+        "15628": "AB900X",
+        "15629": "AB900X",
+        "15631": "AB900X",
+        "15632": "AB900X",
+        "15633": "AB900X",
+        "15634": "AB900X",
+        "15635": "AB900X",
+        "15636": "AB900X",
+        "15637": "AB900X",
+        "15638": "AB900X",
+        "15639": "AB900X",
+        "15640": "AB900X",
+        "15641": "AB900X",
+        "15642": "AB900X",
+        "15644": "AB900X",
+        "15646": "AB900X",
+        "15647": "AB900X",
+        "15650": "AB900X",
+        "15655": "AB900X",
+        "15656": "AB900X",
+        "15658": "AB900X",
+        "15660": "AB900X",
+        "15661": "AB900X",
+        "15662": "AB900X",
+        "15663": "AB900X",
+        "15664": "AB900X",
+        "15665": "AB900X",
+        "15666": "AB900X",
+        "15668": "AB900X",
+        "15670": "AB900X",
+        "15671": "AB900X",
+        "15672": "AB900X",
+        "15673": "AB900X",
+        "15674": "AB900X",
+        "15675": "AB900X",
+        "15676": "AB900X",
+        "15677": "AB900X",
+        "15678": "AB900X",
+        "15679": "AB900X",
+        "15680": "AB900X",
+        "15681": "AB900X",
+        "15682": "AB900X",
+        "15683": "AB900X",
+        "15684": "AB900X",
+        "15685": "AB900X",
+        "15686": "AB900X",
+        "15687": "AB900X",
+        "15688": "AB900X",
+        "15689": "AB900X",
+        "15690": "AB900X",
+        "15691": "AB900X",
+        "15692": "AB900X",
+        "15693": "AB900X",
+        "15695": "AB900X",
+        "15696": "AB900X",
+        "15697": "AB900X",
+        "15698": "AB900X",
+        "15701": "AB900X",
+        "15705": "AB900X",
+        "15710": "AB900X",
+        "15711": "AB900X",
+        "15712": "AB900X",
+        "15713": "AB900X",
+        "15714": "AB900X",
+        "15715": "AB900X",
+        "15716": "AB900X",
+        "15717": "AB900X",
+        "15720": "AB900X",
+        "15721": "AB900X",
+        "15722": "AB900X",
+        "15723": "AB900X",
+        "15724": "AB900X",
+        "15725": "AB900X",
+        "15727": "AB900X",
+        "15728": "AB900X",
+        "15729": "AB900X",
+        "15730": "AB900X",
+        "15731": "AB900X",
+        "15732": "AB900X",
+        "15733": "AB900X",
+        "15734": "AB900X",
+        "15736": "AB900X",
+        "15737": "AB900X",
+        "15738": "AB900X",
+        "15739": "AB900X",
+        "15740": "AB900X",
+        "15741": "AB900X",
+        "15742": "AB900X",
+        "15744": "AB900X",
+        "15745": "AB900X",
+        "15746": "AB900X",
+        "15747": "AB900X",
+        "15748": "AB900X",
+        "15750": "AB900X",
+        "15752": "AB900X",
+        "15753": "AB900X",
+        "15754": "AB900X",
+        "15756": "AB900X",
+        "15757": "AB900X",
+        "15758": "AB900X",
+        "15759": "AB900X",
+        "15760": "AB900X",
+        "15761": "AB900X",
+        "15762": "AB900X",
+        "15763": "AB900X",
+        "15764": "AB900X",
+        "15765": "AB900X",
+        "15767": "AB900X",
+        "15770": "AB900X",
+        "15771": "AB900X",
+        "15772": "AB900X",
+        "15773": "AB900X",
+        "15774": "AB900X",
+        "15775": "AB900X",
+        "15776": "AB900X",
+        "15777": "AB900X",
+        "15778": "AB900X",
+        "15779": "AB900X",
+        "15780": "AB900X",
+        "15781": "AB900X",
+        "15783": "AB900X",
+        "15784": "AB900X",
+        "15801": "AB900X",
+        "15821": "AB900X",
+        "15822": "AB900X",
+        "15823": "AB900X",
+        "15824": "AB900X",
+        "15825": "AB900X",
+        "15827": "AB900X",
+        "15828": "AB900X",
+        "15829": "AB900X",
+        "15831": "AB900X",
+        "15832": "AB900X",
+        "15834": "AB900X",
+        "15840": "AB900X",
+        "15841": "AB900X",
+        "15845": "AB900X",
+        "15846": "AB900X",
+        "15847": "AB900X",
+        "15848": "AB900X",
+        "15849": "AB900X",
+        "15851": "AB900X",
+        "15853": "AB900X",
+        "15856": "AB900X",
+        "15857": "AB900X",
+        "15860": "AB900X",
+        "15861": "AB900X",
+        "15863": "AB900X",
+        "15864": "AB900X",
+        "15865": "AB900X",
+        "15866": "AB900X",
+        "15868": "AB900X",
+        "15870": "AB900X",
+        "15901": "AB900X",
+        "15902": "AB900X",
+        "15904": "AB900X",
+        "15905": "AB900X",
+        "15906": "AB900X",
+        "15907": "AB900X",
+        "15909": "AB900X",
+        "15915": "AB900X",
+        "15920": "AB900X",
+        "15921": "AB900X",
+        "15922": "AB900X",
+        "15923": "AB900X",
+        "15924": "AB900X",
+        "15925": "AB900X",
+        "15926": "AB900X",
+        "15927": "AB900X",
+        "15928": "AB900X",
+        "15929": "AB900X",
+        "15930": "AB900X",
+        "15931": "AB900X",
+        "15934": "AB900X",
+        "15935": "AB900X",
+        "15936": "AB900X",
+        "15937": "AB900X",
+        "15938": "AB900X",
+        "15940": "AB900X",
+        "15942": "AB900X",
+        "15943": "AB900X",
+        "15944": "AB900X",
+        "15945": "AB900X",
+        "15946": "AB900X",
+        "15948": "AB900X",
+        "15949": "AB900X",
+        "15951": "AB900X",
+        "15952": "AB900X",
+        "15953": "AB900X",
+        "15954": "AB900X",
+        "15955": "AB900X",
+        "15956": "AB900X",
+        "15957": "AB900X",
+        "15958": "AB900X",
+        "15959": "AB900X",
+        "15960": "AB900X",
+        "15961": "AB900X",
+        "15962": "AB900X",
+        "15963": "AB900X",
+        "15989": "AB900X",
+        "16001": "AB900X",
+        "16002": "AB900X",
+        "16003": "AB900X",
+        "16016": "AB900X",
+        "16017": "AB900X",
+        "16018": "AB900X",
+        "16020": "AB900X",
+        "16021": "AB900X",
+        "16022": "AB900X",
+        "16023": "AB900X",
+        "16024": "AB900X",
+        "16025": "AB900X",
+        "16027": "AB900X",
+        "16028": "AB900X",
+        "16029": "AB900X",
+        "16030": "AB900X",
+        "16033": "AB900X",
+        "16034": "AB900X",
+        "16035": "AB900X",
+        "16036": "AB900X",
+        "16037": "AB900X",
+        "16038": "AB900X",
+        "16039": "AB900X",
+        "16040": "AB900X",
+        "16041": "AB900X",
+        "16045": "AB900X",
+        "16046": "AB900X",
+        "16048": "AB900X",
+        "16049": "AB900X",
+        "16050": "AB900X",
+        "16051": "AB900X",
+        "16052": "AB900X",
+        "16053": "AB900X",
+        "16054": "AB900X",
+        "16055": "AB900X",
+        "16056": "AB900X",
+        "16057": "AB900X",
+        "16058": "AB900X",
+        "16059": "AB900X",
+        "16061": "AB900X",
+        "16063": "AB900X",
+        "16066": "AB900X",
+        "16101": "AB900X",
+        "16102": "AB900X",
+        "16103": "AB900X",
+        "16105": "AB900X",
+        "16107": "AB900X",
+        "16108": "AB900X",
+        "16110": "AB900X",
+        "16111": "AB900X",
+        "16112": "AB900X",
+        "16113": "AB900X",
+        "16114": "AB900X",
+        "16115": "AB900X",
+        "16116": "AB900X",
+        "16117": "AB900X",
+        "16120": "AB900X",
+        "16121": "AB900X",
+        "16123": "AB900X",
+        "16124": "AB900X",
+        "16125": "AB900X",
+        "16127": "AB900X",
+        "16130": "AB900X",
+        "16131": "AB900X",
+        "16132": "AB900X",
+        "16133": "AB900X",
+        "16134": "AB900X",
+        "16136": "AB900X",
+        "16137": "AB900X",
+        "16140": "AB900X",
+        "16141": "AB900X",
+        "16142": "AB900X",
+        "16143": "AB900X",
+        "16145": "AB900X",
+        "16146": "AB900X",
+        "16148": "AB900X",
+        "16150": "AB900X",
+        "16151": "AB900X",
+        "16153": "AB900X",
+        "16154": "AB900X",
+        "16155": "AB900X",
+        "16156": "AB900X",
+        "16157": "AB900X",
+        "16159": "AB900X",
+        "16160": "AB900X",
+        "16161": "AB900X",
+        "16172": "AB900X",
+        "16201": "AB900X",
+        "16210": "AB900X",
+        "16211": "AB900X",
+        "16212": "AB900X",
+        "16213": "AB900X",
+        "16214": "AB900X",
+        "16215": "AB900X",
+        "16217": "AB900X",
+        "16218": "AB900X",
+        "16220": "AB900X",
+        "16221": "AB900X",
+        "16222": "AB900X",
+        "16223": "AB900X",
+        "16224": "AB900X",
+        "16225": "AB900X",
+        "16226": "AB900X",
+        "16228": "AB900X",
+        "16229": "AB900X",
+        "16230": "AB900X",
+        "16232": "AB900X",
+        "16233": "AB900X",
+        "16234": "AB900X",
+        "16235": "AB900X",
+        "16236": "AB900X",
+        "16238": "AB900X",
+        "16239": "AB900X",
+        "16240": "AB900X",
+        "16242": "AB900X",
+        "16244": "AB900X",
+        "16245": "AB900X",
+        "16246": "AB900X",
+        "16248": "AB900X",
+        "16249": "AB900X",
+        "16250": "AB900X",
+        "16253": "AB900X",
+        "16254": "AB900X",
+        "16255": "AB900X",
+        "16256": "AB900X",
+        "16257": "AB900X",
+        "16258": "AB900X",
+        "16259": "AB900X",
+        "16260": "AB900X",
+        "16261": "AB900X",
+        "16262": "AB900X",
+        "16263": "AB900X",
+        "16301": "AB900X",
+        "16311": "AB900X",
+        "16312": "AB900X",
+        "16313": "AB900X",
+        "16314": "AB900X",
+        "16316": "AB900X",
+        "16317": "AB900X",
+        "16319": "AB900X",
+        "16321": "AB900X",
+        "16322": "AB900X",
+        "16323": "AB900X",
+        "16326": "AB900X",
+        "16327": "AB900X",
+        "16328": "AB900X",
+        "16329": "AB900X",
+        "16331": "AB900X",
+        "16332": "AB900X",
+        "16333": "AB900X",
+        "16334": "AB900X",
+        "16335": "AB900X",
+        "16340": "AB900X",
+        "16341": "AB900X",
+        "16342": "AB900X",
+        "16343": "AB900X",
+        "16344": "AB900X",
+        "16345": "AB900X",
+        "16346": "AB900X",
+        "16347": "AB900X",
+        "16350": "AB900X",
+        "16351": "AB900X",
+        "16352": "AB900X",
+        "16353": "AB900X",
+        "16354": "AB900X",
+        "16360": "AB900X",
+        "16361": "AB900X",
+        "16362": "AB900X",
+        "16364": "AB900X",
+        "16365": "AB900X",
+        "16366": "AB900X",
+        "16367": "AB900X",
+        "16368": "AB900X",
+        "16369": "AB900X",
+        "16370": "AB900X",
+        "16371": "AB900X",
+        "16372": "AB900X",
+        "16373": "AB900X",
+        "16374": "AB900X",
+        "16375": "AB900X",
+        "16388": "AB900X",
+        "16401": "AB900X",
+        "16402": "AB900X",
+        "16403": "AB900X",
+        "16404": "AB900X",
+        "16405": "AB900X",
+        "16406": "AB900X",
+        "16407": "AB900X",
+        "16410": "AB900X",
+        "16411": "AB900X",
+        "16412": "AB900X",
+        "16413": "AB900X",
+        "16415": "AB900X",
+        "16416": "AB900X",
+        "16417": "AB900X",
+        "16420": "AB900X",
+        "16421": "AB900X",
+        "16422": "AB900X",
+        "16423": "AB900X",
+        "16424": "AB900X",
+        "16426": "AB900X",
+        "16427": "AB900X",
+        "16428": "AB900X",
+        "16430": "AB900X",
+        "16432": "AB900X",
+        "16433": "AB900X",
+        "16434": "AB900X",
+        "16435": "AB900X",
+        "16436": "AB900X",
+        "16438": "AB900X",
+        "16440": "AB900X",
+        "16441": "AB900X",
+        "16442": "AB900X",
+        "16443": "AB900X",
+        "16444": "AB900X",
+        "16475": "AB900X",
+        "16501": "AB900X",
+        "16502": "AB900X",
+        "16503": "AB900X",
+        "16504": "AB900X",
+        "16505": "AB900X",
+        "16506": "AB900X",
+        "16507": "AB900X",
+        "16508": "AB900X",
+        "16509": "AB900X",
+        "16510": "AB900X",
+        "16511": "AB900X",
+        "16512": "AB900X",
+        "16514": "AB900X",
+        "16515": "AB900X",
+        "16522": "AB900X",
+        "16530": "AB900X",
+        "16531": "AB900X",
+        "16532": "AB900X",
+        "16533": "AB900X",
+        "16534": "AB900X",
+        "16538": "AB900X",
+        "16541": "AB900X",
+        "16544": "AB900X",
+        "16546": "AB900X",
+        "16550": "AB900X",
+        "16553": "AB900X",
+        "16554": "AB900X",
+        "16563": "AB900X",
+        "16565": "AB900X",
+        "16601": "AB900X",
+        "16602": "AB900X",
+        "16603": "AB900X",
+        "16611": "AB900X",
+        "16613": "AB900X",
+        "16616": "AB900X",
+        "16617": "AB900X",
+        "16619": "AB900X",
+        "16620": "AB900X",
+        "16621": "AB900X",
+        "16622": "AB900X",
+        "16623": "AB900X",
+        "16624": "AB900X",
+        "16625": "AB900X",
+        "16627": "AB900X",
+        "16629": "AB900X",
+        "16630": "AB900X",
+        "16631": "AB900X",
+        "16633": "AB900X",
+        "16634": "AB900X",
+        "16635": "AB900X",
+        "16636": "AB900X",
+        "16637": "AB900X",
+        "16638": "AB900X",
+        "16639": "AB900X",
+        "16640": "AB900X",
+        "16641": "AB900X",
+        "16644": "AB900X",
+        "16645": "AB900X",
+        "16646": "AB900X",
+        "16647": "AB900X",
+        "16648": "AB900X",
+        "16650": "AB900X",
+        "16651": "AB900X",
+        "16652": "AB900X",
+        "16654": "AB900X",
+        "16655": "AB900X",
+        "16656": "AB900X",
+        "16657": "AB900X",
+        "16659": "AB900X",
+        "16660": "AB900X",
+        "16661": "AB900X",
+        "16662": "AB900X",
+        "16663": "AB900X",
+        "16664": "AB900X",
+        "16665": "AB900X",
+        "16666": "AB900X",
+        "16667": "AB900X",
+        "16668": "AB900X",
+        "16669": "AB900X",
+        "16670": "AB900X",
+        "16671": "AB900X",
+        "16672": "AB900X",
+        "16673": "AB900X",
+        "16674": "AB900X",
+        "16675": "AB900X",
+        "16677": "AB900X",
+        "16678": "AB900X",
+        "16679": "AB900X",
+        "16680": "AB900X",
+        "16681": "AB900X",
+        "16682": "AB900X",
+        "16683": "AB900X",
+        "16684": "AB900X",
+        "16685": "AB900X",
+        "16686": "AB900X",
+        "16689": "AB892X",
+        "16691": "AB892X",
+        "16692": "AB900X",
+        "16693": "AB900X",
+        "16694": "AB900X",
+        "16695": "AB900X",
+        "16698": "AB900X",
+        "16699": "AB900X",
+        "16701": "AB900X",
+        "16720": "AB900X",
+        "16724": "AB900X",
+        "16725": "AB900X",
+        "16726": "AB900X",
+        "16727": "AB900X",
+        "16728": "AB900X",
+        "16729": "AB900X",
+        "16730": "AB900X",
+        "16731": "AB900X",
+        "16732": "AB900X",
+        "16733": "AB900X",
+        "16734": "AB900X",
+        "16735": "AB900X",
+        "16738": "AB900X",
+        "16740": "AB900X",
+        "16743": "AB900X",
+        "16744": "AB900X",
+        "16745": "AB900X",
+        "16746": "AB900X",
+        "16748": "AB900X",
+        "16749": "AB900X",
+        "16750": "AB900X",
+        "16801": "AB900X",
+        "16802": "AB900X",
+        "16803": "AB900X",
+        "16804": "AB900X",
+        "16805": "AB900X",
+        "16820": "AB900X",
+        "16821": "AB900X",
+        "16822": "AB890X",
+        "16823": "AB900X",
+        "16825": "AB900X",
+        "16826": "AB890X",
+        "16827": "AB900X",
+        "16828": "AB890X",
+        "16829": "AB900X",
+        "16830": "AB900X",
+        "16832": "AB900X",
+        "16833": "AB900X",
+        "16834": "AB900X",
+        "16835": "AB900X",
+        "16836": "AB900X",
+        "16837": "AB900X",
+        "16838": "AB900X",
+        "16839": "AB900X",
+        "16840": "AB900X",
+        "16841": "AB890X",
+        "16843": "AB900X",
+        "16844": "AB890X",
+        "16845": "AB900X",
+        "16847": "AB900X",
+        "16848": "AB890X",
+        "16849": "AB900X",
+        "16850": "AB900X",
+        "16851": "AB900X",
+        "16852": "AB900X",
+        "16853": "AB890X",
+        "16854": "AB900X",
+        "16855": "AB900X",
+        "16856": "AB900X",
+        "16858": "AB900X",
+        "16859": "AB900X",
+        "16860": "AB900X",
+        "16861": "AB900X",
+        "16863": "AB900X",
+        "16864": "AB900X",
+        "16865": "AB900X",
+        "16866": "AB900X",
+        "16868": "AB900X",
+        "16870": "AB900X",
+        "16871": "AB900X",
+        "16872": "AB890X",
+        "16873": "AB900X",
+        "16874": "AB900X",
+        "16875": "AB900X",
+        "16876": "AB900X",
+        "16877": "AB900X",
+        "16878": "AB900X",
+        "16879": "AB900X",
+        "16881": "AB900X",
+        "16882": "AB900X",
+        "16901": "AB890X",
+        "16910": "AB890X",
+        "16911": "AB890X",
+        "16912": "AB890X",
+        "16914": "AB890X",
+        "16915": "AB900X",
+        "16917": "AB890X",
+        "16918": "AB890X",
+        "16920": "AB890X",
+        "16921": "AB890X",
+        "16922": "AB900X",
+        "16923": "AB900X",
+        "16925": "AB890X",
+        "16926": "AB890X",
+        "16927": "AB890X",
+        "16928": "AB890X",
+        "16929": "AB890X",
+        "16930": "AB890X",
+        "16932": "AB890X",
+        "16933": "AB890X",
+        "16935": "AB890X",
+        "16936": "AB890X",
+        "16937": "AB900X",
+        "16938": "AB890X",
+        "16939": "AB890X",
+        "16940": "AB890X",
+        "16941": "AB900X",
+        "16942": "AB890X",
+        "16943": "AB890X",
+        "16945": "AB890X",
+        "16946": "AB890X",
+        "16947": "AB890X",
+        "16948": "AB890X",
+        "16950": "AB890X",
+        "17001": "AB892X",
+        "17002": "AB892X",
+        "17003": "AB892X",
+        "17004": "AB892X",
+        "17005": "AB892X",
+        "17006": "AB892X",
+        "17007": "AB892X",
+        "17008": "AB892X",
+        "17009": "AB892X",
+        "17010": "AB892X",
+        "17011": "AB892X",
+        "17012": "AB892X",
+        "17013": "AB892X",
+        "17014": "AB892X",
+        "17015": "AB892X",
+        "17016": "AB892X",
+        "17017": "AB892X",
+        "17018": "AB892X",
+        "17019": "AB892X",
+        "17020": "AB892X",
+        "17021": "AB892X",
+        "17022": "AB892X",
+        "17023": "AB892X",
+        "17024": "AB892X",
+        "17025": "AB892X",
+        "17026": "AB892X",
+        "17027": "AB892X",
+        "17028": "AB892X",
+        "17029": "AB892X",
+        "17030": "AB892X",
+        "17032": "AB892X",
+        "17033": "AB892X",
+        "17034": "AB892X",
+        "17035": "AB892X",
+        "17036": "AB892X",
+        "17037": "AB892X",
+        "17038": "AB892X",
+        "17039": "AB892X",
+        "17040": "AB892X",
+        "17041": "AB892X",
+        "17042": "AB892X",
+        "17043": "AB892X",
+        "17044": "AB892X",
+        "17045": "AB890X",
+        "17046": "AB892X",
+        "17047": "AB892X",
+        "17048": "AB892X",
+        "17049": "AB892X",
+        "17050": "AB892X",
+        "17051": "AB892X",
+        "17052": "AB900X",
+        "17053": "AB892X",
+        "17054": "AB892X",
+        "17055": "AB892X",
+        "17056": "AB892X",
+        "17057": "AB892X",
+        "17058": "AB892X",
+        "17059": "AB892X",
+        "17060": "AB900X",
+        "17061": "AB892X",
+        "17062": "AB892X",
+        "17063": "AB892X",
+        "17064": "AB892X",
+        "17065": "AB892X",
+        "17066": "AB892X",
+        "17067": "AB892X",
+        "17068": "AB892X",
+        "17069": "AB892X",
+        "17070": "AB892X",
+        "17071": "AB892X",
+        "17072": "AB892X",
+        "17073": "AB892X",
+        "17074": "AB892X",
+        "17075": "AB892X",
+        "17076": "AB892X",
+        "17077": "AB892X",
+        "17078": "AB892X",
+        "17080": "AB892X",
+        "17081": "AB892X",
+        "17082": "AB892X",
+        "17083": "AB892X",
+        "17084": "AB892X",
+        "17085": "AB892X",
+        "17086": "AB892X",
+        "17087": "AB892X",
+        "17088": "AB892X",
+        "17089": "AB892X",
+        "17090": "AB892X",
+        "17091": "AB892X",
+        "17093": "AB892X",
+        "17094": "AB892X",
+        "17097": "AB892X",
+        "17098": "AB892X",
+        "17099": "AB892X",
+        "17101": "AB892X",
+        "17102": "AB892X",
+        "17103": "AB892X",
+        "17104": "AB892X",
+        "17105": "AB892X",
+        "17106": "AB892X",
+        "17107": "AB892X",
+        "17108": "AB892X",
+        "17109": "AB892X",
+        "17110": "AB892X",
+        "17111": "AB892X",
+        "17112": "AB892X",
+        "17113": "AB892X",
+        "17120": "AB892X",
+        "17121": "AB892X",
+        "17122": "AB892X",
+        "17123": "AB892X",
+        "17124": "AB892X",
+        "17125": "AB892X",
+        "17126": "AB892X",
+        "17127": "AB892X",
+        "17128": "AB892X",
+        "17129": "AB892X",
+        "17130": "AB892X",
+        "17140": "AB892X",
+        "17177": "AB892X",
+        "17201": "AB892X",
+        "17202": "AB892X",
+        "17210": "AB892X",
+        "17211": "AB900X",
+        "17212": "AB892X",
+        "17213": "AB900X",
+        "17214": "AB892X",
+        "17215": "AB892X",
+        "17217": "AB892X",
+        "17219": "AB892X",
+        "17220": "AB892X",
+        "17221": "AB892X",
+        "17222": "AB892X",
+        "17223": "AB892X",
+        "17224": "AB892X",
+        "17225": "AB892X",
+        "17228": "AB892X",
+        "17229": "AB892X",
+        "17231": "AB892X",
+        "17232": "AB892X",
+        "17233": "AB892X",
+        "17235": "AB892X",
+        "17236": "AB892X",
+        "17237": "AB892X",
+        "17238": "AB892X",
+        "17239": "AB900X",
+        "17240": "AB892X",
+        "17241": "AB892X",
+        "17243": "AB900X",
+        "17244": "AB892X",
+        "17246": "AB892X",
+        "17247": "AB892X",
+        "17249": "AB900X",
+        "17250": "AB892X",
+        "17251": "AB892X",
+        "17252": "AB892X",
+        "17253": "AB900X",
+        "17254": "AB892X",
+        "17255": "AB900X",
+        "17256": "AB892X",
+        "17257": "AB892X",
+        "17260": "AB900X",
+        "17261": "AB892X",
+        "17262": "AB892X",
+        "17263": "AB892X",
+        "17264": "AB900X",
+        "17265": "AB892X",
+        "17266": "AB892X",
+        "17267": "AB892X",
+        "17268": "AB892X",
+        "17270": "AB892X",
+        "17271": "AB892X",
+        "17272": "AB892X",
+        "17301": "AB892X",
+        "17302": "AB892X",
+        "17303": "AB892X",
+        "17304": "AB892X",
+        "17306": "AB892X",
+        "17307": "AB892X",
+        "17309": "AB892X",
+        "17310": "AB892X",
+        "17311": "AB892X",
+        "17312": "AB892X",
+        "17313": "AB892X",
+        "17314": "AB892X",
+        "17315": "AB892X",
+        "17316": "AB892X",
+        "17317": "AB892X",
+        "17318": "AB892X",
+        "17319": "AB892X",
+        "17320": "AB892X",
+        "17321": "AB892X",
+        "17322": "AB892X",
+        "17323": "AB892X",
+        "17324": "AB892X",
+        "17325": "AB892X",
+        "17326": "AB892X",
+        "17327": "AB892X",
+        "17329": "AB892X",
+        "17331": "AB892X",
+        "17332": "AB892X",
+        "17333": "AB892X",
+        "17334": "AB892X",
+        "17337": "AB892X",
+        "17339": "AB892X",
+        "17340": "AB892X",
+        "17342": "AB892X",
+        "17343": "AB892X",
+        "17344": "AB892X",
+        "17345": "AB892X",
+        "17347": "AB892X",
+        "17349": "AB892X",
+        "17350": "AB892X",
+        "17352": "AB892X",
+        "17353": "AB892X",
+        "17354": "AB892X",
+        "17355": "AB892X",
+        "17356": "AB892X",
+        "17358": "AB892X",
+        "17360": "AB892X",
+        "17361": "AB892X",
+        "17362": "AB892X",
+        "17363": "AB892X",
+        "17364": "AB892X",
+        "17365": "AB892X",
+        "17366": "AB892X",
+        "17368": "AB892X",
+        "17370": "AB892X",
+        "17371": "AB892X",
+        "17372": "AB892X",
+        "17375": "AB892X",
+        "17401": "AB892X",
+        "17402": "AB892X",
+        "17403": "AB892X",
+        "17404": "AB892X",
+        "17405": "AB892X",
+        "17406": "AB892X",
+        "17407": "AB892X",
+        "17408": "AB892X",
+        "17415": "AB892X",
+        "17501": "AB892X",
+        "17502": "AB892X",
+        "17503": "AB892X",
+        "17504": "AB892X",
+        "17505": "AB892X",
+        "17506": "AB892X",
+        "17507": "AB892X",
+        "17508": "AB892X",
+        "17509": "AB892X",
+        "17512": "AB892X",
+        "17516": "AB892X",
+        "17517": "AB892X",
+        "17518": "AB892X",
+        "17519": "AB892X",
+        "17520": "AB892X",
+        "17521": "AB892X",
+        "17522": "AB892X",
+        "17527": "AB892X",
+        "17528": "AB892X",
+        "17529": "AB892X",
+        "17532": "AB892X",
+        "17533": "AB892X",
+        "17534": "AB892X",
+        "17535": "AB892X",
+        "17536": "AB892X",
+        "17537": "AB892X",
+        "17538": "AB892X",
+        "17540": "AB892X",
+        "17543": "AB892X",
+        "17545": "AB892X",
+        "17547": "AB892X",
+        "17549": "AB892X",
+        "17550": "AB892X",
+        "17551": "AB892X",
+        "17552": "AB892X",
+        "17554": "AB892X",
+        "17555": "AB892X",
+        "17557": "AB892X",
+        "17560": "AB892X",
+        "17562": "AB892X",
+        "17563": "AB892X",
+        "17564": "AB892X",
+        "17565": "AB892X",
+        "17566": "AB892X",
+        "17567": "AB892X",
+        "17568": "AB892X",
+        "17569": "AB892X",
+        "17570": "AB892X",
+        "17572": "AB892X",
+        "17573": "AB892X",
+        "17575": "AB892X",
+        "17576": "AB892X",
+        "17578": "AB892X",
+        "17579": "AB892X",
+        "17580": "AB892X",
+        "17581": "AB892X",
+        "17582": "AB892X",
+        "17583": "AB892X",
+        "17584": "AB892X",
+        "17585": "AB892X",
+        "17601": "AB892X",
+        "17602": "AB892X",
+        "17603": "AB892X",
+        "17604": "AB892X",
+        "17605": "AB892X",
+        "17606": "AB892X",
+        "17607": "AB892X",
+        "17608": "AB892X",
+        "17611": "AB892X",
+        "17699": "AB892X",
+        "17701": "AB890X",
+        "17702": "AB890X",
+        "17703": "AB890X",
+        "17705": "AB890X",
+        "17720": "AB890X",
+        "17721": "AB890X",
+        "17723": "AB890X",
+        "17724": "AB890X",
+        "17726": "AB890X",
+        "17727": "AB890X",
+        "17728": "AB890X",
+        "17729": "AB900X",
+        "17730": "AB890X",
+        "17731": "AB890X",
+        "17735": "AB890X",
+        "17737": "AB890X",
+        "17738": "AB890X",
+        "17739": "AB890X",
+        "17740": "AB890X",
+        "17742": "AB890X",
+        "17744": "AB890X",
+        "17745": "AB890X",
+        "17747": "AB890X",
+        "17748": "AB890X",
+        "17749": "AB890X",
+        "17750": "AB890X",
+        "17751": "AB890X",
+        "17752": "AB890X",
+        "17754": "AB890X",
+        "17756": "AB890X",
+        "17758": "AB890X",
+        "17760": "AB890X",
+        "17762": "AB890X",
+        "17763": "AB890X",
+        "17764": "AB890X",
+        "17765": "AB890X",
+        "17767": "AB890X",
+        "17768": "AB890X",
+        "17769": "AB890X",
+        "17771": "AB890X",
+        "17772": "AB890X",
+        "17773": "AB890X",
+        "17774": "AB890X",
+        "17776": "AB890X",
+        "17777": "AB890X",
+        "17778": "AB890X",
+        "17779": "AB890X",
+        "17801": "AB890X",
+        "17810": "AB890X",
+        "17812": "AB892X",
+        "17813": "AB890X",
+        "17814": "AB890X",
+        "17815": "AB890X",
+        "17820": "AB890X",
+        "17821": "AB890X",
+        "17822": "AB890X",
+        "17823": "AB892X",
+        "17824": "AB890X",
+        "17827": "AB890X",
+        "17829": "AB890X",
+        "17830": "AB892X",
+        "17831": "AB890X",
+        "17832": "AB890X",
+        "17833": "AB890X",
+        "17834": "AB890X",
+        "17835": "AB890X",
+        "17836": "AB890X",
+        "17837": "AB890X",
+        "17839": "AB890X",
+        "17840": "AB890X",
+        "17841": "AB892X",
+        "17842": "AB890X",
+        "17843": "AB890X",
+        "17844": "AB890X",
+        "17845": "AB890X",
+        "17846": "AB890X",
+        "17847": "AB890X",
+        "17850": "AB890X",
+        "17851": "AB890X",
+        "17853": "AB890X",
+        "17855": "AB890X",
+        "17856": "AB890X",
+        "17857": "AB890X",
+        "17858": "AB890X",
+        "17859": "AB890X",
+        "17860": "AB890X",
+        "17861": "AB890X",
+        "17862": "AB890X",
+        "17864": "AB890X",
+        "17865": "AB890X",
+        "17866": "AB890X",
+        "17867": "AB890X",
+        "17868": "AB890X",
+        "17870": "AB890X",
+        "17872": "AB890X",
+        "17876": "AB890X",
+        "17877": "AB890X",
+        "17878": "AB890X",
+        "17880": "AB890X",
+        "17881": "AB890X",
+        "17882": "AB890X",
+        "17883": "AB890X",
+        "17884": "AB890X",
+        "17885": "AB890X",
+        "17886": "AB890X",
+        "17887": "AB890X",
+        "17888": "AB890X",
+        "17889": "AB890X",
+        "17901": "AB890X",
+        "17920": "AB890X",
+        "17921": "AB890X",
+        "17922": "AB890X",
+        "17923": "AB890X",
+        "17925": "AB890X",
+        "17929": "AB890X",
+        "17930": "AB890X",
+        "17931": "AB890X",
+        "17932": "AB890X",
+        "17933": "AB890X",
+        "17934": "AB890X",
+        "17935": "AB890X",
+        "17936": "AB890X",
+        "17938": "AB892X",
+        "17941": "AB892X",
+        "17942": "AB890X",
+        "17943": "AB890X",
+        "17944": "AB890X",
+        "17945": "AB890X",
+        "17946": "AB890X",
+        "17948": "AB890X",
+        "17949": "AB890X",
+        "17951": "AB890X",
+        "17952": "AB890X",
+        "17953": "AB890X",
+        "17954": "AB890X",
+        "17957": "AB892X",
+        "17959": "AB890X",
+        "17960": "AB890X",
+        "17961": "AB890X",
+        "17963": "AB890X",
+        "17964": "AB890X",
+        "17965": "AB890X",
+        "17966": "AB890X",
+        "17967": "AB890X",
+        "17968": "AB892X",
+        "17970": "AB890X",
+        "17972": "AB890X",
+        "17974": "AB890X",
+        "17976": "AB890X",
+        "17978": "AB892X",
+        "17979": "AB890X",
+        "17980": "AB892X",
+        "17981": "AB890X",
+        "17982": "AB890X",
+        "17983": "AB892X",
+        "17985": "AB890X",
+        "18001": "AB890X",
+        "18002": "AB890X",
+        "18003": "AB890X",
+        "18010": "AB890X",
+        "18011": "AB890X",
+        "18012": "AB890X",
+        "18013": "AB890X",
+        "18014": "AB890X",
+        "18015": "AB890X",
+        "18016": "AB890X",
+        "18017": "AB890X",
+        "18018": "AB890X",
+        "18020": "AB890X",
+        "18025": "AB890X",
+        "18030": "AB890X",
+        "18031": "AB890X",
+        "18032": "AB890X",
+        "18034": "AB890X",
+        "18035": "AB890X",
+        "18036": "AB890X",
+        "18037": "AB890X",
+        "18038": "AB890X",
+        "18039": "AB890X",
+        "18040": "AB890X",
+        "18041": "AB890X",
+        "18042": "AB890X",
+        "18043": "AB890X",
+        "18044": "AB890X",
+        "18045": "AB890X",
+        "18046": "AB890X",
+        "18049": "AB890X",
+        "18050": "AB890X",
+        "18051": "AB890X",
+        "18052": "AB890X",
+        "18053": "AB890X",
+        "18054": "AB890X",
+        "18055": "AB890X",
+        "18056": "AB890X",
+        "18058": "AB890X",
+        "18059": "AB890X",
+        "18060": "AB890X",
+        "18062": "AB890X",
+        "18063": "AB890X",
+        "18064": "AB890X",
+        "18065": "AB890X",
+        "18066": "AB890X",
+        "18067": "AB890X",
+        "18068": "AB890X",
+        "18069": "AB890X",
+        "18070": "AB890X",
+        "18071": "AB890X",
+        "18072": "AB890X",
+        "18073": "AB890X",
+        "18074": "AB890X",
+        "18076": "AB890X",
+        "18077": "AB890X",
+        "18078": "AB890X",
+        "18079": "AB890X",
+        "18080": "AB890X",
+        "18081": "AB890X",
+        "18083": "AB890X",
+        "18084": "AB890X",
+        "18085": "AB890X",
+        "18086": "AB890X",
+        "18087": "AB890X",
+        "18088": "AB890X",
+        "18091": "AB890X",
+        "18092": "AB890X",
+        "18098": "AB890X",
+        "18099": "AB890X",
+        "18101": "AB890X",
+        "18102": "AB890X",
+        "18103": "AB890X",
+        "18104": "AB890X",
+        "18105": "AB890X",
+        "18106": "AB890X",
+        "18109": "AB890X",
+        "18175": "AB890X",
+        "18195": "AB890X",
+        "18201": "AB890X",
+        "18202": "AB890X",
+        "18210": "AB890X",
+        "18211": "AB890X",
+        "18212": "AB890X",
+        "18214": "AB890X",
+        "18216": "AB890X",
+        "18218": "AB890X",
+        "18219": "AB890X",
+        "18220": "AB890X",
+        "18221": "AB890X",
+        "18222": "AB890X",
+        "18223": "AB890X",
+        "18224": "AB890X",
+        "18225": "AB890X",
+        "18229": "AB890X",
+        "18230": "AB890X",
+        "18231": "AB890X",
+        "18232": "AB890X",
+        "18234": "AB890X",
+        "18235": "AB890X",
+        "18237": "AB890X",
+        "18239": "AB890X",
+        "18240": "AB890X",
+        "18241": "AB890X",
+        "18242": "AB890X",
+        "18244": "AB890X",
+        "18245": "AB890X",
+        "18246": "AB890X",
+        "18247": "AB890X",
+        "18248": "AB890X",
+        "18249": "AB890X",
+        "18250": "AB890X",
+        "18251": "AB890X",
+        "18252": "AB890X",
+        "18254": "AB890X",
+        "18255": "AB890X",
+        "18256": "AB890X",
+        "18301": "AB890X",
+        "18302": "AB890X",
+        "18320": "AB890X",
+        "18321": "AB890X",
+        "18322": "AB890X",
+        "18323": "AB890X",
+        "18324": "AB890X",
+        "18325": "AB890X",
+        "18326": "AB890X",
+        "18327": "AB890X",
+        "18328": "AB890X",
+        "18330": "AB890X",
+        "18331": "AB890X",
+        "18332": "AB890X",
+        "18333": "AB890X",
+        "18334": "AB890X",
+        "18335": "AB890X",
+        "18336": "AB890X",
+        "18337": "AB890X",
+        "18340": "AB890X",
+        "18341": "AB890X",
+        "18342": "AB890X",
+        "18343": "AB890X",
+        "18344": "AB890X",
+        "18346": "AB890X",
+        "18347": "AB890X",
+        "18348": "AB890X",
+        "18349": "AB890X",
+        "18350": "AB890X",
+        "18351": "AB890X",
+        "18352": "AB890X",
+        "18353": "AB890X",
+        "18354": "AB890X",
+        "18355": "AB890X",
+        "18356": "AB890X",
+        "18357": "AB890X",
+        "18360": "AB890X",
+        "18370": "AB890X",
+        "18371": "AB890X",
+        "18372": "AB890X",
+        "18373": "AB890X",
+        "18403": "AB890X",
+        "18405": "AB890X",
+        "18407": "AB890X",
+        "18410": "AB890X",
+        "18411": "AB890X",
+        "18413": "AB890X",
+        "18414": "AB890X",
+        "18415": "AB890X",
+        "18416": "AB890X",
+        "18417": "AB890X",
+        "18419": "AB890X",
+        "18420": "AB890X",
+        "18421": "AB890X",
+        "18424": "AB890X",
+        "18425": "AB890X",
+        "18426": "AB890X",
+        "18427": "AB890X",
+        "18428": "AB890X",
+        "18430": "AB890X",
+        "18431": "AB890X",
+        "18433": "AB890X",
+        "18434": "AB890X",
+        "18435": "AB890X",
+        "18436": "AB890X",
+        "18437": "AB890X",
+        "18438": "AB890X",
+        "18439": "AB890X",
+        "18440": "AB890X",
+        "18441": "AB890X",
+        "18443": "AB890X",
+        "18444": "AB890X",
+        "18445": "AB890X",
+        "18446": "AB890X",
+        "18447": "AB890X",
+        "18448": "AB890X",
+        "18449": "AB890X",
+        "18451": "AB890X",
+        "18452": "AB890X",
+        "18453": "AB890X",
+        "18454": "AB890X",
+        "18455": "AB890X",
+        "18456": "AB890X",
+        "18457": "AB890X",
+        "18458": "AB890X",
+        "18459": "AB890X",
+        "18460": "AB890X",
+        "18461": "AB890X",
+        "18462": "AB890X",
+        "18463": "AB890X",
+        "18464": "AB890X",
+        "18465": "AB890X",
+        "18466": "AB890X",
+        "18469": "AB890X",
+        "18470": "AB890X",
+        "18471": "AB890X",
+        "18472": "AB890X",
+        "18473": "AB890X",
+        "18501": "AB890X",
+        "18502": "AB890X",
+        "18503": "AB890X",
+        "18504": "AB890X",
+        "18505": "AB890X",
+        "18507": "AB890X",
+        "18508": "AB890X",
+        "18509": "AB890X",
+        "18510": "AB890X",
+        "18512": "AB890X",
+        "18514": "AB890X",
+        "18515": "AB890X",
+        "18517": "AB890X",
+        "18518": "AB890X",
+        "18519": "AB890X",
+        "18522": "AB890X",
+        "18540": "AB890X",
+        "18577": "AB890X",
+        "18601": "AB890X",
+        "18602": "AB890X",
+        "18603": "AB890X",
+        "18610": "AB890X",
+        "18611": "AB890X",
+        "18612": "AB890X",
+        "18614": "AB890X",
+        "18615": "AB890X",
+        "18616": "AB890X",
+        "18617": "AB890X",
+        "18618": "AB890X",
+        "18619": "AB890X",
+        "18621": "AB890X",
+        "18622": "AB890X",
+        "18623": "AB890X",
+        "18624": "AB890X",
+        "18625": "AB890X",
+        "18626": "AB890X",
+        "18627": "AB890X",
+        "18628": "AB890X",
+        "18629": "AB890X",
+        "18630": "AB890X",
+        "18631": "AB890X",
+        "18632": "AB890X",
+        "18634": "AB890X",
+        "18635": "AB890X",
+        "18636": "AB890X",
+        "18640": "AB890X",
+        "18641": "AB890X",
+        "18642": "AB890X",
+        "18643": "AB890X",
+        "18644": "AB890X",
+        "18651": "AB890X",
+        "18653": "AB890X",
+        "18654": "AB890X",
+        "18655": "AB890X",
+        "18656": "AB890X",
+        "18657": "AB890X",
+        "18660": "AB890X",
+        "18661": "AB890X",
+        "18690": "AB890X",
+        "18701": "AB890X",
+        "18702": "AB890X",
+        "18703": "AB890X",
+        "18704": "AB890X",
+        "18705": "AB890X",
+        "18706": "AB890X",
+        "18707": "AB890X",
+        "18708": "AB890X",
+        "18709": "AB890X",
+        "18710": "AB890X",
+        "18711": "AB890X",
+        "18762": "AB890X",
+        "18764": "AB890X",
+        "18765": "AB890X",
+        "18766": "AB890X",
+        "18767": "AB890X",
+        "18769": "AB890X",
+        "18773": "AB890X",
+        "18801": "AB890X",
+        "18810": "AB890X",
+        "18812": "AB890X",
+        "18813": "AB890X",
+        "18814": "AB890X",
+        "18815": "AB890X",
+        "18816": "AB890X",
+        "18817": "AB890X",
+        "18818": "AB890X",
+        "18820": "AB890X",
+        "18821": "AB890X",
+        "18822": "AB890X",
+        "18823": "AB890X",
+        "18824": "AB890X",
+        "18825": "AB890X",
+        "18826": "AB890X",
+        "18827": "AB890X",
+        "18828": "AB890X",
+        "18829": "AB890X",
+        "18830": "AB890X",
+        "18831": "AB890X",
+        "18832": "AB890X",
+        "18833": "AB890X",
+        "18834": "AB890X",
+        "18837": "AB890X",
+        "18840": "AB890X",
+        "18842": "AB890X",
+        "18843": "AB890X",
+        "18844": "AB890X",
+        "18845": "AB890X",
+        "18846": "AB890X",
+        "18847": "AB890X",
+        "18848": "AB890X",
+        "18850": "AB890X",
+        "18851": "AB890X",
+        "18853": "AB890X",
+        "18854": "AB890X",
+        "18901": "AB890X",
+        "18902": "AB890X",
+        "18910": "AB890X",
+        "18911": "AB890X",
+        "18912": "AB890X",
+        "18913": "AB890X",
+        "18914": "AB890X",
+        "18915": "AB890X",
+        "18916": "AB890X",
+        "18917": "AB890X",
+        "18918": "AB890X",
+        "18920": "AB890X",
+        "18921": "AB890X",
+        "18922": "AB890X",
+        "18923": "AB890X",
+        "18924": "AB890X",
+        "18925": "AB890X",
+        "18926": "AB890X",
+        "18927": "AB890X",
+        "18928": "AB890X",
+        "18929": "AB890X",
+        "18930": "AB890X",
+        "18931": "AB890X",
+        "18932": "AB890X",
+        "18933": "AB890X",
+        "18934": "AB890X",
+        "18935": "AB890X",
+        "18936": "AB890X",
+        "18938": "AB890X",
+        "18940": "AB890X",
+        "18942": "AB890X",
+        "18943": "AB890X",
+        "18944": "AB890X",
+        "18946": "AB890X",
+        "18947": "AB890X",
+        "18949": "AB890X",
+        "18950": "AB890X",
+        "18951": "AB890X",
+        "18953": "AB890X",
+        "18954": "AB890X",
+        "18955": "AB890X",
+        "18956": "AB890X",
+        "18957": "AB890X",
+        "18958": "AB890X",
+        "18960": "AB890X",
+        "18962": "AB890X",
+        "18963": "AB890X",
+        "18964": "AB890X",
+        "18966": "AB890X",
+        "18968": "AB890X",
+        "18969": "AB890X",
+        "18970": "AB890X",
+        "18971": "AB890X",
+        "18972": "AB890X",
+        "18974": "AB890X",
+        "18976": "AB890X",
+        "18977": "AB890X",
+        "18979": "AB890X",
+        "18980": "AB890X",
+        "18981": "AB890X",
+        "18991": "AB890X",
+        "19001": "AB890X",
+        "19002": "AB890X",
+        "19003": "AB890X",
+        "19004": "AB890X",
+        "19006": "AB890X",
+        "19007": "AB890X",
+        "19008": "AB890X",
+        "19009": "AB890X",
+        "19010": "AB890X",
+        "19012": "AB890X",
+        "19013": "AB890X",
+        "19014": "AB890X",
+        "19015": "AB890X",
+        "19016": "AB890X",
+        "19017": "AB890X",
+        "19018": "AB890X",
+        "19019": "AB890X",
+        "19020": "AB890X",
+        "19021": "AB890X",
+        "19022": "AB890X",
+        "19023": "AB890X",
+        "19025": "AB890X",
+        "19026": "AB890X",
+        "19027": "AB890X",
+        "19028": "AB890X",
+        "19029": "AB890X",
+        "19030": "AB890X",
+        "19031": "AB890X",
+        "19032": "AB890X",
+        "19033": "AB890X",
+        "19034": "AB890X",
+        "19035": "AB890X",
+        "19036": "AB890X",
+        "19037": "AB890X",
+        "19038": "AB890X",
+        "19039": "AB890X",
+        "19040": "AB890X",
+        "19041": "AB890X",
+        "19043": "AB890X",
+        "19044": "AB890X",
+        "19046": "AB890X",
+        "19047": "AB890X",
+        "19048": "AB890X",
+        "19049": "AB890X",
+        "19050": "AB890X",
+        "19052": "AB890X",
+        "19053": "AB890X",
+        "19054": "AB890X",
+        "19055": "AB890X",
+        "19056": "AB890X",
+        "19057": "AB890X",
+        "19058": "AB890X",
+        "19061": "AB890X",
+        "19063": "AB890X",
+        "19064": "AB890X",
+        "19065": "AB890X",
+        "19066": "AB890X",
+        "19067": "AB890X",
+        "19070": "AB890X",
+        "19072": "AB890X",
+        "19073": "AB890X",
+        "19074": "AB890X",
+        "19075": "AB890X",
+        "19076": "AB890X",
+        "19078": "AB890X",
+        "19079": "AB890X",
+        "19080": "AB890X",
+        "19081": "AB890X",
+        "19082": "AB890X",
+        "19083": "AB890X",
+        "19085": "AB890X",
+        "19086": "AB890X",
+        "19087": "AB890X",
+        "19088": "AB890X",
+        "19089": "AB890X",
+        "19090": "AB890X",
+        "19091": "AB890X",
+        "19092": "AB890X",
+        "19093": "AB890X",
+        "19094": "AB890X",
+        "19095": "AB890X",
+        "19096": "AB890X",
+        "19098": "AB890X",
+        "19099": "AB890X",
+        "19101": "AB890X",
+        "19102": "AB890X",
+        "19103": "AB890X",
+        "19104": "AB890X",
+        "19105": "AB890X",
+        "19106": "AB890X",
+        "19107": "AB890X",
+        "19108": "AB890X",
+        "19109": "AB890X",
+        "19110": "AB890X",
+        "19111": "AB890X",
+        "19112": "AB890X",
+        "19113": "AB890X",
+        "19114": "AB890X",
+        "19115": "AB890X",
+        "19116": "AB890X",
+        "19118": "AB890X",
+        "19119": "AB890X",
+        "19120": "AB890X",
+        "19121": "AB890X",
+        "19122": "AB890X",
+        "19123": "AB890X",
+        "19124": "AB890X",
+        "19125": "AB890X",
+        "19126": "AB890X",
+        "19127": "AB890X",
+        "19128": "AB890X",
+        "19129": "AB890X",
+        "19130": "AB890X",
+        "19131": "AB890X",
+        "19132": "AB890X",
+        "19133": "AB890X",
+        "19134": "AB890X",
+        "19135": "AB890X",
+        "19136": "AB890X",
+        "19137": "AB890X",
+        "19138": "AB890X",
+        "19139": "AB890X",
+        "19140": "AB890X",
+        "19141": "AB890X",
+        "19142": "AB890X",
+        "19143": "AB890X",
+        "19144": "AB890X",
+        "19145": "AB890X",
+        "19146": "AB890X",
+        "19147": "AB890X",
+        "19148": "AB890X",
+        "19149": "AB890X",
+        "19150": "AB890X",
+        "19151": "AB890X",
+        "19152": "AB890X",
+        "19153": "AB890X",
+        "19154": "AB890X",
+        "19155": "AB890X",
+        "19160": "AB890X",
+        "19161": "AB890X",
+        "19162": "AB890X",
+        "19170": "AB890X",
+        "19171": "AB890X",
+        "19172": "AB890X",
+        "19173": "AB890X",
+        "19175": "AB890X",
+        "19176": "AB890X",
+        "19177": "AB890X",
+        "19178": "AB890X",
+        "19179": "AB890X",
+        "19181": "AB890X",
+        "19182": "AB890X",
+        "19183": "AB890X",
+        "19184": "AB890X",
+        "19185": "AB890X",
+        "19187": "AB890X",
+        "19188": "AB890X",
+        "19191": "AB890X",
+        "19192": "AB890X",
+        "19193": "AB890X",
+        "19194": "AB890X",
+        "19195": "AB890X",
+        "19196": "AB890X",
+        "19197": "AB890X",
+        "19244": "AB890X",
+        "19255": "AB890X",
+        "19301": "AB890X",
+        "19310": "AB890X",
+        "19311": "AB890X",
+        "19312": "AB890X",
+        "19316": "AB890X",
+        "19317": "AB890X",
+        "19318": "AB890X",
+        "19319": "AB890X",
+        "19320": "AB890X",
+        "19330": "AB890X",
+        "19331": "AB890X",
+        "19333": "AB890X",
+        "19335": "AB890X",
+        "19339": "AB890X",
+        "19340": "AB890X",
+        "19341": "AB890X",
+        "19342": "AB890X",
+        "19343": "AB890X",
+        "19344": "AB890X",
+        "19345": "AB890X",
+        "19346": "AB890X",
+        "19347": "AB890X",
+        "19348": "AB890X",
+        "19350": "AB890X",
+        "19351": "AB890X",
+        "19352": "AB890X",
+        "19353": "AB890X",
+        "19354": "AB890X",
+        "19355": "AB890X",
+        "19357": "AB890X",
+        "19358": "AB890X",
+        "19360": "AB890X",
+        "19362": "AB890X",
+        "19363": "AB890X",
+        "19365": "AB890X",
+        "19366": "AB890X",
+        "19367": "AB890X",
+        "19369": "AB890X",
+        "19371": "AB890X",
+        "19372": "AB890X",
+        "19373": "AB890X",
+        "19374": "AB890X",
+        "19375": "AB890X",
+        "19376": "AB890X",
+        "19380": "AB890X",
+        "19381": "AB890X",
+        "19382": "AB890X",
+        "19383": "AB890X",
+        "19390": "AB890X",
+        "19395": "AB890X",
+        "19397": "AB890X",
+        "19398": "AB890X",
+        "19399": "AB890X",
+        "19401": "AB890X",
+        "19403": "AB890X",
+        "19404": "AB890X",
+        "19405": "AB890X",
+        "19406": "AB890X",
+        "19407": "AB890X",
+        "19408": "AB890X",
+        "19409": "AB890X",
+        "19415": "AB890X",
+        "19420": "AB890X",
+        "19421": "AB890X",
+        "19422": "AB890X",
+        "19423": "AB890X",
+        "19424": "AB890X",
+        "19425": "AB890X",
+        "19426": "AB890X",
+        "19428": "AB890X",
+        "19429": "AB890X",
+        "19430": "AB890X",
+        "19432": "AB890X",
+        "19435": "AB890X",
+        "19436": "AB890X",
+        "19437": "AB890X",
+        "19438": "AB890X",
+        "19440": "AB890X",
+        "19441": "AB890X",
+        "19442": "AB890X",
+        "19443": "AB890X",
+        "19444": "AB890X",
+        "19446": "AB890X",
+        "19450": "AB890X",
+        "19451": "AB890X",
+        "19453": "AB890X",
+        "19454": "AB890X",
+        "19455": "AB890X",
+        "19456": "AB890X",
+        "19457": "AB890X",
+        "19460": "AB890X",
+        "19462": "AB890X",
+        "19464": "AB890X",
+        "19465": "AB887X",
+        "19468": "AB890X",
+        "19470": "AB890X",
+        "19472": "AB890X",
+        "19473": "AB890X",
+        "19474": "AB890X",
+        "19475": "AB890X",
+        "19477": "AB890X",
+        "19478": "AB890X",
+        "19479": "AB891X",
+        "19480": "AB890X",
+        "19481": "AB890X",
+        "19482": "AB890X",
+        "19483": "AB890X",
+        "19484": "AB890X",
+        "19485": "AB890X",
+        "19486": "AB890X",
+        "19487": "AB890X",
+        "19488": "AB890X",
+        "19489": "AB890X",
+        "19490": "AB890X",
+        "19492": "AB890X",
+        "19493": "AB890X",
+        "19494": "AB890X",
+        "19495": "AB890X",
+        "19496": "AB890X",
+        "19501": "AB892X",
+        "19503": "AB890X",
+        "19504": "AB890X",
+        "19505": "AB890X",
+        "19506": "AB890X",
+        "19507": "AB890X",
+        "19508": "AB890X",
+        "19510": "AB890X",
+        "19511": "AB890X",
+        "19512": "AB890X",
+        "19516": "AB890X",
+        "19518": "AB890X",
+        "19519": "AB890X",
+        "19520": "AB890X",
+        "19522": "AB890X",
+        "19523": "AB890X",
+        "19525": "AB890X",
+        "19526": "AB890X",
+        "19529": "AB890X",
+        "19530": "AB890X",
+        "19533": "AB890X",
+        "19534": "AB890X",
+        "19535": "AB890X",
+        "19536": "AB890X",
+        "19538": "AB890X",
+        "19539": "AB890X",
+        "19540": "AB890X",
+        "19541": "AB890X",
+        "19542": "AB890X",
+        "19543": "AB890X",
+        "19544": "AB890X",
+        "19545": "AB890X",
+        "19547": "AB890X",
+        "19548": "AB890X",
+        "19549": "AB890X",
+        "19550": "AB890X",
+        "19551": "AB890X",
+        "19554": "AB890X",
+        "19555": "AB890X",
+        "19559": "AB890X",
+        "19560": "AB890X",
+        "19562": "AB890X",
+        "19564": "AB890X",
+        "19565": "AB890X",
+        "19567": "AB890X",
+        "19601": "AB890X",
+        "19602": "AB890X",
+        "19603": "AB892X",
+        "19604": "AB890X",
+        "19605": "AB890X",
+        "19606": "AB890X",
+        "19607": "AB890X",
+        "19608": "AB890X",
+        "19609": "AB890X",
+        "19610": "AB890X",
+        "19611": "AB890X",
+        "19612": "AB890X",
+        "19640": "AB890X",
+        "19701": "AB890X",
+        "19702": "AB890X",
+        "19703": "AB890X",
+        "19706": "AB890X",
+        "19707": "AB890X",
+        "19708": "AB890X",
+        "19709": "AB890X",
+        "19710": "AB890X",
+        "19711": "AB890X",
+        "19712": "AB890X",
+        "19713": "AB890X",
+        "19714": "AB890X",
+        "19715": "AB890X",
+        "19716": "AB890X",
+        "19717": "AB890X",
+        "19718": "AB890X",
+        "19720": "AB890X",
+        "19721": "AB890X",
+        "19725": "AB890X",
+        "19726": "AB890X",
+        "19730": "AB890X",
+        "19731": "AB890X",
+        "19732": "AB890X",
+        "19733": "AB890X",
+        "19734": "AB890X",
+        "19735": "AB890X",
+        "19736": "AB890X",
+        "19801": "AB890X",
+        "19802": "AB890X",
+        "19803": "AB890X",
+        "19804": "AB890X",
+        "19805": "AB890X",
+        "19806": "AB890X",
+        "19807": "AB890X",
+        "19808": "AB890X",
+        "19809": "AB890X",
+        "19810": "AB890X",
+        "19850": "AB890X",
+        "19880": "AB890X",
+        "19884": "AB890X",
+        "19885": "AB890X",
+        "19886": "AB890X",
+        "19887": "AB890X",
+        "19889": "AB890X",
+        "19890": "AB890X",
+        "19891": "AB890X",
+        "19892": "AB890X",
+        "19893": "AB890X",
+        "19894": "AB890X",
+        "19895": "AB890X",
+        "19896": "AB890X",
+        "19897": "AB890X",
+        "19898": "AB890X",
+        "19899": "AB890X",
+        "19901": "AB890X",
+        "19902": "AB890X",
+        "19903": "AB890X",
+        "19904": "AB890X",
+        "19905": "AB890X",
+        "19906": "AB890X",
+        "19930": "AB890X",
+        "19931": "AB890X",
+        "19933": "AB890X",
+        "19934": "AB890X",
+        "19936": "AB890X",
+        "19938": "AB890X",
+        "19939": "AB890X",
+        "19940": "AB890X",
+        "19941": "AB890X",
+        "19943": "AB890X",
+        "19944": "AB890X",
+        "19945": "AB890X",
+        "19946": "AB890X",
+        "19947": "AB890X",
+        "19950": "AB890X",
+        "19951": "AB890X",
+        "19952": "AB890X",
+        "19953": "AB890X",
+        "19954": "AB890X",
+        "19955": "AB890X",
+        "19956": "AB890X",
+        "19958": "AB890X",
+        "19960": "AB890X",
+        "19961": "AB890X",
+        "19962": "AB890X",
+        "19963": "AB890X",
+        "19964": "AB890X",
+        "19966": "AB890X",
+        "19967": "AB890X",
+        "19968": "AB890X",
+        "19969": "AB890X",
+        "19970": "AB890X",
+        "19971": "AB890X",
+        "19973": "AB890X",
+        "19975": "AB890X",
+        "19977": "AB890X",
+        "19979": "AB890X",
+        "19980": "AB890X",
+        "20001": "AB892X",
+        "20002": "AB892X",
+        "20008": "AB892X",
+        "20011": "AB892X",
+        "20100": "AB890X",
+        "20101": "AB892X",
+        "20102": "AB892X",
+        "20103": "AB892X",
+        "20104": "AB892X",
+        "20105": "AB892X",
+        "20106": "AB892X",
+        "20107": "AB892X",
+        "20108": "AB892X",
+        "20109": "AB892X",
+        "20110": "AB892X",
+        "20111": "AB892X",
+        "20112": "AB892X",
+        "20113": "AB892X",
+        "20115": "AB892X",
+        "20116": "AB892X",
+        "20117": "AB892X",
+        "20118": "AB892X",
+        "20119": "AB892X",
+        "20120": "AB892X",
+        "20121": "AB892X",
+        "20122": "AB892X",
+        "20124": "AB892X",
+        "20128": "AB892X",
+        "20129": "AB892X",
+        "20130": "AB892X",
+        "20131": "AB892X",
+        "20132": "AB892X",
+        "20134": "AB892X",
+        "20135": "AB892X",
+        "20136": "AB892X",
+        "20137": "AB892X",
+        "20138": "AB892X",
+        "20139": "AB892X",
+        "20140": "AB892X",
+        "20141": "AB892X",
+        "20142": "AB892X",
+        "20143": "AB892X",
+        "20144": "AB892X",
+        "20146": "AB892X",
+        "20147": "AB892X",
+        "20148": "AB892X",
+        "20149": "AB892X",
+        "20151": "AB892X",
+        "20152": "AB892X",
+        "20153": "AB892X",
+        "20155": "AB892X",
+        "20156": "AB892X",
+        "20158": "AB892X",
+        "20159": "AB892X",
+        "20160": "AB892X",
+        "20163": "AB892X",
+        "20164": "AB892X",
+        "20165": "AB892X",
+        "20166": "AB892X",
+        "20167": "AB892X",
+        "20168": "AB892X",
+        "20169": "AB892X",
+        "20170": "AB892X",
+        "20171": "AB892X",
+        "20172": "AB892X",
+        "20175": "AB892X",
+        "20176": "AB892X",
+        "20177": "AB892X",
+        "20178": "AB892X",
+        "20180": "AB892X",
+        "20181": "AB892X",
+        "20182": "AB892X",
+        "20184": "AB892X",
+        "20185": "AB892X",
+        "20186": "AB892X",
+        "20187": "AB892X",
+        "20188": "AB892X",
+        "20189": "AB892X",
+        "20190": "AB892X",
+        "20191": "AB892X",
+        "20192": "AB892X",
+        "20193": "AB892X",
+        "20194": "AB892X",
+        "20195": "AB892X",
+        "20196": "AB892X",
+        "20197": "AB892X",
+        "20198": "AB892X",
+        "20199": "AB892X",
+        "20559": "AB892X",
+        "20601": "AB892X",
+        "20602": "AB892X",
+        "20603": "AB892X",
+        "20604": "AB892X",
+        "20606": "AB892X",
+        "20607": "AB892X",
+        "20608": "AB892X",
+        "20609": "AB892X",
+        "20610": "AB892X",
+        "20611": "AB892X",
+        "20612": "AB892X",
+        "20613": "AB892X",
+        "20615": "AB892X",
+        "20616": "AB892X",
+        "20617": "AB892X",
+        "20618": "AB892X",
+        "20619": "AB892X",
+        "20620": "AB892X",
+        "20621": "AB892X",
+        "20622": "AB892X",
+        "20623": "AB892X",
+        "20624": "AB892X",
+        "20625": "AB892X",
+        "20626": "AB892X",
+        "20627": "AB892X",
+        "20628": "AB892X",
+        "20629": "AB892X",
+        "20630": "AB892X",
+        "20632": "AB892X",
+        "20634": "AB892X",
+        "20635": "AB892X",
+        "20636": "AB892X",
+        "20637": "AB892X",
+        "20639": "AB892X",
+        "20640": "AB892X",
+        "20643": "AB892X",
+        "20645": "AB892X",
+        "20646": "AB892X",
+        "20650": "AB892X",
+        "20653": "AB892X",
+        "20656": "AB892X",
+        "20657": "AB892X",
+        "20658": "AB892X",
+        "20659": "AB892X",
+        "20660": "AB892X",
+        "20661": "AB892X",
+        "20662": "AB892X",
+        "20664": "AB892X",
+        "20667": "AB892X",
+        "20670": "AB892X",
+        "20674": "AB892X",
+        "20675": "AB892X",
+        "20676": "AB892X",
+        "20677": "AB892X",
+        "20678": "AB892X",
+        "20680": "AB892X",
+        "20682": "AB892X",
+        "20684": "AB892X",
+        "20685": "AB892X",
+        "20686": "AB892X",
+        "20687": "AB892X",
+        "20688": "AB892X",
+        "20689": "AB892X",
+        "20690": "AB892X",
+        "20692": "AB892X",
+        "20693": "AB892X",
+        "20695": "AB892X",
+        "20697": "AB892X",
+        "20701": "AB890X",
+        "20703": "AB892X",
+        "20704": "AB892X",
+        "20705": "AB892X",
+        "20706": "AB892X",
+        "20707": "AB892X",
+        "20708": "AB892X",
+        "20709": "AB892X",
+        "20710": "AB892X",
+        "20711": "AB890X",
+        "20712": "AB892X",
+        "20714": "AB892X",
+        "20715": "AB892X",
+        "20716": "AB892X",
+        "20717": "AB892X",
+        "20718": "AB892X",
+        "20719": "AB892X",
+        "20720": "AB892X",
+        "20721": "AB892X",
+        "20722": "AB892X",
+        "20723": "AB890X",
+        "20724": "AB890X",
+        "20725": "AB892X",
+        "20726": "AB892X",
+        "20731": "AB892X",
+        "20732": "AB892X",
+        "20733": "AB890X",
+        "20735": "AB892X",
+        "20736": "AB892X",
+        "20737": "AB892X",
+        "20738": "AB892X",
+        "20740": "AB892X",
+        "20741": "AB892X",
+        "20742": "AB892X",
+        "20743": "AB892X",
+        "20744": "AB892X",
+        "20745": "AB892X",
+        "20746": "AB892X",
+        "20747": "AB892X",
+        "20748": "AB892X",
+        "20749": "AB892X",
+        "20750": "AB892X",
+        "20751": "AB890X",
+        "20752": "AB892X",
+        "20753": "AB892X",
+        "20754": "AB892X",
+        "20755": "AB890X",
+        "20757": "AB892X",
+        "20758": "AB890X",
+        "20759": "AB890X",
+        "20762": "AB892X",
+        "20763": "AB890X",
+        "20764": "AB890X",
+        "20765": "AB890X",
+        "20768": "AB892X",
+        "20769": "AB892X",
+        "20770": "AB892X",
+        "20771": "AB892X",
+        "20772": "AB892X",
+        "20773": "AB892X",
+        "20774": "AB892X",
+        "20775": "AB892X",
+        "20776": "AB890X",
+        "20777": "AB890X",
+        "20778": "AB890X",
+        "20779": "AB890X",
+        "20781": "AB892X",
+        "20782": "AB892X",
+        "20783": "AB892X",
+        "20784": "AB892X",
+        "20785": "AB892X",
+        "20787": "AB892X",
+        "20788": "AB892X",
+        "20790": "AB892X",
+        "20791": "AB892X",
+        "20792": "AB892X",
+        "20794": "AB890X",
+        "20797": "AB892X",
+        "20799": "AB892X",
+        "20810": "AB892X",
+        "20811": "AB892X",
+        "20812": "AB892X",
+        "20813": "AB892X",
+        "20814": "AB892X",
+        "20815": "AB892X",
+        "20816": "AB892X",
+        "20817": "AB892X",
+        "20818": "AB892X",
+        "20824": "AB892X",
+        "20825": "AB892X",
+        "20827": "AB892X",
+        "20830": "AB892X",
+        "20832": "AB892X",
+        "20833": "AB892X",
+        "20837": "AB892X",
+        "20838": "AB892X",
+        "20839": "AB892X",
+        "20841": "AB892X",
+        "20842": "AB892X",
+        "20847": "AB892X",
+        "20848": "AB892X",
+        "20849": "AB892X",
+        "20850": "AB892X",
+        "20851": "AB892X",
+        "20852": "AB892X",
+        "20853": "AB892X",
+        "20854": "AB892X",
+        "20855": "AB892X",
+        "20857": "AB892X",
+        "20859": "AB892X",
+        "20860": "AB892X",
+        "20861": "AB892X",
+        "20862": "AB892X",
+        "20866": "AB892X",
+        "20868": "AB892X",
+        "20871": "AB892X",
+        "20872": "AB892X",
+        "20874": "AB892X",
+        "20875": "AB892X",
+        "20876": "AB892X",
+        "20877": "AB892X",
+        "20878": "AB892X",
+        "20879": "AB892X",
+        "20880": "AB892X",
+        "20882": "AB892X",
+        "20883": "AB892X",
+        "20884": "AB892X",
+        "20885": "AB892X",
+        "20886": "AB892X",
+        "20889": "AB892X",
+        "20891": "AB892X",
+        "20892": "AB892X",
+        "20894": "AB892X",
+        "20895": "AB892X",
+        "20896": "AB892X",
+        "20897": "AB892X",
+        "20898": "AB892X",
+        "20899": "AB892X",
+        "20901": "AB892X",
+        "20902": "AB892X",
+        "20903": "AB892X",
+        "20904": "AB892X",
+        "20905": "AB892X",
+        "20906": "AB892X",
+        "20907": "AB892X",
+        "20908": "AB892X",
+        "20910": "AB892X",
+        "20911": "AB892X",
+        "20912": "AB892X",
+        "20913": "AB892X",
+        "20914": "AB892X",
+        "20915": "AB892X",
+        "20916": "AB892X",
+        "20918": "AB892X",
+        "20993": "AB892X",
+        "20997": "AB892X",
+        "21001": "AB890X",
+        "21005": "AB890X",
+        "21009": "AB890X",
+        "21010": "AB890X",
+        "21012": "AB890X",
+        "21013": "AB890X",
+        "21014": "AB890X",
+        "21015": "AB890X",
+        "21017": "AB890X",
+        "21018": "AB890X",
+        "21020": "AB890X",
+        "21022": "AB890X",
+        "21023": "AB890X",
+        "21027": "AB890X",
+        "21028": "AB890X",
+        "21029": "AB890X",
+        "21030": "AB890X",
+        "21031": "AB890X",
+        "21032": "AB890X",
+        "21034": "AB890X",
+        "21035": "AB890X",
+        "21036": "AB890X",
+        "21037": "AB890X",
+        "21040": "AB890X",
+        "21041": "AB890X",
+        "21042": "AB890X",
+        "21043": "AB890X",
+        "21044": "AB890X",
+        "21045": "AB890X",
+        "21046": "AB890X",
+        "21047": "AB890X",
+        "21048": "AB890X",
+        "21050": "AB890X",
+        "21051": "AB890X",
+        "21052": "AB890X",
+        "21053": "AB890X",
+        "21054": "AB890X",
+        "21056": "AB890X",
+        "21057": "AB890X",
+        "21060": "AB890X",
+        "21061": "AB890X",
+        "21062": "AB890X",
+        "21065": "AB890X",
+        "21071": "AB890X",
+        "21074": "AB890X",
+        "21075": "AB890X",
+        "21076": "AB890X",
+        "21077": "AB890X",
+        "21078": "AB890X",
+        "21082": "AB890X",
+        "21084": "AB890X",
+        "21085": "AB890X",
+        "21087": "AB890X",
+        "21088": "AB890X",
+        "21090": "AB890X",
+        "21092": "AB890X",
+        "21093": "AB890X",
+        "21094": "AB890X",
+        "21098": "AB890X",
+        "21102": "AB890X",
+        "21104": "AB890X",
+        "21105": "AB890X",
+        "21106": "AB890X",
+        "21108": "AB890X",
+        "21111": "AB890X",
+        "21113": "AB890X",
+        "21114": "AB890X",
+        "21117": "AB890X",
+        "21120": "AB890X",
+        "21122": "AB890X",
+        "21123": "AB890X",
+        "21128": "AB890X",
+        "21130": "AB890X",
+        "21131": "AB890X",
+        "21132": "AB890X",
+        "21133": "AB890X",
+        "21136": "AB890X",
+        "21139": "AB890X",
+        "21140": "AB890X",
+        "21144": "AB890X",
+        "21146": "AB890X",
+        "21150": "AB890X",
+        "21152": "AB890X",
+        "21153": "AB890X",
+        "21154": "AB890X",
+        "21155": "AB890X",
+        "21156": "AB890X",
+        "21157": "AB890X",
+        "21158": "AB890X",
+        "21160": "AB890X",
+        "21161": "AB890X",
+        "21162": "AB890X",
+        "21163": "AB890X",
+        "21200": "AB890X",
+        "21201": "AB890X",
+        "21202": "AB890X",
+        "21203": "AB890X",
+        "21204": "AB890X",
+        "21205": "AB890X",
+        "21206": "AB890X",
+        "21207": "AB890X",
+        "21208": "AB890X",
+        "21209": "AB890X",
+        "21210": "AB890X",
+        "21211": "AB890X",
+        "21212": "AB890X",
+        "21213": "AB890X",
+        "21214": "AB890X",
+        "21215": "AB890X",
+        "21216": "AB890X",
+        "21217": "AB890X",
+        "21218": "AB890X",
+        "21219": "AB890X",
+        "21220": "AB890X",
+        "21221": "AB890X",
+        "21222": "AB890X",
+        "21223": "AB890X",
+        "21224": "AB890X",
+        "21225": "AB890X",
+        "21226": "AB890X",
+        "21227": "AB890X",
+        "21228": "AB890X",
+        "21229": "AB890X",
+        "21230": "AB890X",
+        "21231": "AB890X",
+        "21233": "AB890X",
+        "21234": "AB890X",
+        "21235": "AB890X",
+        "21236": "AB890X",
+        "21237": "AB890X",
+        "21239": "AB890X",
+        "21240": "AB890X",
+        "21241": "AB890X",
+        "21244": "AB890X",
+        "21250": "AB890X",
+        "21251": "AB890X",
+        "21252": "AB890X",
+        "21263": "AB890X",
+        "21264": "AB890X",
+        "21265": "AB890X",
+        "21268": "AB890X",
+        "21270": "AB890X",
+        "21273": "AB890X",
+        "21274": "AB890X",
+        "21275": "AB890X",
+        "21278": "AB890X",
+        "21279": "AB890X",
+        "21280": "AB890X",
+        "21281": "AB890X",
+        "21282": "AB890X",
+        "21283": "AB890X",
+        "21284": "AB890X",
+        "21285": "AB890X",
+        "21286": "AB890X",
+        "21287": "AB890X",
+        "21288": "AB890X",
+        "21289": "AB890X",
+        "21290": "AB890X",
+        "21297": "AB890X",
+        "21298": "AB890X",
+        "21400": "AB890X",
+        "21401": "AB890X",
+        "21402": "AB890X",
+        "21403": "AB890X",
+        "21404": "AB890X",
+        "21405": "AB890X",
+        "21409": "AB890X",
+        "21411": "AB890X",
+        "21412": "AB890X",
+        "21501": "AB892X",
+        "21502": "AB892X",
+        "21503": "AB892X",
+        "21504": "AB892X",
+        "21505": "AB892X",
+        "21520": "AB900X",
+        "21521": "AB892X",
+        "21522": "AB900X",
+        "21523": "AB900X",
+        "21524": "AB892X",
+        "21528": "AB892X",
+        "21529": "AB892X",
+        "21530": "AB892X",
+        "21531": "AB900X",
+        "21532": "AB892X",
+        "21536": "AB900X",
+        "21538": "AB900X",
+        "21539": "AB892X",
+        "21540": "AB892X",
+        "21541": "AB900X",
+        "21542": "AB892X",
+        "21543": "AB892X",
+        "21545": "AB892X",
+        "21550": "AB900X",
+        "21555": "AB892X",
+        "21556": "AB892X",
+        "21557": "AB892X",
+        "21560": "AB892X",
+        "21561": "AB900X",
+        "21562": "AB892X",
+        "21601": "AB890X",
+        "21606": "AB890X",
+        "21607": "AB890X",
+        "21609": "AB890X",
+        "21610": "AB890X",
+        "21612": "AB890X",
+        "21613": "AB890X",
+        "21617": "AB890X",
+        "21619": "AB890X",
+        "21620": "AB890X",
+        "21622": "AB890X",
+        "21623": "AB890X",
+        "21624": "AB890X",
+        "21625": "AB890X",
+        "21626": "AB890X",
+        "21627": "AB890X",
+        "21628": "AB890X",
+        "21629": "AB890X",
+        "21631": "AB890X",
+        "21632": "AB890X",
+        "21634": "AB890X",
+        "21635": "AB890X",
+        "21636": "AB890X",
+        "21637": "AB890X",
+        "21638": "AB890X",
+        "21639": "AB890X",
+        "21640": "AB890X",
+        "21641": "AB890X",
+        "21643": "AB890X",
+        "21644": "AB890X",
+        "21645": "AB890X",
+        "21647": "AB890X",
+        "21648": "AB890X",
+        "21649": "AB890X",
+        "21650": "AB890X",
+        "21651": "AB890X",
+        "21652": "AB890X",
+        "21653": "AB890X",
+        "21654": "AB890X",
+        "21655": "AB890X",
+        "21656": "AB890X",
+        "21657": "AB890X",
+        "21658": "AB890X",
+        "21659": "AB890X",
+        "21660": "AB890X",
+        "21661": "AB890X",
+        "21662": "AB890X",
+        "21663": "AB890X",
+        "21664": "AB890X",
+        "21665": "AB890X",
+        "21666": "AB890X",
+        "21667": "AB890X",
+        "21668": "AB890X",
+        "21669": "AB890X",
+        "21670": "AB890X",
+        "21671": "AB890X",
+        "21672": "AB890X",
+        "21673": "AB890X",
+        "21675": "AB890X",
+        "21676": "AB890X",
+        "21677": "AB890X",
+        "21678": "AB890X",
+        "21679": "AB890X",
+        "21681": "AB890X",
+        "21682": "AB890X",
+        "21683": "AB890X",
+        "21684": "AB890X",
+        "21685": "AB890X",
+        "21686": "AB890X",
+        "21687": "AB890X",
+        "21688": "AB890X",
+        "21690": "AB890X",
+        "21701": "AB892X",
+        "21702": "AB892X",
+        "21703": "AB892X",
+        "21704": "AB892X",
+        "21705": "AB892X",
+        "21709": "AB892X",
+        "21710": "AB892X",
+        "21711": "AB892X",
+        "21713": "AB892X",
+        "21714": "AB892X",
+        "21715": "AB892X",
+        "21716": "AB892X",
+        "21717": "AB892X",
+        "21718": "AB892X",
+        "21719": "AB892X",
+        "21720": "AB892X",
+        "21721": "AB892X",
+        "21722": "AB892X",
+        "21723": "AB890X",
+        "21727": "AB892X",
+        "21733": "AB892X",
+        "21734": "AB892X",
+        "21737": "AB890X",
+        "21738": "AB890X",
+        "21740": "AB892X",
+        "21741": "AB892X",
+        "21742": "AB892X",
+        "21746": "AB892X",
+        "21747": "AB892X",
+        "21748": "AB892X",
+        "21749": "AB892X",
+        "21750": "AB892X",
+        "21754": "AB892X",
+        "21755": "AB892X",
+        "21756": "AB892X",
+        "21757": "AB890X",
+        "21758": "AB892X",
+        "21759": "AB892X",
+        "21762": "AB892X",
+        "21765": "AB890X",
+        "21766": "AB892X",
+        "21767": "AB892X",
+        "21769": "AB892X",
+        "21770": "AB892X",
+        "21771": "AB892X",
+        "21773": "AB892X",
+        "21774": "AB892X",
+        "21775": "AB892X",
+        "21776": "AB890X",
+        "21777": "AB892X",
+        "21778": "AB892X",
+        "21779": "AB892X",
+        "21780": "AB892X",
+        "21781": "AB892X",
+        "21782": "AB892X",
+        "21783": "AB892X",
+        "21784": "AB890X",
+        "21787": "AB890X",
+        "21788": "AB892X",
+        "21790": "AB892X",
+        "21791": "AB890X",
+        "21792": "AB892X",
+        "21793": "AB892X",
+        "21794": "AB890X",
+        "21795": "AB892X",
+        "21797": "AB890X",
+        "21798": "AB892X",
+        "21801": "AB890X",
+        "21802": "AB890X",
+        "21803": "AB890X",
+        "21804": "AB890X",
+        "21810": "AB890X",
+        "21811": "AB890X",
+        "21813": "AB890X",
+        "21814": "AB890X",
+        "21817": "AB890X",
+        "21821": "AB890X",
+        "21822": "AB890X",
+        "21824": "AB890X",
+        "21826": "AB890X",
+        "21829": "AB890X",
+        "21830": "AB890X",
+        "21835": "AB890X",
+        "21836": "AB890X",
+        "21837": "AB890X",
+        "21838": "AB890X",
+        "21840": "AB890X",
+        "21841": "AB890X",
+        "21842": "AB890X",
+        "21843": "AB890X",
+        "21849": "AB890X",
+        "21850": "AB890X",
+        "21851": "AB890X",
+        "21852": "AB890X",
+        "21853": "AB890X",
+        "21856": "AB890X",
+        "21857": "AB890X",
+        "21861": "AB890X",
+        "21862": "AB890X",
+        "21863": "AB890X",
+        "21864": "AB890X",
+        "21865": "AB890X",
+        "21866": "AB890X",
+        "21867": "AB890X",
+        "21869": "AB890X",
+        "21871": "AB890X",
+        "21872": "AB890X",
+        "21874": "AB890X",
+        "21875": "AB890X",
+        "21890": "AB890X",
+        "21901": "AB890X",
+        "21902": "AB890X",
+        "21903": "AB890X",
+        "21904": "AB890X",
+        "21911": "AB890X",
+        "21912": "AB890X",
+        "21913": "AB890X",
+        "21914": "AB890X",
+        "21915": "AB890X",
+        "21916": "AB890X",
+        "21917": "AB890X",
+        "21918": "AB890X",
+        "21919": "AB890X",
+        "21920": "AB890X",
+        "21921": "AB890X",
+        "21922": "AB890X",
+        "21930": "AB890X",
+        "22003": "AB892X",
+        "22009": "AB892X",
+        "22015": "AB892X",
+        "22021": "AB887X",
+        "22025": "AB892X",
+        "22026": "AB892X",
+        "22027": "AB892X",
+        "22030": "AB892X",
+        "22031": "AB892X",
+        "22032": "AB892X",
+        "22033": "AB892X",
+        "22034": "AB892X",
+        "22035": "AB892X",
+        "22036": "AB892X",
+        "22037": "AB892X",
+        "22038": "AB892X",
+        "22039": "AB892X",
+        "22040": "AB892X",
+        "22041": "AB892X",
+        "22042": "AB892X",
+        "22043": "AB889X",
+        "22044": "AB892X",
+        "22046": "AB892X",
+        "22047": "AB892X",
+        "22060": "AB892X",
+        "22066": "AB892X",
+        "22067": "AB892X",
+        "22079": "AB892X",
+        "22081": "AB892X",
+        "22082": "AB892X",
+        "22092": "AB892X",
+        "22093": "AB892X",
+        "22095": "AB892X",
+        "22096": "AB892X",
+        "22101": "AB892X",
+        "22102": "AB892X",
+        "22103": "AB892X",
+        "22106": "AB892X",
+        "22107": "AB892X",
+        "22108": "AB892X",
+        "22109": "AB892X",
+        "22116": "AB892X",
+        "22118": "AB892X",
+        "22119": "AB892X",
+        "22120": "AB892X",
+        "22121": "AB892X",
+        "22122": "AB892X",
+        "22124": "AB892X",
+        "22125": "AB892X",
+        "22134": "AB892X",
+        "22135": "AB892X",
+        "22150": "AB892X",
+        "22151": "AB892X",
+        "22152": "AB892X",
+        "22153": "AB892X",
+        "22156": "AB892X",
+        "22158": "AB892X",
+        "22159": "AB892X",
+        "22160": "AB892X",
+        "22161": "AB892X",
+        "22172": "AB892X",
+        "22180": "AB890X",
+        "22181": "AB892X",
+        "22182": "AB892X",
+        "22183": "AB892X",
+        "22184": "AB892X",
+        "22185": "AB892X",
+        "22191": "AB892X",
+        "22192": "AB892X",
+        "22193": "AB892X",
+        "22194": "AB892X",
+        "22195": "AB892X",
+        "22199": "AB892X",
+        "22200": "AB890X",
+        "22201": "AB892X",
+        "22202": "AB892X",
+        "22203": "AB892X",
+        "22204": "AB892X",
+        "22205": "AB892X",
+        "22206": "AB892X",
+        "22207": "AB892X",
+        "22209": "AB892X",
+        "22210": "AB892X",
+        "22211": "AB892X",
+        "22212": "AB892X",
+        "22213": "AB892X",
+        "22214": "AB892X",
+        "22215": "AB892X",
+        "22216": "AB892X",
+        "22217": "AB892X",
+        "22218": "AB892X",
+        "22219": "AB892X",
+        "22222": "AB892X",
+        "22223": "AB892X",
+        "22225": "AB892X",
+        "22226": "AB892X",
+        "22227": "AB892X",
+        "22229": "AB892X",
+        "22230": "AB892X",
+        "22234": "AB892X",
+        "22240": "AB892X",
+        "22241": "AB892X",
+        "22242": "AB892X",
+        "22243": "AB892X",
+        "22244": "AB892X",
+        "22245": "AB892X",
+        "22246": "AB892X",
+        "22301": "AB892X",
+        "22302": "AB892X",
+        "22303": "AB892X",
+        "22304": "AB892X",
+        "22305": "AB892X",
+        "22306": "AB892X",
+        "22307": "AB892X",
+        "22308": "AB892X",
+        "22309": "AB892X",
+        "22310": "AB892X",
+        "22311": "AB892X",
+        "22312": "AB892X",
+        "22313": "AB892X",
+        "22314": "AB892X",
+        "22315": "AB892X",
+        "22320": "AB892X",
+        "22321": "AB892X",
+        "22331": "AB892X",
+        "22332": "AB892X",
+        "22333": "AB892X",
+        "22334": "AB892X",
+        "22336": "AB892X",
+        "22401": "AB892X",
+        "22402": "AB892X",
+        "22403": "AB892X",
+        "22404": "AB892X",
+        "22405": "AB892X",
+        "22406": "AB892X",
+        "22407": "AB892X",
+        "22408": "AB892X",
+        "22412": "AB892X",
+        "22427": "AB892X",
+        "22428": "AB892X",
+        "22430": "AB892X",
+        "22432": "AB892X",
+        "22433": "AB892X",
+        "22435": "AB892X",
+        "22436": "AB892X",
+        "22437": "AB892X",
+        "22438": "AB892X",
+        "22442": "AB892X",
+        "22443": "AB892X",
+        "22446": "AB892X",
+        "22448": "AB892X",
+        "22451": "AB892X",
+        "22454": "AB892X",
+        "22456": "AB892X",
+        "22460": "AB892X",
+        "22463": "AB892X",
+        "22469": "AB892X",
+        "22471": "AB892X",
+        "22472": "AB892X",
+        "22473": "AB892X",
+        "22476": "AB892X",
+        "22480": "AB892X",
+        "22481": "AB892X",
+        "22482": "AB892X",
+        "22485": "AB892X",
+        "22488": "AB892X",
+        "22501": "AB892X",
+        "22503": "AB892X",
+        "22504": "AB892X",
+        "22507": "AB892X",
+        "22508": "AB892X",
+        "22509": "AB892X",
+        "22511": "AB892X",
+        "22513": "AB892X",
+        "22514": "AB892X",
+        "22517": "AB892X",
+        "22520": "AB892X",
+        "22523": "AB892X",
+        "22524": "AB892X",
+        "22526": "AB892X",
+        "22528": "AB892X",
+        "22529": "AB892X",
+        "22530": "AB892X",
+        "22534": "AB892X",
+        "22535": "AB892X",
+        "22538": "AB892X",
+        "22539": "AB892X",
+        "22542": "AB892X",
+        "22544": "AB892X",
+        "22545": "AB892X",
+        "22546": "AB892X",
+        "22547": "AB892X",
+        "22548": "AB892X",
+        "22551": "AB892X",
+        "22552": "AB892X",
+        "22553": "AB892X",
+        "22554": "AB892X",
+        "22555": "AB892X",
+        "22556": "AB892X",
+        "22558": "AB892X",
+        "22560": "AB892X",
+        "22565": "AB892X",
+        "22567": "AB892X",
+        "22570": "AB892X",
+        "22572": "AB892X",
+        "22576": "AB892X",
+        "22577": "AB892X",
+        "22578": "AB892X",
+        "22579": "AB892X",
+        "22580": "AB892X",
+        "22581": "AB892X",
+        "22601": "AB892X",
+        "22602": "AB892X",
+        "22603": "AB892X",
+        "22604": "AB892X",
+        "22610": "AB892X",
+        "22611": "AB892X",
+        "22620": "AB892X",
+        "22622": "AB892X",
+        "22623": "AB892X",
+        "22624": "AB892X",
+        "22625": "AB892X",
+        "22626": "AB892X",
+        "22627": "AB892X",
+        "22630": "AB892X",
+        "22637": "AB892X",
+        "22638": "AB892X",
+        "22639": "AB892X",
+        "22640": "AB892X",
+        "22641": "AB892X",
+        "22642": "AB892X",
+        "22643": "AB892X",
+        "22644": "AB892X",
+        "22645": "AB892X",
+        "22646": "AB892X",
+        "22649": "AB892X",
+        "22650": "AB892X",
+        "22652": "AB892X",
+        "22654": "AB892X",
+        "22655": "AB892X",
+        "22656": "AB892X",
+        "22657": "AB892X",
+        "22660": "AB892X",
+        "22663": "AB892X",
+        "22664": "AB892X",
+        "22701": "AB892X",
+        "22709": "AB892X",
+        "22711": "AB892X",
+        "22712": "AB892X",
+        "22713": "AB892X",
+        "22714": "AB892X",
+        "22715": "AB892X",
+        "22716": "AB892X",
+        "22718": "AB892X",
+        "22719": "AB892X",
+        "22720": "AB892X",
+        "22721": "AB892X",
+        "22722": "AB892X",
+        "22723": "AB892X",
+        "22724": "AB892X",
+        "22725": "AB892X",
+        "22726": "AB892X",
+        "22727": "AB892X",
+        "22728": "AB892X",
+        "22729": "AB892X",
+        "22730": "AB892X",
+        "22731": "AB892X",
+        "22732": "AB892X",
+        "22733": "AB892X",
+        "22734": "AB892X",
+        "22735": "AB892X",
+        "22736": "AB892X",
+        "22737": "AB892X",
+        "22738": "AB892X",
+        "22739": "AB892X",
+        "22740": "AB892X",
+        "22741": "AB892X",
+        "22742": "AB892X",
+        "22743": "AB892X",
+        "22746": "AB892X",
+        "22747": "AB892X",
+        "22748": "AB892X",
+        "22749": "AB892X",
+        "22800": "AB890X",
+        "22801": "AB892X",
+        "22802": "AB892X",
+        "22803": "AB892X",
+        "22807": "AB892X",
+        "22810": "AB892X",
+        "22811": "AB892X",
+        "22812": "AB892X",
+        "22815": "AB892X",
+        "22820": "AB892X",
+        "22821": "AB892X",
+        "22824": "AB892X",
+        "22827": "AB892X",
+        "22830": "AB892X",
+        "22831": "AB892X",
+        "22832": "AB892X",
+        "22833": "AB892X",
+        "22834": "AB892X",
+        "22835": "AB892X",
+        "22840": "AB892X",
+        "22841": "AB892X",
+        "22842": "AB892X",
+        "22843": "AB892X",
+        "22844": "AB892X",
+        "22845": "AB892X",
+        "22846": "AB892X",
+        "22847": "AB892X",
+        "22848": "AB892X",
+        "22849": "AB892X",
+        "22850": "AB892X",
+        "22851": "AB892X",
+        "22853": "AB892X",
+        "22901": "AB892X",
+        "22902": "AB892X",
+        "22903": "AB892X",
+        "22904": "AB892X",
+        "22905": "AB892X",
+        "22906": "AB892X",
+        "22907": "AB892X",
+        "22908": "AB892X",
+        "22909": "AB892X",
+        "22910": "AB892X",
+        "22911": "AB892X",
+        "22920": "AB892X",
+        "22922": "AB892X",
+        "22923": "AB892X",
+        "22924": "AB892X",
+        "22931": "AB892X",
+        "22932": "AB892X",
+        "22935": "AB892X",
+        "22936": "AB892X",
+        "22937": "AB892X",
+        "22938": "AB892X",
+        "22939": "AB892X",
+        "22940": "AB892X",
+        "22942": "AB892X",
+        "22943": "AB892X",
+        "22945": "AB892X",
+        "22946": "AB892X",
+        "22947": "AB892X",
+        "22948": "AB892X",
+        "22949": "AB892X",
+        "22952": "AB892X",
+        "22957": "AB892X",
+        "22958": "AB892X",
+        "22959": "AB892X",
+        "22960": "AB892X",
+        "22963": "AB892X",
+        "22964": "AB892X",
+        "22965": "AB892X",
+        "22967": "AB892X",
+        "22968": "AB892X",
+        "22969": "AB892X",
+        "22971": "AB892X",
+        "22972": "AB892X",
+        "22973": "AB892X",
+        "22974": "AB892X",
+        "22976": "AB892X",
+        "22980": "AB892X",
+        "22987": "AB892X",
+        "22989": "AB892X",
+        "23001": "AB892X",
+        "23002": "AB892X",
+        "23003": "AB892X",
+        "23004": "AB892X",
+        "23005": "AB892X",
+        "23009": "AB892X",
+        "23011": "AB892X",
+        "23014": "AB892X",
+        "23015": "AB892X",
+        "23018": "AB892X",
+        "23021": "AB892X",
+        "23022": "AB892X",
+        "23023": "AB892X",
+        "23024": "AB892X",
+        "23025": "AB892X",
+        "23027": "AB892X",
+        "23030": "AB892X",
+        "23031": "AB892X",
+        "23032": "AB892X",
+        "23035": "AB892X",
+        "23038": "AB892X",
+        "23039": "AB892X",
+        "23040": "AB892X",
+        "23043": "AB892X",
+        "23045": "AB892X",
+        "23047": "AB892X",
+        "23050": "AB892X",
+        "23055": "AB892X",
+        "23056": "AB892X",
+        "23058": "AB892X",
+        "23059": "AB892X",
+        "23060": "AB892X",
+        "23061": "AB892X",
+        "23062": "AB892X",
+        "23063": "AB892X",
+        "23064": "AB892X",
+        "23065": "AB892X",
+        "23066": "AB892X",
+        "23067": "AB892X",
+        "23068": "AB892X",
+        "23069": "AB892X",
+        "23070": "AB892X",
+        "23071": "AB892X",
+        "23072": "AB892X",
+        "23075": "AB892X",
+        "23076": "AB892X",
+        "23079": "AB892X",
+        "23081": "AB892X",
+        "23083": "AB892X",
+        "23084": "AB892X",
+        "23085": "AB892X",
+        "23086": "AB892X",
+        "23089": "AB892X",
+        "23090": "AB892X",
+        "23091": "AB892X",
+        "23092": "AB892X",
+        "23093": "AB892X",
+        "23101": "AB892X",
+        "23102": "AB892X",
+        "23103": "AB892X",
+        "23105": "AB892X",
+        "23106": "AB892X",
+        "23107": "AB892X",
+        "23108": "AB892X",
+        "23109": "AB892X",
+        "23110": "AB892X",
+        "23111": "AB892X",
+        "23112": "AB892X",
+        "23113": "AB892X",
+        "23114": "AB892X",
+        "23115": "AB892X",
+        "23116": "AB892X",
+        "23117": "AB892X",
+        "23119": "AB892X",
+        "23120": "AB892X",
+        "23123": "AB892X",
+        "23124": "AB892X",
+        "23125": "AB892X",
+        "23126": "AB892X",
+        "23127": "AB892X",
+        "23128": "AB892X",
+        "23129": "AB892X",
+        "23130": "AB892X",
+        "23131": "AB892X",
+        "23138": "AB892X",
+        "23139": "AB892X",
+        "23140": "AB892X",
+        "23141": "AB892X",
+        "23146": "AB892X",
+        "23147": "AB892X",
+        "23148": "AB892X",
+        "23149": "AB892X",
+        "23150": "AB892X",
+        "23153": "AB892X",
+        "23154": "AB892X",
+        "23155": "AB892X",
+        "23156": "AB892X",
+        "23160": "AB892X",
+        "23161": "AB892X",
+        "23162": "AB892X",
+        "23163": "AB892X",
+        "23168": "AB892X",
+        "23169": "AB892X",
+        "23170": "AB892X",
+        "23173": "AB892X",
+        "23175": "AB892X",
+        "23176": "AB892X",
+        "23177": "AB892X",
+        "23178": "AB892X",
+        "23180": "AB892X",
+        "23181": "AB892X",
+        "23183": "AB892X",
+        "23184": "AB892X",
+        "23185": "AB892X",
+        "23186": "AB892X",
+        "23187": "AB892X",
+        "23188": "AB892X",
+        "23190": "AB892X",
+        "23192": "AB892X",
+        "23218": "AB892X",
+        "23219": "AB892X",
+        "23220": "AB892X",
+        "23221": "AB892X",
+        "23222": "AB892X",
+        "23223": "AB892X",
+        "23224": "AB892X",
+        "23225": "AB892X",
+        "23226": "AB892X",
+        "23227": "AB892X",
+        "23228": "AB892X",
+        "23229": "AB892X",
+        "23230": "AB892X",
+        "23231": "AB892X",
+        "23232": "AB892X",
+        "23233": "AB892X",
+        "23234": "AB892X",
+        "23235": "AB892X",
+        "23236": "AB892X",
+        "23237": "AB892X",
+        "23238": "AB892X",
+        "23240": "AB892X",
+        "23241": "AB892X",
+        "23242": "AB892X",
+        "23249": "AB892X",
+        "23250": "AB892X",
+        "23255": "AB892X",
+        "23260": "AB892X",
+        "23261": "AB892X",
+        "23269": "AB892X",
+        "23273": "AB892X",
+        "23274": "AB892X",
+        "23276": "AB892X",
+        "23278": "AB892X",
+        "23279": "AB892X",
+        "23282": "AB892X",
+        "23284": "AB892X",
+        "23285": "AB892X",
+        "23286": "AB892X",
+        "23288": "AB892X",
+        "23289": "AB892X",
+        "23290": "AB892X",
+        "23291": "AB892X",
+        "23292": "AB892X",
+        "23293": "AB892X",
+        "23294": "AB892X",
+        "23295": "AB892X",
+        "23297": "AB892X",
+        "23298": "AB892X",
+        "23301": "AB892X",
+        "23302": "AB892X",
+        "23303": "AB892X",
+        "23304": "AB892X",
+        "23306": "AB892X",
+        "23307": "AB892X",
+        "23308": "AB892X",
+        "23310": "AB892X",
+        "23313": "AB892X",
+        "23314": "AB892X",
+        "23315": "AB892X",
+        "23316": "AB892X",
+        "23320": "AB892X",
+        "23321": "AB892X",
+        "23322": "AB892X",
+        "23323": "AB892X",
+        "23324": "AB892X",
+        "23325": "AB892X",
+        "23326": "AB892X",
+        "23327": "AB892X",
+        "23328": "AB892X",
+        "23336": "AB892X",
+        "23337": "AB892X",
+        "23341": "AB892X",
+        "23345": "AB892X",
+        "23347": "AB892X",
+        "23350": "AB892X",
+        "23354": "AB892X",
+        "23356": "AB892X",
+        "23357": "AB892X",
+        "23358": "AB892X",
+        "23359": "AB892X",
+        "23389": "AB892X",
+        "23395": "AB892X",
+        "23396": "AB892X",
+        "23397": "AB892X",
+        "23398": "AB892X",
+        "23399": "AB892X",
+        "23401": "AB892X",
+        "23404": "AB892X",
+        "23405": "AB892X",
+        "23407": "AB892X",
+        "23408": "AB892X",
+        "23409": "AB892X",
+        "23410": "AB892X",
+        "23412": "AB892X",
+        "23413": "AB892X",
+        "23414": "AB892X",
+        "23415": "AB892X",
+        "23416": "AB892X",
+        "23417": "AB892X",
+        "23418": "AB892X",
+        "23419": "AB892X",
+        "23420": "AB892X",
+        "23421": "AB892X",
+        "23422": "AB892X",
+        "23423": "AB892X",
+        "23424": "AB892X",
+        "23426": "AB892X",
+        "23427": "AB892X",
+        "23429": "AB892X",
+        "23430": "AB892X",
+        "23431": "AB892X",
+        "23432": "AB892X",
+        "23433": "AB892X",
+        "23434": "AB892X",
+        "23435": "AB892X",
+        "23436": "AB892X",
+        "23437": "AB892X",
+        "23438": "AB892X",
+        "23439": "AB892X",
+        "23440": "AB892X",
+        "23441": "AB892X",
+        "23442": "AB892X",
+        "23443": "AB892X",
+        "23450": "AB892X",
+        "23451": "AB892X",
+        "23452": "AB892X",
+        "23453": "AB892X",
+        "23454": "AB892X",
+        "23455": "AB892X",
+        "23456": "AB892X",
+        "23457": "AB892X",
+        "23458": "AB892X",
+        "23459": "AB892X",
+        "23460": "AB892X",
+        "23461": "AB892X",
+        "23462": "AB892X",
+        "23463": "AB892X",
+        "23464": "AB892X",
+        "23465": "AB892X",
+        "23466": "AB892X",
+        "23467": "AB892X",
+        "23471": "AB892X",
+        "23479": "AB892X",
+        "23480": "AB892X",
+        "23482": "AB892X",
+        "23483": "AB892X",
+        "23486": "AB892X",
+        "23487": "AB892X",
+        "23488": "AB892X",
+        "23501": "AB892X",
+        "23502": "AB892X",
+        "23503": "AB892X",
+        "23504": "AB892X",
+        "23505": "AB892X",
+        "23506": "AB892X",
+        "23507": "AB892X",
+        "23508": "AB892X",
+        "23509": "AB892X",
+        "23510": "AB892X",
+        "23511": "AB892X",
+        "23512": "AB892X",
+        "23513": "AB892X",
+        "23514": "AB892X",
+        "23515": "AB892X",
+        "23517": "AB892X",
+        "23518": "AB892X",
+        "23519": "AB892X",
+        "23520": "AB892X",
+        "23521": "AB892X",
+        "23523": "AB892X",
+        "23529": "AB892X",
+        "23541": "AB892X",
+        "23551": "AB892X",
+        "23601": "AB892X",
+        "23602": "AB892X",
+        "23603": "AB892X",
+        "23604": "AB892X",
+        "23605": "AB892X",
+        "23606": "AB892X",
+        "23607": "AB892X",
+        "23608": "AB892X",
+        "23609": "AB892X",
+        "23612": "AB892X",
+        "23628": "AB892X",
+        "23630": "AB892X",
+        "23651": "AB892X",
+        "23661": "AB892X",
+        "23662": "AB892X",
+        "23663": "AB892X",
+        "23664": "AB892X",
+        "23665": "AB892X",
+        "23666": "AB892X",
+        "23667": "AB892X",
+        "23668": "AB892X",
+        "23669": "AB892X",
+        "23670": "AB892X",
+        "23681": "AB892X",
+        "23690": "AB892X",
+        "23691": "AB892X",
+        "23692": "AB892X",
+        "23693": "AB892X",
+        "23694": "AB892X",
+        "23696": "AB892X",
+        "23701": "AB892X",
+        "23702": "AB892X",
+        "23703": "AB892X",
+        "23704": "AB892X",
+        "23705": "AB892X",
+        "23707": "AB892X",
+        "23708": "AB892X",
+        "23709": "AB892X",
+        "23801": "AB892X",
+        "23803": "AB892X",
+        "23804": "AB892X",
+        "23805": "AB892X",
+        "23806": "AB892X",
+        "23821": "AB892X",
+        "23822": "AB892X",
+        "23824": "AB892X",
+        "23825": "AB892X",
+        "23827": "AB892X",
+        "23828": "AB892X",
+        "23829": "AB892X",
+        "23830": "AB892X",
+        "23831": "AB892X",
+        "23832": "AB892X",
+        "23833": "AB892X",
+        "23834": "AB892X",
+        "23836": "AB892X",
+        "23837": "AB892X",
+        "23838": "AB892X",
+        "23839": "AB892X",
+        "23840": "AB892X",
+        "23841": "AB892X",
+        "23842": "AB892X",
+        "23843": "AB892X",
+        "23844": "AB892X",
+        "23845": "AB892X",
+        "23846": "AB892X",
+        "23847": "AB892X",
+        "23850": "AB892X",
+        "23851": "AB892X",
+        "23856": "AB892X",
+        "23857": "AB892X",
+        "23860": "AB892X",
+        "23866": "AB892X",
+        "23867": "AB892X",
+        "23868": "AB892X",
+        "23870": "AB892X",
+        "23872": "AB892X",
+        "23873": "AB892X",
+        "23874": "AB892X",
+        "23875": "AB892X",
+        "23876": "AB892X",
+        "23878": "AB892X",
+        "23879": "AB892X",
+        "23881": "AB892X",
+        "23882": "AB892X",
+        "23883": "AB892X",
+        "23884": "AB892X",
+        "23885": "AB892X",
+        "23887": "AB892X",
+        "23888": "AB892X",
+        "23889": "AB892X",
+        "23890": "AB892X",
+        "23891": "AB892X",
+        "23893": "AB892X",
+        "23894": "AB892X",
+        "23897": "AB892X",
+        "23898": "AB892X",
+        "23899": "AB892X",
+        "23901": "AB892X",
+        "23909": "AB892X",
+        "23915": "AB892X",
+        "23917": "AB892X",
+        "23919": "AB892X",
+        "23920": "AB892X",
+        "23921": "AB892X",
+        "23922": "AB892X",
+        "23923": "AB892X",
+        "23924": "AB892X",
+        "23927": "AB892X",
+        "23930": "AB892X",
+        "23934": "AB892X",
+        "23936": "AB892X",
+        "23937": "AB892X",
+        "23938": "AB892X",
+        "23939": "AB892X",
+        "23941": "AB892X",
+        "23942": "AB892X",
+        "23943": "AB892X",
+        "23944": "AB892X",
+        "23947": "AB892X",
+        "23950": "AB892X",
+        "23952": "AB892X",
+        "23954": "AB892X",
+        "23955": "AB892X",
+        "23958": "AB892X",
+        "23959": "AB892X",
+        "23960": "AB892X",
+        "23962": "AB892X",
+        "23963": "AB892X",
+        "23964": "AB892X",
+        "23966": "AB892X",
+        "23967": "AB892X",
+        "23968": "AB892X",
+        "23970": "AB892X",
+        "23974": "AB892X",
+        "23976": "AB892X",
+        "24001": "AB892X",
+        "24002": "AB892X",
+        "24003": "AB892X",
+        "24004": "AB892X",
+        "24005": "AB892X",
+        "24006": "AB892X",
+        "24007": "AB892X",
+        "24008": "AB892X",
+        "24009": "AB892X",
+        "24010": "AB892X",
+        "24011": "AB892X",
+        "24012": "AB892X",
+        "24013": "AB892X",
+        "24014": "AB892X",
+        "24015": "AB892X",
+        "24016": "AB892X",
+        "24017": "AB892X",
+        "24018": "AB892X",
+        "24019": "AB892X",
+        "24020": "AB892X",
+        "24022": "AB892X",
+        "24023": "AB892X",
+        "24024": "AB892X",
+        "24025": "AB892X",
+        "24026": "AB892X",
+        "24027": "AB892X",
+        "24028": "AB892X",
+        "24029": "AB892X",
+        "24030": "AB892X",
+        "24031": "AB892X",
+        "24032": "AB892X",
+        "24033": "AB892X",
+        "24034": "AB892X",
+        "24035": "AB892X",
+        "24036": "AB892X",
+        "24037": "AB892X",
+        "24038": "AB892X",
+        "24040": "AB892X",
+        "24042": "AB892X",
+        "24043": "AB892X",
+        "24044": "AB892X",
+        "24045": "AB892X",
+        "24048": "AB892X",
+        "24050": "AB892X",
+        "24053": "AB887X",
+        "24054": "AB892X",
+        "24055": "AB892X",
+        "24058": "AB892X",
+        "24059": "AB892X",
+        "24060": "AB892X",
+        "24061": "AB892X",
+        "24062": "AB892X",
+        "24063": "AB892X",
+        "24064": "AB892X",
+        "24065": "AB892X",
+        "24066": "AB892X",
+        "24067": "AB892X",
+        "24068": "AB892X",
+        "24069": "AB892X",
+        "24070": "AB892X",
+        "24072": "AB892X",
+        "24073": "AB892X",
+        "24076": "AB887X",
+        "24077": "AB892X",
+        "24078": "AB892X",
+        "24079": "AB892X",
+        "24082": "AB892X",
+        "24083": "AB892X",
+        "24084": "AB892X",
+        "24085": "AB892X",
+        "24086": "AB892X",
+        "24087": "AB892X",
+        "24088": "AB892X",
+        "24089": "AB892X",
+        "24090": "AB892X",
+        "24091": "AB892X",
+        "24092": "AB892X",
+        "24093": "AB892X",
+        "24095": "AB892X",
+        "24101": "AB892X",
+        "24102": "AB892X",
+        "24104": "AB892X",
+        "24105": "AB892X",
+        "24111": "AB892X",
+        "24112": "AB892X",
+        "24113": "AB892X",
+        "24114": "AB892X",
+        "24115": "AB892X",
+        "24120": "AB892X",
+        "24121": "AB892X",
+        "24122": "AB892X",
+        "24124": "AB892X",
+        "24126": "AB892X",
+        "24127": "AB892X",
+        "24128": "AB892X",
+        "24129": "AB892X",
+        "24130": "AB892X",
+        "24131": "AB892X",
+        "24132": "AB892X",
+        "24133": "AB892X",
+        "24134": "AB892X",
+        "24136": "AB892X",
+        "24137": "AB892X",
+        "24138": "AB892X",
+        "24139": "AB892X",
+        "24141": "AB892X",
+        "24142": "AB892X",
+        "24143": "AB892X",
+        "24146": "AB892X",
+        "24147": "AB892X",
+        "24148": "AB892X",
+        "24149": "AB892X",
+        "24150": "AB892X",
+        "24151": "AB892X",
+        "24153": "AB892X",
+        "24155": "AB892X",
+        "24157": "AB892X",
+        "24161": "AB892X",
+        "24162": "AB892X",
+        "24165": "AB892X",
+        "24167": "AB892X",
+        "24168": "AB892X",
+        "24171": "AB887X",
+        "24174": "AB892X",
+        "24175": "AB892X",
+        "24176": "AB892X",
+        "24177": "AB892X",
+        "24178": "AB892X",
+        "24179": "AB892X",
+        "24184": "AB892X",
+        "24185": "AB892X",
+        "24201": "AB888X",
+        "24202": "AB888X",
+        "24203": "AB888X",
+        "24209": "AB888X",
+        "24210": "AB888X",
+        "24211": "AB888X",
+        "24212": "AB888X",
+        "24215": "AB888X",
+        "24216": "AB888X",
+        "24217": "AB892X",
+        "24218": "AB888X",
+        "24219": "AB888X",
+        "24220": "AB892X",
+        "24221": "AB888X",
+        "24224": "AB888X",
+        "24225": "AB888X",
+        "24226": "AB892X",
+        "24228": "AB892X",
+        "24230": "AB888X",
+        "24236": "AB888X",
+        "24237": "AB888X",
+        "24239": "AB900X",
+        "24243": "AB888X",
+        "24244": "AB888X",
+        "24245": "AB888X",
+        "24246": "AB888X",
+        "24248": "AB888X",
+        "24250": "AB888X",
+        "24251": "AB888X",
+        "24256": "AB892X",
+        "24258": "AB888X",
+        "24260": "AB888X",
+        "24263": "AB888X",
+        "24265": "AB888X",
+        "24266": "AB888X",
+        "24269": "AB892X",
+        "24270": "AB888X",
+        "24271": "AB888X",
+        "24272": "AB892X",
+        "24273": "AB888X",
+        "24274": "AB888X",
+        "24277": "AB888X",
+        "24279": "AB888X",
+        "24280": "AB888X",
+        "24281": "AB888X",
+        "24282": "AB888X",
+        "24283": "AB888X",
+        "24290": "AB888X",
+        "24292": "AB892X",
+        "24293": "AB888X",
+        "24301": "AB892X",
+        "24311": "AB888X",
+        "24312": "AB892X",
+        "24313": "AB892X",
+        "24314": "AB900X",
+        "24315": "AB900X",
+        "24316": "AB900X",
+        "24317": "AB887X",
+        "24318": "AB900X",
+        "24319": "AB888X",
+        "24322": "AB892X",
+        "24323": "AB892X",
+        "24324": "AB892X",
+        "24325": "AB892X",
+        "24326": "AB892X",
+        "24327": "AB888X",
+        "24328": "AB892X",
+        "24330": "AB892X",
+        "24333": "AB892X",
+        "24340": "AB888X",
+        "24343": "AB892X",
+        "24347": "AB892X",
+        "24348": "AB892X",
+        "24350": "AB892X",
+        "24351": "AB887X",
+        "24352": "AB892X",
+        "24354": "AB888X",
+        "24360": "AB892X",
+        "24361": "AB888X",
+        "24363": "AB892X",
+        "24366": "AB900X",
+        "24368": "AB892X",
+        "24370": "AB888X",
+        "24374": "AB892X",
+        "24375": "AB888X",
+        "24377": "AB900X",
+        "24378": "AB892X",
+        "24380": "AB892X",
+        "24381": "AB892X",
+        "24382": "AB892X",
+        "24401": "AB892X",
+        "24402": "AB892X",
+        "24411": "AB892X",
+        "24412": "AB892X",
+        "24413": "AB892X",
+        "24415": "AB892X",
+        "24416": "AB892X",
+        "24421": "AB892X",
+        "24422": "AB892X",
+        "24426": "AB892X",
+        "24430": "AB892X",
+        "24431": "AB892X",
+        "24432": "AB892X",
+        "24433": "AB892X",
+        "24435": "AB892X",
+        "24437": "AB892X",
+        "24438": "AB892X",
+        "24439": "AB892X",
+        "24440": "AB892X",
+        "24441": "AB892X",
+        "24442": "AB892X",
+        "24445": "AB892X",
+        "24448": "AB892X",
+        "24450": "AB892X",
+        "24457": "AB892X",
+        "24458": "AB892X",
+        "24459": "AB892X",
+        "24460": "AB892X",
+        "24463": "AB892X",
+        "24464": "AB892X",
+        "24465": "AB892X",
+        "24467": "AB892X",
+        "24468": "AB892X",
+        "24469": "AB892X",
+        "24471": "AB892X",
+        "24472": "AB892X",
+        "24473": "AB892X",
+        "24474": "AB892X",
+        "24475": "AB892X",
+        "24476": "AB892X",
+        "24477": "AB892X",
+        "24479": "AB892X",
+        "24482": "AB892X",
+        "24483": "AB892X",
+        "24484": "AB892X",
+        "24485": "AB892X",
+        "24486": "AB892X",
+        "24487": "AB892X",
+        "24501": "AB892X",
+        "24502": "AB892X",
+        "24503": "AB892X",
+        "24504": "AB892X",
+        "24505": "AB892X",
+        "24506": "AB892X",
+        "24512": "AB892X",
+        "24513": "AB892X",
+        "24514": "AB892X",
+        "24515": "AB892X",
+        "24517": "AB892X",
+        "24520": "AB892X",
+        "24521": "AB892X",
+        "24522": "AB892X",
+        "24523": "AB892X",
+        "24526": "AB892X",
+        "24527": "AB892X",
+        "24528": "AB892X",
+        "24529": "AB892X",
+        "24530": "AB892X",
+        "24531": "AB892X",
+        "24533": "AB892X",
+        "24534": "AB892X",
+        "24535": "AB892X",
+        "24536": "AB892X",
+        "24538": "AB892X",
+        "24539": "AB892X",
+        "24540": "AB892X",
+        "24541": "AB892X",
+        "24543": "AB888X",
+        "24544": "AB892X",
+        "24549": "AB892X",
+        "24550": "AB892X",
+        "24551": "AB892X",
+        "24553": "AB892X",
+        "24554": "AB892X",
+        "24555": "AB892X",
+        "24556": "AB892X",
+        "24557": "AB892X",
+        "24558": "AB892X",
+        "24562": "AB892X",
+        "24563": "AB892X",
+        "24565": "AB892X",
+        "24566": "AB892X",
+        "24569": "AB892X",
+        "24570": "AB892X",
+        "24571": "AB892X",
+        "24572": "AB892X",
+        "24574": "AB892X",
+        "24576": "AB892X",
+        "24577": "AB892X",
+        "24578": "AB892X",
+        "24579": "AB892X",
+        "24580": "AB892X",
+        "24581": "AB892X",
+        "24586": "AB892X",
+        "24588": "AB892X",
+        "24589": "AB892X",
+        "24590": "AB892X",
+        "24592": "AB892X",
+        "24593": "AB892X",
+        "24594": "AB892X",
+        "24595": "AB892X",
+        "24597": "AB892X",
+        "24598": "AB892X",
+        "24599": "AB892X",
+        "24601": "AB900X",
+        "24602": "AB900X",
+        "24603": "AB900X",
+        "24604": "AB900X",
+        "24605": "AB900X",
+        "24606": "AB900X",
+        "24607": "AB892X",
+        "24608": "AB900X",
+        "24609": "AB900X",
+        "24612": "AB900X",
+        "24613": "AB900X",
+        "24614": "AB900X",
+        "24619": "AB900X",
+        "24620": "AB900X",
+        "24622": "AB900X",
+        "24624": "AB900X",
+        "24627": "AB900X",
+        "24628": "AB900X",
+        "24630": "AB900X",
+        "24631": "AB900X",
+        "24634": "AB900X",
+        "24635": "AB900X",
+        "24637": "AB900X",
+        "24639": "AB900X",
+        "24640": "AB900X",
+        "24641": "AB900X",
+        "24646": "AB900X",
+        "24647": "AB900X",
+        "24649": "AB888X",
+        "24651": "AB900X",
+        "24656": "AB888X",
+        "24657": "AB900X",
+        "24658": "AB900X",
+        "24701": "AB900X",
+        "24712": "AB900X",
+        "24714": "AB900X",
+        "24715": "AB900X",
+        "24716": "AB900X",
+        "24719": "AB900X",
+        "24724": "AB900X",
+        "24726": "AB900X",
+        "24729": "AB900X",
+        "24731": "AB900X",
+        "24732": "AB900X",
+        "24733": "AB900X",
+        "24736": "AB900X",
+        "24737": "AB900X",
+        "24738": "AB900X",
+        "24739": "AB900X",
+        "24740": "AB900X",
+        "24747": "AB900X",
+        "24751": "AB900X",
+        "24801": "AB900X",
+        "24808": "AB900X",
+        "24811": "AB900X",
+        "24813": "AB900X",
+        "24815": "AB900X",
+        "24816": "AB900X",
+        "24817": "AB900X",
+        "24818": "AB900X",
+        "24821": "AB900X",
+        "24822": "AB900X",
+        "24823": "AB900X",
+        "24824": "AB900X",
+        "24825": "AB900X",
+        "24826": "AB900X",
+        "24827": "AB900X",
+        "24828": "AB900X",
+        "24829": "AB900X",
+        "24830": "AB900X",
+        "24831": "AB900X",
+        "24834": "AB900X",
+        "24836": "AB900X",
+        "24839": "AB900X",
+        "24842": "AB900X",
+        "24843": "AB900X",
+        "24844": "AB900X",
+        "24845": "AB900X",
+        "24846": "AB900X",
+        "24847": "AB900X",
+        "24848": "AB900X",
+        "24849": "AB900X",
+        "24850": "AB900X",
+        "24851": "AB900X",
+        "24852": "AB900X",
+        "24853": "AB900X",
+        "24854": "AB900X",
+        "24855": "AB900X",
+        "24857": "AB900X",
+        "24859": "AB900X",
+        "24860": "AB900X",
+        "24861": "AB900X",
+        "24862": "AB900X",
+        "24866": "AB900X",
+        "24867": "AB900X",
+        "24868": "AB900X",
+        "24869": "AB900X",
+        "24870": "AB900X",
+        "24871": "AB900X",
+        "24872": "AB900X",
+        "24873": "AB900X",
+        "24874": "AB900X",
+        "24877": "AB900X",
+        "24878": "AB900X",
+        "24879": "AB900X",
+        "24880": "AB900X",
+        "24881": "AB900X",
+        "24882": "AB900X",
+        "24884": "AB900X",
+        "24887": "AB900X",
+        "24888": "AB900X",
+        "24892": "AB900X",
+        "24894": "AB900X",
+        "24895": "AB900X",
+        "24898": "AB900X",
+        "24901": "AB900X",
+        "24902": "AB900X",
+        "24910": "AB900X",
+        "24915": "AB900X",
+        "24916": "AB900X",
+        "24917": "AB900X",
+        "24918": "AB900X",
+        "24920": "AB900X",
+        "24924": "AB900X",
+        "24925": "AB900X",
+        "24927": "AB900X",
+        "24931": "AB900X",
+        "24934": "AB900X",
+        "24935": "AB900X",
+        "24938": "AB900X",
+        "24941": "AB900X",
+        "24943": "AB900X",
+        "24944": "AB900X",
+        "24945": "AB900X",
+        "24946": "AB900X",
+        "24951": "AB900X",
+        "24954": "AB900X",
+        "24957": "AB900X",
+        "24961": "AB900X",
+        "24962": "AB900X",
+        "24963": "AB892X",
+        "24966": "AB900X",
+        "24970": "AB900X",
+        "24974": "AB900X",
+        "24976": "AB900X",
+        "24977": "AB900X",
+        "24981": "AB900X",
+        "24983": "AB900X",
+        "24984": "AB900X",
+        "24985": "AB900X",
+        "24986": "AB900X",
+        "24991": "AB900X",
+        "24993": "AB900X",
+        "25002": "AB900X",
+        "25003": "AB900X",
+        "25005": "AB900X",
+        "25007": "AB900X",
+        "25008": "AB900X",
+        "25009": "AB900X",
+        "25011": "AB900X",
+        "25015": "AB900X",
+        "25018": "AB900X",
+        "25019": "AB900X",
+        "25021": "AB900X",
+        "25022": "AB900X",
+        "25024": "AB900X",
+        "25025": "AB900X",
+        "25026": "AB900X",
+        "25028": "AB900X",
+        "25030": "AB900X",
+        "25031": "AB900X",
+        "25033": "AB900X",
+        "25035": "AB900X",
+        "25036": "AB900X",
+        "25039": "AB900X",
+        "25040": "AB900X",
+        "25043": "AB900X",
+        "25044": "AB900X",
+        "25045": "AB900X",
+        "25047": "AB900X",
+        "25048": "AB900X",
+        "25049": "AB900X",
+        "25051": "AB900X",
+        "25053": "AB900X",
+        "25054": "AB900X",
+        "25057": "AB900X",
+        "25059": "AB900X",
+        "25060": "AB900X",
+        "25061": "AB900X",
+        "25062": "AB900X",
+        "25063": "AB900X",
+        "25064": "AB900X",
+        "25067": "AB900X",
+        "25070": "AB900X",
+        "25071": "AB900X",
+        "25075": "AB900X",
+        "25076": "AB900X",
+        "25079": "AB900X",
+        "25081": "AB900X",
+        "25082": "AB900X",
+        "25083": "AB900X",
+        "25085": "AB900X",
+        "25086": "AB900X",
+        "25088": "AB900X",
+        "25090": "AB900X",
+        "25093": "AB900X",
+        "25102": "AB900X",
+        "25103": "AB900X",
+        "25106": "AB900X",
+        "25107": "AB900X",
+        "25108": "AB900X",
+        "25109": "AB900X",
+        "25110": "AB900X",
+        "25111": "AB900X",
+        "25112": "AB900X",
+        "25113": "AB900X",
+        "25114": "AB900X",
+        "25115": "AB900X",
+        "25118": "AB900X",
+        "25119": "AB900X",
+        "25121": "AB900X",
+        "25122": "AB900X",
+        "25123": "AB900X",
+        "25124": "AB900X",
+        "25125": "AB900X",
+        "25126": "AB900X",
+        "25130": "AB900X",
+        "25132": "AB900X",
+        "25133": "AB900X",
+        "25134": "AB900X",
+        "25136": "AB900X",
+        "25139": "AB900X",
+        "25140": "AB900X",
+        "25141": "AB900X",
+        "25142": "AB900X",
+        "25143": "AB900X",
+        "25147": "AB900X",
+        "25148": "AB900X",
+        "25149": "AB900X",
+        "25152": "AB900X",
+        "25154": "AB900X",
+        "25156": "AB900X",
+        "25159": "AB900X",
+        "25160": "AB900X",
+        "25161": "AB900X",
+        "25162": "AB900X",
+        "25164": "AB900X",
+        "25165": "AB900X",
+        "25168": "AB900X",
+        "25169": "AB900X",
+        "25173": "AB900X",
+        "25174": "AB900X",
+        "25177": "AB900X",
+        "25180": "AB900X",
+        "25181": "AB900X",
+        "25182": "AB900X",
+        "25183": "AB900X",
+        "25185": "AB900X",
+        "25186": "AB900X",
+        "25187": "AB900X",
+        "25193": "AB900X",
+        "25201": "AB900X",
+        "25202": "AB900X",
+        "25203": "AB900X",
+        "25204": "AB900X",
+        "25205": "AB900X",
+        "25206": "AB900X",
+        "25208": "AB900X",
+        "25209": "AB900X",
+        "25211": "AB900X",
+        "25213": "AB900X",
+        "25214": "AB900X",
+        "25231": "AB900X",
+        "25234": "AB900X",
+        "25235": "AB900X",
+        "25239": "AB900X",
+        "25241": "AB900X",
+        "25243": "AB900X",
+        "25244": "AB900X",
+        "25245": "AB900X",
+        "25247": "AB900X",
+        "25248": "AB900X",
+        "25251": "AB900X",
+        "25252": "AB900X",
+        "25253": "AB900X",
+        "25259": "AB900X",
+        "25260": "AB900X",
+        "25261": "AB900X",
+        "25262": "AB900X",
+        "25264": "AB900X",
+        "25265": "AB900X",
+        "25266": "AB900X",
+        "25267": "AB900X",
+        "25268": "AB900X",
+        "25270": "AB900X",
+        "25271": "AB900X",
+        "25275": "AB900X",
+        "25276": "AB900X",
+        "25285": "AB900X",
+        "25286": "AB900X",
+        "25287": "AB900X",
+        "25301": "AB900X",
+        "25302": "AB900X",
+        "25303": "AB900X",
+        "25304": "AB900X",
+        "25305": "AB900X",
+        "25306": "AB900X",
+        "25309": "AB900X",
+        "25311": "AB900X",
+        "25312": "AB900X",
+        "25313": "AB900X",
+        "25314": "AB900X",
+        "25315": "AB900X",
+        "25317": "AB900X",
+        "25320": "AB900X",
+        "25321": "AB900X",
+        "25322": "AB900X",
+        "25323": "AB900X",
+        "25324": "AB900X",
+        "25325": "AB900X",
+        "25326": "AB900X",
+        "25327": "AB900X",
+        "25328": "AB900X",
+        "25329": "AB900X",
+        "25330": "AB900X",
+        "25331": "AB900X",
+        "25332": "AB900X",
+        "25333": "AB900X",
+        "25334": "AB900X",
+        "25335": "AB900X",
+        "25336": "AB900X",
+        "25337": "AB900X",
+        "25338": "AB900X",
+        "25339": "AB900X",
+        "25350": "AB900X",
+        "25356": "AB900X",
+        "25357": "AB900X",
+        "25358": "AB900X",
+        "25360": "AB900X",
+        "25361": "AB900X",
+        "25362": "AB900X",
+        "25364": "AB900X",
+        "25365": "AB900X",
+        "25375": "AB900X",
+        "25387": "AB900X",
+        "25389": "AB900X",
+        "25392": "AB900X",
+        "25396": "AB900X",
+        "25401": "AB892X",
+        "25402": "AB892X",
+        "25403": "AB892X",
+        "25404": "AB892X",
+        "25405": "AB892X",
+        "25410": "AB892X",
+        "25411": "AB892X",
+        "25413": "AB892X",
+        "25414": "AB892X",
+        "25419": "AB892X",
+        "25420": "AB892X",
+        "25421": "AB892X",
+        "25422": "AB892X",
+        "25423": "AB892X",
+        "25425": "AB892X",
+        "25427": "AB892X",
+        "25428": "AB892X",
+        "25429": "AB892X",
+        "25430": "AB892X",
+        "25431": "AB892X",
+        "25432": "AB892X",
+        "25434": "AB892X",
+        "25437": "AB892X",
+        "25438": "AB892X",
+        "25440": "AB892X",
+        "25441": "AB892X",
+        "25442": "AB892X",
+        "25443": "AB892X",
+        "25444": "AB892X",
+        "25446": "AB892X",
+        "25501": "AB900X",
+        "25502": "AB900X",
+        "25503": "AB900X",
+        "25504": "AB900X",
+        "25505": "AB900X",
+        "25506": "AB900X",
+        "25507": "AB900X",
+        "25508": "AB900X",
+        "25510": "AB900X",
+        "25511": "AB900X",
+        "25512": "AB900X",
+        "25514": "AB900X",
+        "25515": "AB900X",
+        "25517": "AB900X",
+        "25520": "AB900X",
+        "25521": "AB900X",
+        "25523": "AB900X",
+        "25524": "AB900X",
+        "25526": "AB900X",
+        "25529": "AB900X",
+        "25530": "AB900X",
+        "25534": "AB900X",
+        "25535": "AB900X",
+        "25537": "AB900X",
+        "25540": "AB900X",
+        "25541": "AB900X",
+        "25544": "AB900X",
+        "25545": "AB900X",
+        "25547": "AB900X",
+        "25550": "AB900X",
+        "25555": "AB900X",
+        "25557": "AB900X",
+        "25559": "AB900X",
+        "25560": "AB900X",
+        "25562": "AB900X",
+        "25564": "AB900X",
+        "25565": "AB900X",
+        "25567": "AB900X",
+        "25569": "AB900X",
+        "25570": "AB900X",
+        "25571": "AB900X",
+        "25572": "AB900X",
+        "25573": "AB900X",
+        "25601": "AB900X",
+        "25606": "AB900X",
+        "25607": "AB900X",
+        "25608": "AB900X",
+        "25611": "AB900X",
+        "25612": "AB900X",
+        "25614": "AB900X",
+        "25617": "AB900X",
+        "25621": "AB900X",
+        "25624": "AB900X",
+        "25625": "AB900X",
+        "25628": "AB900X",
+        "25630": "AB900X",
+        "25632": "AB900X",
+        "25634": "AB900X",
+        "25635": "AB900X",
+        "25637": "AB900X",
+        "25638": "AB900X",
+        "25639": "AB900X",
+        "25644": "AB900X",
+        "25645": "AB900X",
+        "25646": "AB900X",
+        "25647": "AB900X",
+        "25649": "AB900X",
+        "25650": "AB900X",
+        "25651": "AB900X",
+        "25652": "AB900X",
+        "25653": "AB900X",
+        "25654": "AB900X",
+        "25661": "AB900X",
+        "25665": "AB900X",
+        "25666": "AB900X",
+        "25667": "AB900X",
+        "25669": "AB900X",
+        "25670": "AB900X",
+        "25671": "AB900X",
+        "25672": "AB900X",
+        "25674": "AB900X",
+        "25676": "AB900X",
+        "25678": "AB900X",
+        "25685": "AB900X",
+        "25686": "AB900X",
+        "25688": "AB900X",
+        "25690": "AB900X",
+        "25691": "AB900X",
+        "25692": "AB900X",
+        "25696": "AB900X",
+        "25697": "AB900X",
+        "25699": "AB900X",
+        "25701": "AB900X",
+        "25702": "AB900X",
+        "25703": "AB900X",
+        "25704": "AB900X",
+        "25705": "AB900X",
+        "25706": "AB900X",
+        "25707": "AB900X",
+        "25708": "AB900X",
+        "25709": "AB900X",
+        "25710": "AB900X",
+        "25711": "AB900X",
+        "25712": "AB900X",
+        "25713": "AB900X",
+        "25714": "AB900X",
+        "25715": "AB900X",
+        "25716": "AB900X",
+        "25717": "AB900X",
+        "25718": "AB900X",
+        "25719": "AB900X",
+        "25720": "AB900X",
+        "25721": "AB900X",
+        "25722": "AB900X",
+        "25723": "AB900X",
+        "25724": "AB900X",
+        "25725": "AB900X",
+        "25726": "AB900X",
+        "25727": "AB900X",
+        "25728": "AB900X",
+        "25729": "AB900X",
+        "25755": "AB900X",
+        "25770": "AB900X",
+        "25771": "AB900X",
+        "25772": "AB900X",
+        "25773": "AB900X",
+        "25774": "AB900X",
+        "25775": "AB900X",
+        "25776": "AB900X",
+        "25777": "AB900X",
+        "25778": "AB900X",
+        "25779": "AB900X",
+        "25801": "AB900X",
+        "25802": "AB900X",
+        "25810": "AB900X",
+        "25811": "AB900X",
+        "25812": "AB900X",
+        "25813": "AB900X",
+        "25816": "AB900X",
+        "25817": "AB900X",
+        "25818": "AB900X",
+        "25820": "AB900X",
+        "25823": "AB900X",
+        "25825": "AB900X",
+        "25826": "AB900X",
+        "25827": "AB900X",
+        "25831": "AB900X",
+        "25832": "AB900X",
+        "25833": "AB900X",
+        "25836": "AB900X",
+        "25837": "AB900X",
+        "25839": "AB900X",
+        "25840": "AB900X",
+        "25841": "AB900X",
+        "25843": "AB900X",
+        "25844": "AB900X",
+        "25845": "AB900X",
+        "25846": "AB900X",
+        "25848": "AB900X",
+        "25849": "AB900X",
+        "25851": "AB900X",
+        "25853": "AB900X",
+        "25854": "AB900X",
+        "25855": "AB900X",
+        "25857": "AB900X",
+        "25860": "AB900X",
+        "25862": "AB900X",
+        "25864": "AB900X",
+        "25865": "AB900X",
+        "25866": "AB900X",
+        "25868": "AB900X",
+        "25870": "AB900X",
+        "25871": "AB900X",
+        "25873": "AB900X",
+        "25875": "AB900X",
+        "25876": "AB900X",
+        "25878": "AB900X",
+        "25879": "AB900X",
+        "25880": "AB900X",
+        "25882": "AB900X",
+        "25901": "AB900X",
+        "25902": "AB900X",
+        "25904": "AB900X",
+        "25906": "AB900X",
+        "25907": "AB900X",
+        "25908": "AB900X",
+        "25909": "AB900X",
+        "25911": "AB900X",
+        "25913": "AB900X",
+        "25914": "AB900X",
+        "25915": "AB900X",
+        "25916": "AB900X",
+        "25917": "AB900X",
+        "25918": "AB900X",
+        "25919": "AB900X",
+        "25920": "AB900X",
+        "25921": "AB900X",
+        "25922": "AB900X",
+        "25926": "AB900X",
+        "25927": "AB900X",
+        "25928": "AB900X",
+        "25932": "AB900X",
+        "25936": "AB900X",
+        "25938": "AB900X",
+        "25942": "AB900X",
+        "25943": "AB900X",
+        "25951": "AB900X",
+        "25958": "AB900X",
+        "25961": "AB900X",
+        "25962": "AB900X",
+        "25965": "AB900X",
+        "25966": "AB900X",
+        "25969": "AB900X",
+        "25971": "AB900X",
+        "25972": "AB900X",
+        "25976": "AB900X",
+        "25977": "AB900X",
+        "25978": "AB900X",
+        "25979": "AB900X",
+        "25981": "AB900X",
+        "25984": "AB900X",
+        "25985": "AB900X",
+        "25986": "AB900X",
+        "25989": "AB900X",
+        "26003": "AB900X",
+        "26030": "AB900X",
+        "26031": "AB900X",
+        "26032": "AB900X",
+        "26033": "AB900X",
+        "26034": "AB900X",
+        "26035": "AB900X",
+        "26036": "AB900X",
+        "26037": "AB900X",
+        "26038": "AB900X",
+        "26039": "AB900X",
+        "26040": "AB900X",
+        "26041": "AB900X",
+        "26047": "AB900X",
+        "26050": "AB900X",
+        "26055": "AB900X",
+        "26056": "AB900X",
+        "26058": "AB900X",
+        "26059": "AB900X",
+        "26060": "AB900X",
+        "26062": "AB900X",
+        "26070": "AB900X",
+        "26074": "AB900X",
+        "26075": "AB900X",
+        "26101": "AB900X",
+        "26102": "AB900X",
+        "26103": "AB900X",
+        "26104": "AB900X",
+        "26105": "AB900X",
+        "26106": "AB900X",
+        "26120": "AB900X",
+        "26121": "AB900X",
+        "26133": "AB900X",
+        "26134": "AB900X",
+        "26136": "AB900X",
+        "26137": "AB900X",
+        "26138": "AB900X",
+        "26141": "AB900X",
+        "26142": "AB900X",
+        "26143": "AB900X",
+        "26146": "AB900X",
+        "26147": "AB900X",
+        "26148": "AB900X",
+        "26149": "AB900X",
+        "26150": "AB900X",
+        "26151": "AB900X",
+        "26152": "AB900X",
+        "26155": "AB900X",
+        "26159": "AB900X",
+        "26160": "AB900X",
+        "26161": "AB900X",
+        "26162": "AB900X",
+        "26164": "AB900X",
+        "26167": "AB900X",
+        "26169": "AB900X",
+        "26170": "AB900X",
+        "26175": "AB900X",
+        "26178": "AB900X",
+        "26180": "AB900X",
+        "26181": "AB900X",
+        "26184": "AB900X",
+        "26186": "AB900X",
+        "26187": "AB900X",
+        "26201": "AB900X",
+        "26202": "AB900X",
+        "26203": "AB900X",
+        "26205": "AB900X",
+        "26206": "AB900X",
+        "26208": "AB900X",
+        "26209": "AB900X",
+        "26210": "AB900X",
+        "26215": "AB900X",
+        "26217": "AB900X",
+        "26218": "AB900X",
+        "26219": "AB900X",
+        "26222": "AB900X",
+        "26224": "AB900X",
+        "26228": "AB900X",
+        "26229": "AB900X",
+        "26230": "AB900X",
+        "26234": "AB900X",
+        "26236": "AB900X",
+        "26237": "AB900X",
+        "26238": "AB900X",
+        "26241": "AB900X",
+        "26250": "AB900X",
+        "26253": "AB900X",
+        "26254": "AB900X",
+        "26257": "AB900X",
+        "26259": "AB900X",
+        "26260": "AB900X",
+        "26261": "AB900X",
+        "26263": "AB900X",
+        "26264": "AB900X",
+        "26266": "AB900X",
+        "26267": "AB900X",
+        "26268": "AB900X",
+        "26269": "AB900X",
+        "26270": "AB900X",
+        "26271": "AB900X",
+        "26273": "AB900X",
+        "26275": "AB900X",
+        "26276": "AB900X",
+        "26278": "AB900X",
+        "26280": "AB900X",
+        "26282": "AB900X",
+        "26283": "AB900X",
+        "26285": "AB900X",
+        "26287": "AB900X",
+        "26288": "AB900X",
+        "26289": "AB900X",
+        "26291": "AB900X",
+        "26292": "AB900X",
+        "26293": "AB900X",
+        "26294": "AB900X",
+        "26296": "AB900X",
+        "26298": "AB900X",
+        "26301": "AB900X",
+        "26302": "AB900X",
+        "26306": "AB900X",
+        "26320": "AB900X",
+        "26321": "AB900X",
+        "26323": "AB900X",
+        "26325": "AB900X",
+        "26327": "AB900X",
+        "26330": "AB900X",
+        "26335": "AB900X",
+        "26337": "AB900X",
+        "26338": "AB900X",
+        "26339": "AB900X",
+        "26342": "AB900X",
+        "26343": "AB900X",
+        "26346": "AB900X",
+        "26347": "AB900X",
+        "26348": "AB900X",
+        "26349": "AB900X",
+        "26351": "AB900X",
+        "26354": "AB900X",
+        "26361": "AB900X",
+        "26362": "AB900X",
+        "26366": "AB900X",
+        "26369": "AB900X",
+        "26372": "AB900X",
+        "26374": "AB900X",
+        "26376": "AB900X",
+        "26377": "AB900X",
+        "26378": "AB900X",
+        "26384": "AB900X",
+        "26385": "AB900X",
+        "26386": "AB900X",
+        "26401": "AB900X",
+        "26404": "AB900X",
+        "26405": "AB900X",
+        "26408": "AB900X",
+        "26410": "AB900X",
+        "26411": "AB900X",
+        "26412": "AB900X",
+        "26415": "AB900X",
+        "26416": "AB900X",
+        "26419": "AB900X",
+        "26421": "AB900X",
+        "26422": "AB900X",
+        "26424": "AB900X",
+        "26425": "AB900X",
+        "26426": "AB900X",
+        "26430": "AB900X",
+        "26431": "AB900X",
+        "26434": "AB900X",
+        "26435": "AB900X",
+        "26436": "AB900X",
+        "26437": "AB900X",
+        "26438": "AB900X",
+        "26440": "AB900X",
+        "26443": "AB900X",
+        "26444": "AB900X",
+        "26447": "AB900X",
+        "26448": "AB900X",
+        "26451": "AB900X",
+        "26452": "AB900X",
+        "26456": "AB900X",
+        "26461": "AB900X",
+        "26463": "AB900X",
+        "26501": "AB900X",
+        "26502": "AB900X",
+        "26504": "AB900X",
+        "26505": "AB900X",
+        "26506": "AB900X",
+        "26507": "AB900X",
+        "26508": "AB900X",
+        "26519": "AB900X",
+        "26520": "AB900X",
+        "26521": "AB900X",
+        "26524": "AB900X",
+        "26525": "AB900X",
+        "26527": "AB900X",
+        "26531": "AB900X",
+        "26534": "AB900X",
+        "26537": "AB900X",
+        "26541": "AB900X",
+        "26542": "AB900X",
+        "26543": "AB900X",
+        "26544": "AB900X",
+        "26546": "AB900X",
+        "26547": "AB900X",
+        "26554": "AB900X",
+        "26555": "AB887X",
+        "26559": "AB900X",
+        "26560": "AB900X",
+        "26561": "AB900X",
+        "26562": "AB900X",
+        "26563": "AB900X",
+        "26566": "AB900X",
+        "26568": "AB900X",
+        "26570": "AB900X",
+        "26571": "AB900X",
+        "26572": "AB900X",
+        "26574": "AB900X",
+        "26575": "AB900X",
+        "26576": "AB900X",
+        "26578": "AB900X",
+        "26581": "AB900X",
+        "26582": "AB900X",
+        "26585": "AB900X",
+        "26586": "AB900X",
+        "26587": "AB900X",
+        "26588": "AB900X",
+        "26589": "AB900X",
+        "26590": "AB900X",
+        "26591": "AB900X",
+        "26601": "AB900X",
+        "26610": "AB900X",
+        "26611": "AB900X",
+        "26615": "AB900X",
+        "26617": "AB900X",
+        "26619": "AB900X",
+        "26620": "AB900X",
+        "26621": "AB900X",
+        "26623": "AB900X",
+        "26624": "AB900X",
+        "26627": "AB900X",
+        "26629": "AB900X",
+        "26631": "AB900X",
+        "26636": "AB900X",
+        "26638": "AB900X",
+        "26639": "AB900X",
+        "26651": "AB900X",
+        "26656": "AB900X",
+        "26660": "AB900X",
+        "26662": "AB900X",
+        "26667": "AB900X",
+        "26671": "AB900X",
+        "26674": "AB900X",
+        "26675": "AB900X",
+        "26676": "AB900X",
+        "26678": "AB900X",
+        "26679": "AB900X",
+        "26680": "AB900X",
+        "26681": "AB900X",
+        "26683": "AB900X",
+        "26684": "AB900X",
+        "26690": "AB900X",
+        "26691": "AB900X",
+        "26704": "AB892X",
+        "26705": "AB900X",
+        "26707": "AB892X",
+        "26710": "AB892X",
+        "26711": "AB892X",
+        "26714": "AB892X",
+        "26716": "AB900X",
+        "26717": "AB892X",
+        "26719": "AB892X",
+        "26720": "AB892X",
+        "26722": "AB892X",
+        "26726": "AB892X",
+        "26731": "AB892X",
+        "26739": "AB892X",
+        "26743": "AB892X",
+        "26750": "AB892X",
+        "26753": "AB892X",
+        "26755": "AB892X",
+        "26757": "AB892X",
+        "26760": "AB900X",
+        "26761": "AB892X",
+        "26763": "AB892X",
+        "26764": "AB900X",
+        "26767": "AB892X",
+        "26801": "AB892X",
+        "26802": "AB900X",
+        "26804": "AB900X",
+        "26807": "AB900X",
+        "26808": "AB892X",
+        "26810": "AB892X",
+        "26812": "AB892X",
+        "26814": "AB900X",
+        "26815": "AB900X",
+        "26817": "AB892X",
+        "26818": "AB900X",
+        "26823": "AB892X",
+        "26833": "AB892X",
+        "26836": "AB892X",
+        "26838": "AB892X",
+        "26845": "AB892X",
+        "26847": "AB892X",
+        "26851": "AB892X",
+        "26852": "AB892X",
+        "26855": "AB900X",
+        "26865": "AB892X",
+        "26866": "AB900X",
+        "26884": "AB900X",
+        "26886": "AB900X",
+        "29001": "AB891X",
+        "29002": "AB891X",
+        "29003": "AB891X",
+        "29006": "AB891X",
+        "29009": "AB891X",
+        "29010": "AB891X",
+        "29014": "AB887X",
+        "29015": "AB891X",
+        "29016": "AB891X",
+        "29018": "AB891X",
+        "29020": "AB891X",
+        "29021": "AB891X",
+        "29030": "AB891X",
+        "29031": "AB895X",
+        "29032": "AB891X",
+        "29033": "AB891X",
+        "29036": "AB891X",
+        "29037": "AB895X",
+        "29038": "AB891X",
+        "29039": "AB891X",
+        "29040": "AB891X",
+        "29041": "AB891X",
+        "29042": "AB891X",
+        "29044": "AB891X",
+        "29045": "AB891X",
+        "29046": "AB891X",
+        "29047": "AB891X",
+        "29048": "AB891X",
+        "29051": "AB891X",
+        "29052": "AB891X",
+        "29053": "AB891X",
+        "29054": "AB891X",
+        "29055": "AB887X",
+        "29056": "AB891X",
+        "29058": "AB887X",
+        "29059": "AB891X",
+        "29061": "AB891X",
+        "29062": "AB891X",
+        "29063": "AB891X",
+        "29065": "AB891X",
+        "29067": "AB887X",
+        "29069": "AB888X",
+        "29070": "AB891X",
+        "29071": "AB891X",
+        "29072": "AB891X",
+        "29073": "AB891X",
+        "29074": "AB891X",
+        "29075": "AB891X",
+        "29078": "AB891X",
+        "29079": "AB891X",
+        "29080": "AB891X",
+        "29081": "AB891X",
+        "29082": "AB891X",
+        "29101": "AB891X",
+        "29102": "AB891X",
+        "29104": "AB891X",
+        "29105": "AB891X",
+        "29107": "AB891X",
+        "29108": "AB891X",
+        "29111": "AB891X",
+        "29112": "AB891X",
+        "29113": "AB891X",
+        "29114": "AB888X",
+        "29115": "AB891X",
+        "29116": "AB891X",
+        "29117": "AB891X",
+        "29118": "AB891X",
+        "29122": "AB891X",
+        "29123": "AB891X",
+        "29125": "AB891X",
+        "29126": "AB891X",
+        "29127": "AB891X",
+        "29128": "AB891X",
+        "29129": "AB891X",
+        "29130": "AB891X",
+        "29132": "AB891X",
+        "29133": "AB891X",
+        "29135": "AB891X",
+        "29137": "AB891X",
+        "29138": "AB895X",
+        "29142": "AB891X",
+        "29143": "AB891X",
+        "29145": "AB891X",
+        "29146": "AB891X",
+        "29147": "AB891X",
+        "29148": "AB891X",
+        "29150": "AB891X",
+        "29151": "AB891X",
+        "29152": "AB891X",
+        "29153": "AB891X",
+        "29154": "AB891X",
+        "29160": "AB891X",
+        "29161": "AB888X",
+        "29162": "AB891X",
+        "29163": "AB891X",
+        "29164": "AB891X",
+        "29166": "AB891X",
+        "29168": "AB891X",
+        "29169": "AB891X",
+        "29170": "AB891X",
+        "29171": "AB891X",
+        "29172": "AB891X",
+        "29175": "AB891X",
+        "29177": "AB891X",
+        "29178": "AB891X",
+        "29180": "AB891X",
+        "29201": "AB891X",
+        "29202": "AB891X",
+        "29203": "AB891X",
+        "29204": "AB891X",
+        "29205": "AB891X",
+        "29206": "AB891X",
+        "29207": "AB891X",
+        "29208": "AB891X",
+        "29209": "AB891X",
+        "29210": "AB891X",
+        "29211": "AB891X",
+        "29212": "AB891X",
+        "29214": "AB891X",
+        "29215": "AB891X",
+        "29216": "AB891X",
+        "29217": "AB891X",
+        "29218": "AB891X",
+        "29219": "AB891X",
+        "29220": "AB891X",
+        "29221": "AB891X",
+        "29222": "AB891X",
+        "29223": "AB891X",
+        "29224": "AB891X",
+        "29225": "AB891X",
+        "29226": "AB891X",
+        "29227": "AB891X",
+        "29228": "AB891X",
+        "29229": "AB891X",
+        "29230": "AB891X",
+        "29240": "AB891X",
+        "29250": "AB891X",
+        "29260": "AB891X",
+        "29290": "AB891X",
+        "29292": "AB891X",
+        "29301": "AB895X",
+        "29302": "AB895X",
+        "29303": "AB895X",
+        "29304": "AB895X",
+        "29305": "AB895X",
+        "29306": "AB895X",
+        "29307": "AB895X",
+        "29316": "AB895X",
+        "29318": "AB895X",
+        "29319": "AB895X",
+        "29320": "AB895X",
+        "29321": "AB895X",
+        "29322": "AB895X",
+        "29323": "AB895X",
+        "29324": "AB895X",
+        "29325": "AB895X",
+        "29329": "AB895X",
+        "29330": "AB895X",
+        "29331": "AB895X",
+        "29332": "AB895X",
+        "29333": "AB895X",
+        "29334": "AB895X",
+        "29335": "AB895X",
+        "29336": "AB895X",
+        "29338": "AB895X",
+        "29340": "AB895X",
+        "29341": "AB895X",
+        "29342": "AB895X",
+        "29346": "AB895X",
+        "29348": "AB895X",
+        "29349": "AB895X",
+        "29351": "AB895X",
+        "29353": "AB895X",
+        "29355": "AB891X",
+        "29356": "AB895X",
+        "29360": "AB895X",
+        "29364": "AB895X",
+        "29365": "AB895X",
+        "29368": "AB895X",
+        "29369": "AB895X",
+        "29370": "AB895X",
+        "29372": "AB895X",
+        "29373": "AB895X",
+        "29374": "AB895X",
+        "29375": "AB895X",
+        "29376": "AB895X",
+        "29377": "AB895X",
+        "29378": "AB895X",
+        "29379": "AB895X",
+        "29384": "AB895X",
+        "29385": "AB895X",
+        "29386": "AB895X",
+        "29388": "AB895X",
+        "29390": "AB895X",
+        "29391": "AB895X",
+        "29395": "AB895X",
+        "29401": "AB891X",
+        "29402": "AB891X",
+        "29403": "AB891X",
+        "29404": "AB891X",
+        "29405": "AB891X",
+        "29406": "AB891X",
+        "29407": "AB891X",
+        "29409": "AB891X",
+        "29410": "AB891X",
+        "29412": "AB891X",
+        "29413": "AB891X",
+        "29414": "AB891X",
+        "29415": "AB891X",
+        "29416": "AB891X",
+        "29417": "AB891X",
+        "29418": "AB891X",
+        "29419": "AB891X",
+        "29420": "AB891X",
+        "29422": "AB891X",
+        "29423": "AB891X",
+        "29424": "AB891X",
+        "29425": "AB891X",
+        "29426": "AB891X",
+        "29429": "AB891X",
+        "29430": "AB891X",
+        "29431": "AB891X",
+        "29432": "AB891X",
+        "29433": "AB891X",
+        "29434": "AB891X",
+        "29435": "AB891X",
+        "29436": "AB891X",
+        "29437": "AB891X",
+        "29438": "AB891X",
+        "29439": "AB891X",
+        "29440": "AB891X",
+        "29442": "AB891X",
+        "29445": "AB891X",
+        "29446": "AB891X",
+        "29447": "AB891X",
+        "29448": "AB891X",
+        "29449": "AB891X",
+        "29450": "AB891X",
+        "29451": "AB891X",
+        "29452": "AB891X",
+        "29453": "AB891X",
+        "29455": "AB891X",
+        "29456": "AB891X",
+        "29457": "AB891X",
+        "29458": "AB891X",
+        "29461": "AB891X",
+        "29464": "AB891X",
+        "29465": "AB891X",
+        "29466": "AB891X",
+        "29468": "AB891X",
+        "29469": "AB891X",
+        "29470": "AB891X",
+        "29471": "AB891X",
+        "29472": "AB891X",
+        "29474": "AB891X",
+        "29475": "AB891X",
+        "29476": "AB891X",
+        "29477": "AB891X",
+        "29479": "AB891X",
+        "29481": "AB891X",
+        "29482": "AB891X",
+        "29483": "AB891X",
+        "29484": "AB891X",
+        "29485": "AB891X",
+        "29486": "AB891X",
+        "29487": "AB891X",
+        "29488": "AB891X",
+        "29492": "AB891X",
+        "29493": "AB891X",
+        "29501": "AB888X",
+        "29502": "AB891X",
+        "29503": "AB891X",
+        "29504": "AB891X",
+        "29505": "AB888X",
+        "29506": "AB888X",
+        "29510": "AB891X",
+        "29511": "AB888X",
+        "29512": "AB888X",
+        "29516": "AB888X",
+        "29518": "AB888X",
+        "29519": "AB888X",
+        "29520": "AB887X",
+        "29525": "AB888X",
+        "29526": "AB888X",
+        "29527": "AB888X",
+        "29528": "AB888X",
+        "29530": "AB888X",
+        "29532": "AB888X",
+        "29536": "AB888X",
+        "29540": "AB888X",
+        "29541": "AB888X",
+        "29542": "AB888X",
+        "29543": "AB888X",
+        "29544": "AB888X",
+        "29545": "AB888X",
+        "29546": "AB888X",
+        "29547": "AB888X",
+        "29550": "AB888X",
+        "29551": "AB891X",
+        "29554": "AB888X",
+        "29555": "AB888X",
+        "29556": "AB888X",
+        "29560": "AB888X",
+        "29563": "AB888X",
+        "29564": "AB891X",
+        "29565": "AB888X",
+        "29566": "AB888X",
+        "29567": "AB888X",
+        "29568": "AB888X",
+        "29569": "AB888X",
+        "29570": "AB888X",
+        "29571": "AB888X",
+        "29572": "AB888X",
+        "29573": "AB888X",
+        "29574": "AB888X",
+        "29575": "AB888X",
+        "29576": "AB888X",
+        "29577": "AB888X",
+        "29578": "AB888X",
+        "29579": "AB888X",
+        "29580": "AB891X",
+        "29581": "AB888X",
+        "29582": "AB888X",
+        "29583": "AB888X",
+        "29584": "AB891X",
+        "29585": "AB888X",
+        "29587": "AB888X",
+        "29588": "AB888X",
+        "29589": "AB888X",
+        "29590": "AB891X",
+        "29591": "AB888X",
+        "29592": "AB888X",
+        "29593": "AB891X",
+        "29594": "AB888X",
+        "29596": "AB888X",
+        "29597": "AB888X",
+        "29598": "AB888X",
+        "29601": "AB895X",
+        "29602": "AB887X",
+        "29603": "AB895X",
+        "29604": "AB895X",
+        "29605": "AB895X",
+        "29606": "AB895X",
+        "29607": "AB895X",
+        "29608": "AB895X",
+        "29609": "AB895X",
+        "29610": "AB895X",
+        "29611": "AB895X",
+        "29612": "AB895X",
+        "29613": "AB895X",
+        "29614": "AB895X",
+        "29615": "AB895X",
+        "29616": "AB895X",
+        "29617": "AB895X",
+        "29620": "AB895X",
+        "29621": "AB895X",
+        "29622": "AB895X",
+        "29623": "AB895X",
+        "29624": "AB895X",
+        "29625": "AB895X",
+        "29626": "AB895X",
+        "29627": "AB895X",
+        "29628": "AB895X",
+        "29630": "AB895X",
+        "29631": "AB895X",
+        "29632": "AB895X",
+        "29633": "AB895X",
+        "29634": "AB895X",
+        "29635": "AB895X",
+        "29636": "AB895X",
+        "29638": "AB895X",
+        "29639": "AB895X",
+        "29640": "AB895X",
+        "29641": "AB895X",
+        "29642": "AB895X",
+        "29643": "AB895X",
+        "29644": "AB895X",
+        "29645": "AB895X",
+        "29646": "AB895X",
+        "29647": "AB895X",
+        "29648": "AB895X",
+        "29649": "AB895X",
+        "29650": "AB895X",
+        "29651": "AB895X",
+        "29652": "AB895X",
+        "29653": "AB895X",
+        "29654": "AB895X",
+        "29655": "AB895X",
+        "29656": "AB895X",
+        "29657": "AB895X",
+        "29658": "AB895X",
+        "29659": "AB895X",
+        "29661": "AB895X",
+        "29662": "AB895X",
+        "29664": "AB895X",
+        "29665": "AB895X",
+        "29666": "AB895X",
+        "29667": "AB895X",
+        "29669": "AB895X",
+        "29670": "AB895X",
+        "29671": "AB895X",
+        "29672": "AB895X",
+        "29673": "AB895X",
+        "29675": "AB895X",
+        "29676": "AB895X",
+        "29677": "AB895X",
+        "29678": "AB895X",
+        "29679": "AB895X",
+        "29680": "AB895X",
+        "29681": "AB895X",
+        "29682": "AB895X",
+        "29683": "AB895X",
+        "29684": "AB895X",
+        "29685": "AB895X",
+        "29686": "AB895X",
+        "29687": "AB895X",
+        "29688": "AB895X",
+        "29689": "AB895X",
+        "29690": "AB895X",
+        "29691": "AB895X",
+        "29692": "AB895X",
+        "29693": "AB895X",
+        "29695": "AB895X",
+        "29696": "AB895X",
+        "29697": "AB895X",
+        "29698": "AB895X",
+        "29702": "AB895X",
+        "29703": "AB887X",
+        "29704": "AB887X",
+        "29706": "AB887X",
+        "29707": "AB887X",
+        "29708": "AB887X",
+        "29709": "AB891X",
+        "29710": "AB887X",
+        "29712": "AB887X",
+        "29714": "AB887X",
+        "29715": "AB887X",
+        "29716": "AB887X",
+        "29717": "AB887X",
+        "29718": "AB887X",
+        "29720": "AB887X",
+        "29721": "AB891X",
+        "29722": "AB891X",
+        "29724": "AB887X",
+        "29726": "AB887X",
+        "29727": "AB891X",
+        "29728": "AB891X",
+        "29729": "AB887X",
+        "29730": "AB887X",
+        "29731": "AB887X",
+        "29732": "AB887X",
+        "29733": "AB887X",
+        "29734": "AB887X",
+        "29741": "AB891X",
+        "29742": "AB895X",
+        "29743": "AB887X",
+        "29744": "AB887X",
+        "29745": "AB887X",
+        "29801": "AB891X",
+        "29802": "AB891X",
+        "29803": "AB891X",
+        "29804": "AB891X",
+        "29805": "AB891X",
+        "29808": "AB891X",
+        "29809": "AB891X",
+        "29810": "AB891X",
+        "29812": "AB891X",
+        "29813": "AB891X",
+        "29816": "AB891X",
+        "29817": "AB891X",
+        "29819": "AB895X",
+        "29821": "AB895X",
+        "29822": "AB891X",
+        "29824": "AB891X",
+        "29826": "AB891X",
+        "29827": "AB891X",
+        "29828": "AB891X",
+        "29829": "AB891X",
+        "29831": "AB891X",
+        "29832": "AB891X",
+        "29834": "AB891X",
+        "29835": "AB895X",
+        "29836": "AB891X",
+        "29838": "AB895X",
+        "29839": "AB891X",
+        "29840": "AB895X",
+        "29841": "AB891X",
+        "29842": "AB891X",
+        "29843": "AB891X",
+        "29844": "AB895X",
+        "29845": "AB895X",
+        "29846": "AB891X",
+        "29847": "AB891X",
+        "29848": "AB895X",
+        "29849": "AB891X",
+        "29850": "AB891X",
+        "29851": "AB891X",
+        "29853": "AB891X",
+        "29856": "AB891X",
+        "29860": "AB891X",
+        "29861": "AB891X",
+        "29899": "AB895X",
+        "29901": "AB891X",
+        "29902": "AB891X",
+        "29903": "AB891X",
+        "29904": "AB891X",
+        "29905": "AB891X",
+        "29906": "AB891X",
+        "29907": "AB891X",
+        "29909": "AB891X",
+        "29910": "AB891X",
+        "29911": "AB891X",
+        "29912": "AB891X",
+        "29913": "AB891X",
+        "29914": "AB891X",
+        "29915": "AB891X",
+        "29916": "AB891X",
+        "29918": "AB891X",
+        "29920": "AB891X",
+        "29921": "AB891X",
+        "29922": "AB891X",
+        "29923": "AB891X",
+        "29924": "AB891X",
+        "29925": "AB891X",
+        "29926": "AB891X",
+        "29927": "AB891X",
+        "29928": "AB891X",
+        "29929": "AB891X",
+        "29931": "AB891X",
+        "29932": "AB891X",
+        "29933": "AB891X",
+        "29934": "AB891X",
+        "29935": "AB891X",
+        "29936": "AB891X",
+        "29938": "AB891X",
+        "29939": "AB891X",
+        "29940": "AB891X",
+        "29941": "AB891X",
+        "29943": "AB891X",
+        "29944": "AB891X",
+        "29945": "AB891X",
+        "30002": "AB889X",
+        "30003": "AB889X",
+        "30004": "AB889X",
+        "30005": "AB889X",
+        "30006": "AB889X",
+        "30007": "AB889X",
+        "30008": "AB889X",
+        "30009": "AB889X",
+        "30010": "AB889X",
+        "30011": "AB889X",
+        "30012": "AB889X",
+        "30013": "AB889X",
+        "30014": "AB889X",
+        "30015": "AB889X",
+        "30016": "AB889X",
+        "30017": "AB889X",
+        "30018": "AB889X",
+        "30019": "AB889X",
+        "30021": "AB889X",
+        "30022": "AB889X",
+        "30023": "AB889X",
+        "30024": "AB889X",
+        "30025": "AB889X",
+        "30026": "AB889X",
+        "30028": "AB889X",
+        "30029": "AB889X",
+        "30030": "AB889X",
+        "30031": "AB889X",
+        "30032": "AB889X",
+        "30033": "AB889X",
+        "30034": "AB889X",
+        "30035": "AB889X",
+        "30036": "AB889X",
+        "30037": "AB889X",
+        "30038": "AB889X",
+        "30039": "AB889X",
+        "30040": "AB889X",
+        "30041": "AB889X",
+        "30042": "AB889X",
+        "30043": "AB889X",
+        "30044": "AB889X",
+        "30045": "AB889X",
+        "30046": "AB889X",
+        "30047": "AB889X",
+        "30048": "AB889X",
+        "30049": "AB889X",
+        "30052": "AB889X",
+        "30054": "AB889X",
+        "30055": "AB889X",
+        "30056": "AB889X",
+        "30058": "AB889X",
+        "30060": "AB889X",
+        "30061": "AB889X",
+        "30062": "AB889X",
+        "30063": "AB889X",
+        "30064": "AB889X",
+        "30065": "AB889X",
+        "30066": "AB889X",
+        "30067": "AB889X",
+        "30068": "AB887X",
+        "30069": "AB889X",
+        "30070": "AB889X",
+        "30071": "AB889X",
+        "30072": "AB889X",
+        "30073": "AB889X",
+        "30074": "AB889X",
+        "30075": "AB889X",
+        "30076": "AB889X",
+        "30077": "AB889X",
+        "30078": "AB889X",
+        "30079": "AB889X",
+        "30080": "AB889X",
+        "30081": "AB889X",
+        "30082": "AB889X",
+        "30083": "AB889X",
+        "30084": "AB889X",
+        "30085": "AB889X",
+        "30086": "AB889X",
+        "30087": "AB889X",
+        "30088": "AB889X",
+        "30090": "AB889X",
+        "30091": "AB889X",
+        "30092": "AB889X",
+        "30093": "AB889X",
+        "30094": "AB889X",
+        "30095": "AB889X",
+        "30096": "AB889X",
+        "30097": "AB889X",
+        "30098": "AB889X",
+        "30099": "AB889X",
+        "30101": "AB889X",
+        "30102": "AB889X",
+        "30103": "AB889X",
+        "30104": "AB889X",
+        "30105": "AB889X",
+        "30106": "AB889X",
+        "30107": "AB889X",
+        "30108": "AB889X",
+        "30109": "AB889X",
+        "30110": "AB889X",
+        "30111": "AB889X",
+        "30112": "AB889X",
+        "30113": "AB889X",
+        "30114": "AB889X",
+        "30115": "AB889X",
+        "30116": "AB889X",
+        "30117": "AB889X",
+        "30118": "AB889X",
+        "30119": "AB889X",
+        "30120": "AB889X",
+        "30121": "AB889X",
+        "30122": "AB889X",
+        "30123": "AB889X",
+        "30124": "AB889X",
+        "30125": "AB889X",
+        "30126": "AB889X",
+        "30127": "AB889X",
+        "30129": "AB889X",
+        "30132": "AB889X",
+        "30133": "AB889X",
+        "30134": "AB889X",
+        "30135": "AB889X",
+        "30137": "AB889X",
+        "30138": "AB889X",
+        "30139": "AB889X",
+        "30140": "AB889X",
+        "30141": "AB889X",
+        "30142": "AB889X",
+        "30143": "AB889X",
+        "30144": "AB889X",
+        "30145": "AB889X",
+        "30146": "AB889X",
+        "30147": "AB889X",
+        "30148": "AB889X",
+        "30149": "AB889X",
+        "30150": "AB889X",
+        "30151": "AB889X",
+        "30152": "AB889X",
+        "30153": "AB889X",
+        "30154": "AB889X",
+        "30156": "AB889X",
+        "30157": "AB889X",
+        "30160": "AB889X",
+        "30161": "AB889X",
+        "30162": "AB889X",
+        "30163": "AB889X",
+        "30164": "AB889X",
+        "30165": "AB889X",
+        "30168": "AB889X",
+        "30169": "AB889X",
+        "30170": "AB889X",
+        "30171": "AB889X",
+        "30172": "AB889X",
+        "30173": "AB889X",
+        "30175": "AB889X",
+        "30176": "AB889X",
+        "30177": "AB889X",
+        "30178": "AB889X",
+        "30179": "AB889X",
+        "30180": "AB889X",
+        "30182": "AB889X",
+        "30183": "AB889X",
+        "30184": "AB889X",
+        "30185": "AB889X",
+        "30187": "AB889X",
+        "30188": "AB889X",
+        "30189": "AB889X",
+        "30204": "AB889X",
+        "30205": "AB889X",
+        "30206": "AB889X",
+        "30212": "AB889X",
+        "30213": "AB889X",
+        "30214": "AB889X",
+        "30215": "AB889X",
+        "30216": "AB889X",
+        "30217": "AB889X",
+        "30218": "AB889X",
+        "30219": "AB889X",
+        "30220": "AB889X",
+        "30222": "AB889X",
+        "30223": "AB889X",
+        "30224": "AB889X",
+        "30228": "AB889X",
+        "30229": "AB889X",
+        "30230": "AB889X",
+        "30233": "AB889X",
+        "30234": "AB889X",
+        "30236": "AB889X",
+        "30237": "AB889X",
+        "30238": "AB889X",
+        "30240": "AB889X",
+        "30241": "AB889X",
+        "30248": "AB889X",
+        "30250": "AB889X",
+        "30251": "AB889X",
+        "30252": "AB889X",
+        "30253": "AB889X",
+        "30256": "AB889X",
+        "30257": "AB889X",
+        "30258": "AB889X",
+        "30259": "AB889X",
+        "30260": "AB889X",
+        "30261": "AB889X",
+        "30263": "AB889X",
+        "30264": "AB889X",
+        "30265": "AB889X",
+        "30266": "AB889X",
+        "30268": "AB889X",
+        "30269": "AB889X",
+        "30270": "AB889X",
+        "30271": "AB889X",
+        "30272": "AB889X",
+        "30273": "AB889X",
+        "30274": "AB889X",
+        "30275": "AB889X",
+        "30276": "AB889X",
+        "30277": "AB889X",
+        "30281": "AB889X",
+        "30284": "AB889X",
+        "30285": "AB889X",
+        "30286": "AB889X",
+        "30287": "AB889X",
+        "30288": "AB889X",
+        "30289": "AB889X",
+        "30290": "AB889X",
+        "30291": "AB889X",
+        "30292": "AB889X",
+        "30293": "AB889X",
+        "30294": "AB889X",
+        "30295": "AB889X",
+        "30296": "AB889X",
+        "30297": "AB889X",
+        "30298": "AB889X",
+        "30301": "AB889X",
+        "30302": "AB889X",
+        "30303": "AB889X",
+        "30304": "AB889X",
+        "30305": "AB889X",
+        "30306": "AB889X",
+        "30307": "AB889X",
+        "30308": "AB889X",
+        "30309": "AB889X",
+        "30310": "AB889X",
+        "30311": "AB889X",
+        "30312": "AB889X",
+        "30313": "AB889X",
+        "30314": "AB889X",
+        "30315": "AB889X",
+        "30316": "AB889X",
+        "30317": "AB889X",
+        "30318": "AB889X",
+        "30319": "AB889X",
+        "30320": "AB889X",
+        "30321": "AB889X",
+        "30322": "AB889X",
+        "30324": "AB889X",
+        "30325": "AB889X",
+        "30326": "AB889X",
+        "30327": "AB889X",
+        "30328": "AB889X",
+        "30329": "AB889X",
+        "30330": "AB889X",
+        "30331": "AB889X",
+        "30332": "AB889X",
+        "30333": "AB889X",
+        "30334": "AB889X",
+        "30336": "AB889X",
+        "30337": "AB889X",
+        "30338": "AB889X",
+        "30339": "AB889X",
+        "30340": "AB889X",
+        "30341": "AB889X",
+        "30342": "AB889X",
+        "30343": "AB889X",
+        "30344": "AB889X",
+        "30345": "AB889X",
+        "30346": "AB889X",
+        "30347": "AB889X",
+        "30348": "AB889X",
+        "30349": "AB889X",
+        "30350": "AB889X",
+        "30353": "AB889X",
+        "30354": "AB889X",
+        "30355": "AB889X",
+        "30356": "AB889X",
+        "30357": "AB889X",
+        "30358": "AB889X",
+        "30359": "AB889X",
+        "30360": "AB889X",
+        "30361": "AB889X",
+        "30362": "AB889X",
+        "30363": "AB889X",
+        "30364": "AB889X",
+        "30366": "AB889X",
+        "30368": "AB889X",
+        "30369": "AB889X",
+        "30370": "AB889X",
+        "30371": "AB889X",
+        "30374": "AB889X",
+        "30375": "AB889X",
+        "30376": "AB889X",
+        "30377": "AB889X",
+        "30378": "AB889X",
+        "30379": "AB889X",
+        "30380": "AB889X",
+        "30384": "AB889X",
+        "30385": "AB889X",
+        "30386": "AB889X",
+        "30387": "AB889X",
+        "30388": "AB889X",
+        "30389": "AB889X",
+        "30390": "AB889X",
+        "30392": "AB889X",
+        "30394": "AB889X",
+        "30396": "AB889X",
+        "30398": "AB889X",
+        "30399": "AB889X",
+        "30401": "AB891X",
+        "30410": "AB891X",
+        "30411": "AB891X",
+        "30412": "AB891X",
+        "30413": "AB891X",
+        "30414": "AB891X",
+        "30415": "AB891X",
+        "30417": "AB891X",
+        "30420": "AB891X",
+        "30421": "AB891X",
+        "30423": "AB891X",
+        "30424": "AB891X",
+        "30425": "AB891X",
+        "30426": "AB891X",
+        "30427": "AB891X",
+        "30428": "AB891X",
+        "30429": "AB891X",
+        "30434": "AB891X",
+        "30436": "AB891X",
+        "30438": "AB891X",
+        "30439": "AB891X",
+        "30441": "AB891X",
+        "30442": "AB891X",
+        "30445": "AB891X",
+        "30446": "AB891X",
+        "30447": "AB891X",
+        "30448": "AB891X",
+        "30449": "AB891X",
+        "30450": "AB891X",
+        "30451": "AB891X",
+        "30452": "AB891X",
+        "30453": "AB891X",
+        "30454": "AB891X",
+        "30455": "AB891X",
+        "30456": "AB891X",
+        "30457": "AB891X",
+        "30458": "AB891X",
+        "30459": "AB891X",
+        "30460": "AB891X",
+        "30461": "AB891X",
+        "30464": "AB891X",
+        "30467": "AB891X",
+        "30470": "AB891X",
+        "30471": "AB891X",
+        "30473": "AB891X",
+        "30474": "AB891X",
+        "30475": "AB891X",
+        "30477": "AB891X",
+        "30499": "AB891X",
+        "30501": "AB889X",
+        "30502": "AB889X",
+        "30503": "AB889X",
+        "30504": "AB889X",
+        "30506": "AB889X",
+        "30507": "AB889X",
+        "30510": "AB889X",
+        "30511": "AB889X",
+        "30512": "AB889X",
+        "30513": "AB889X",
+        "30514": "AB889X",
+        "30515": "AB889X",
+        "30516": "AB895X",
+        "30517": "AB889X",
+        "30518": "AB889X",
+        "30519": "AB889X",
+        "30520": "AB895X",
+        "30521": "AB895X",
+        "30522": "AB889X",
+        "30523": "AB889X",
+        "30525": "AB889X",
+        "30527": "AB889X",
+        "30528": "AB889X",
+        "30529": "AB889X",
+        "30530": "AB889X",
+        "30531": "AB889X",
+        "30533": "AB889X",
+        "30534": "AB889X",
+        "30535": "AB889X",
+        "30536": "AB889X",
+        "30537": "AB889X",
+        "30538": "AB895X",
+        "30539": "AB889X",
+        "30540": "AB889X",
+        "30541": "AB889X",
+        "30542": "AB889X",
+        "30543": "AB889X",
+        "30544": "AB889X",
+        "30545": "AB889X",
+        "30546": "AB889X",
+        "30547": "AB889X",
+        "30548": "AB889X",
+        "30549": "AB889X",
+        "30552": "AB889X",
+        "30553": "AB895X",
+        "30554": "AB889X",
+        "30555": "AB888X",
+        "30557": "AB895X",
+        "30558": "AB889X",
+        "30559": "AB889X",
+        "30560": "AB889X",
+        "30562": "AB889X",
+        "30563": "AB889X",
+        "30564": "AB889X",
+        "30565": "AB889X",
+        "30566": "AB889X",
+        "30567": "AB889X",
+        "30568": "AB889X",
+        "30571": "AB889X",
+        "30572": "AB889X",
+        "30573": "AB889X",
+        "30575": "AB889X",
+        "30576": "AB889X",
+        "30577": "AB895X",
+        "30580": "AB889X",
+        "30581": "AB889X",
+        "30582": "AB889X",
+        "30596": "AB889X",
+        "30597": "AB889X",
+        "30598": "AB895X",
+        "30599": "AB889X",
+        "30601": "AB889X",
+        "30602": "AB889X",
+        "30603": "AB889X",
+        "30604": "AB889X",
+        "30605": "AB889X",
+        "30606": "AB889X",
+        "30607": "AB889X",
+        "30608": "AB889X",
+        "30609": "AB889X",
+        "30612": "AB889X",
+        "30619": "AB889X",
+        "30620": "AB889X",
+        "30621": "AB889X",
+        "30622": "AB889X",
+        "30623": "AB889X",
+        "30624": "AB895X",
+        "30625": "AB889X",
+        "30627": "AB895X",
+        "30628": "AB895X",
+        "30629": "AB895X",
+        "30630": "AB889X",
+        "30631": "AB889X",
+        "30633": "AB895X",
+        "30634": "AB895X",
+        "30635": "AB895X",
+        "30638": "AB889X",
+        "30639": "AB895X",
+        "30641": "AB889X",
+        "30642": "AB889X",
+        "30643": "AB895X",
+        "30645": "AB889X",
+        "30646": "AB895X",
+        "30647": "AB895X",
+        "30648": "AB889X",
+        "30650": "AB889X",
+        "30655": "AB889X",
+        "30656": "AB889X",
+        "30660": "AB895X",
+        "30662": "AB895X",
+        "30663": "AB889X",
+        "30664": "AB889X",
+        "30665": "AB889X",
+        "30666": "AB889X",
+        "30667": "AB889X",
+        "30668": "AB895X",
+        "30669": "AB889X",
+        "30671": "AB889X",
+        "30673": "AB895X",
+        "30677": "AB889X",
+        "30678": "AB889X",
+        "30680": "AB889X",
+        "30683": "AB889X",
+        "30701": "AB889X",
+        "30703": "AB889X",
+        "30705": "AB888X",
+        "30707": "AB888X",
+        "30708": "AB888X",
+        "30710": "AB888X",
+        "30711": "AB888X",
+        "30719": "AB888X",
+        "30720": "AB888X",
+        "30721": "AB888X",
+        "30722": "AB888X",
+        "30724": "AB888X",
+        "30725": "AB888X",
+        "30726": "AB888X",
+        "30728": "AB888X",
+        "30730": "AB888X",
+        "30731": "AB888X",
+        "30732": "AB889X",
+        "30733": "AB889X",
+        "30734": "AB889X",
+        "30735": "AB888X",
+        "30736": "AB888X",
+        "30738": "AB888X",
+        "30739": "AB888X",
+        "30740": "AB888X",
+        "30741": "AB888X",
+        "30742": "AB888X",
+        "30746": "AB889X",
+        "30747": "AB888X",
+        "30750": "AB888X",
+        "30751": "AB888X",
+        "30752": "AB888X",
+        "30753": "AB888X",
+        "30755": "AB888X",
+        "30756": "AB888X",
+        "30757": "AB888X",
+        "30802": "AB891X",
+        "30803": "AB891X",
+        "30805": "AB891X",
+        "30806": "AB891X",
+        "30807": "AB891X",
+        "30808": "AB891X",
+        "30809": "AB891X",
+        "30810": "AB891X",
+        "30811": "AB891X",
+        "30812": "AB891X",
+        "30813": "AB891X",
+        "30814": "AB891X",
+        "30815": "AB891X",
+        "30816": "AB891X",
+        "30817": "AB891X",
+        "30818": "AB891X",
+        "30819": "AB891X",
+        "30820": "AB891X",
+        "30821": "AB891X",
+        "30822": "AB891X",
+        "30823": "AB891X",
+        "30824": "AB891X",
+        "30828": "AB891X",
+        "30830": "AB891X",
+        "30833": "AB891X",
+        "30901": "AB891X",
+        "30903": "AB891X",
+        "30904": "AB891X",
+        "30905": "AB891X",
+        "30906": "AB891X",
+        "30907": "AB891X",
+        "30909": "AB891X",
+        "30911": "AB891X",
+        "30912": "AB891X",
+        "30913": "AB891X",
+        "30914": "AB891X",
+        "30916": "AB891X",
+        "30917": "AB891X",
+        "30919": "AB891X",
+        "30999": "AB891X",
+        "31001": "AB891X",
+        "31002": "AB891X",
+        "31003": "AB891X",
+        "31004": "AB891X",
+        "31005": "AB891X",
+        "31006": "AB890X",
+        "31007": "AB891X",
+        "31008": "AB891X",
+        "31009": "AB891X",
+        "31010": "AB891X",
+        "31011": "AB891X",
+        "31012": "AB891X",
+        "31013": "AB891X",
+        "31014": "AB891X",
+        "31015": "AB891X",
+        "31016": "AB891X",
+        "31017": "AB891X",
+        "31018": "AB891X",
+        "31019": "AB891X",
+        "31020": "AB891X",
+        "31021": "AB891X",
+        "31022": "AB891X",
+        "31023": "AB891X",
+        "31024": "AB889X",
+        "31025": "AB891X",
+        "31026": "AB889X",
+        "31027": "AB891X",
+        "31028": "AB891X",
+        "31029": "AB891X",
+        "31030": "AB891X",
+        "31031": "AB891X",
+        "31032": "AB891X",
+        "31033": "AB891X",
+        "31034": "AB891X",
+        "31035": "AB891X",
+        "31036": "AB891X",
+        "31037": "AB891X",
+        "31038": "AB891X",
+        "31039": "AB891X",
+        "31040": "AB891X",
+        "31041": "AB891X",
+        "31042": "AB891X",
+        "31044": "AB891X",
+        "31045": "AB891X",
+        "31046": "AB891X",
+        "31047": "AB891X",
+        "31049": "AB891X",
+        "31050": "AB891X",
+        "31051": "AB891X",
+        "31052": "AB891X",
+        "31054": "AB891X",
+        "31055": "AB891X",
+        "31057": "AB891X",
+        "31058": "AB890X",
+        "31059": "AB891X",
+        "31060": "AB891X",
+        "31061": "AB891X",
+        "31062": "AB891X",
+        "31063": "AB891X",
+        "31064": "AB891X",
+        "31065": "AB891X",
+        "31066": "AB891X",
+        "31067": "AB891X",
+        "31068": "AB891X",
+        "31069": "AB891X",
+        "31070": "AB891X",
+        "31071": "AB891X",
+        "31072": "AB891X",
+        "31075": "AB891X",
+        "31076": "AB891X",
+        "31077": "AB891X",
+        "31078": "AB891X",
+        "31079": "AB891X",
+        "31081": "AB891X",
+        "31082": "AB891X",
+        "31083": "AB891X",
+        "31084": "AB891X",
+        "31085": "AB889X",
+        "31086": "AB891X",
+        "31087": "AB891X",
+        "31088": "AB891X",
+        "31089": "AB891X",
+        "31090": "AB891X",
+        "31091": "AB891X",
+        "31092": "AB891X",
+        "31093": "AB891X",
+        "31094": "AB891X",
+        "31095": "AB891X",
+        "31096": "AB891X",
+        "31097": "AB889X",
+        "31098": "AB891X",
+        "31099": "AB891X",
+        "31106": "AB889X",
+        "31107": "AB889X",
+        "31119": "AB889X",
+        "31120": "AB889X",
+        "31126": "AB889X",
+        "31131": "AB889X",
+        "31136": "AB889X",
+        "31139": "AB889X",
+        "31141": "AB889X",
+        "31145": "AB889X",
+        "31146": "AB889X",
+        "31150": "AB889X",
+        "31156": "AB889X",
+        "31191": "AB889X",
+        "31192": "AB889X",
+        "31193": "AB889X",
+        "31195": "AB889X",
+        "31196": "AB889X",
+        "31197": "AB889X",
+        "31198": "AB889X",
+        "31199": "AB889X",
+        "31201": "AB891X",
+        "31202": "AB891X",
+        "31203": "AB891X",
+        "31204": "AB891X",
+        "31205": "AB891X",
+        "31206": "AB891X",
+        "31207": "AB891X",
+        "31208": "AB891X",
+        "31209": "AB891X",
+        "31210": "AB891X",
+        "31211": "AB891X",
+        "31212": "AB891X",
+        "31213": "AB891X",
+        "31216": "AB891X",
+        "31217": "AB891X",
+        "31220": "AB891X",
+        "31221": "AB891X",
+        "31255": "AB900X",
+        "31294": "AB891X",
+        "31295": "AB891X",
+        "31296": "AB891X",
+        "31297": "AB891X",
+        "31301": "AB891X",
+        "31302": "AB891X",
+        "31303": "AB891X",
+        "31304": "AB888X",
+        "31305": "AB888X",
+        "31307": "AB891X",
+        "31308": "AB891X",
+        "31309": "AB891X",
+        "31310": "AB891X",
+        "31312": "AB891X",
+        "31313": "AB891X",
+        "31314": "AB891X",
+        "31315": "AB891X",
+        "31316": "AB891X",
+        "31318": "AB891X",
+        "31319": "AB888X",
+        "31320": "AB891X",
+        "31321": "AB891X",
+        "31322": "AB891X",
+        "31323": "AB891X",
+        "31324": "AB891X",
+        "31326": "AB891X",
+        "31327": "AB888X",
+        "31328": "AB891X",
+        "31329": "AB891X",
+        "31331": "AB888X",
+        "31333": "AB891X",
+        "31401": "AB891X",
+        "31402": "AB891X",
+        "31403": "AB891X",
+        "31404": "AB891X",
+        "31405": "AB891X",
+        "31406": "AB891X",
+        "31407": "AB891X",
+        "31408": "AB891X",
+        "31409": "AB891X",
+        "31410": "AB891X",
+        "31411": "AB891X",
+        "31412": "AB891X",
+        "31414": "AB891X",
+        "31415": "AB891X",
+        "31416": "AB891X",
+        "31418": "AB891X",
+        "31419": "AB891X",
+        "31420": "AB891X",
+        "31421": "AB891X",
+        "31501": "AB888X",
+        "31502": "AB888X",
+        "31503": "AB888X",
+        "31510": "AB891X",
+        "31512": "AB891X",
+        "31513": "AB891X",
+        "31515": "AB891X",
+        "31516": "AB888X",
+        "31518": "AB888X",
+        "31519": "AB891X",
+        "31520": "AB888X",
+        "31521": "AB888X",
+        "31522": "AB888X",
+        "31523": "AB888X",
+        "31524": "AB888X",
+        "31525": "AB888X",
+        "31527": "AB888X",
+        "31532": "AB891X",
+        "31533": "AB891X",
+        "31534": "AB891X",
+        "31535": "AB891X",
+        "31537": "AB888X",
+        "31539": "AB891X",
+        "31542": "AB891X",
+        "31543": "AB888X",
+        "31544": "AB891X",
+        "31545": "AB891X",
+        "31546": "AB891X",
+        "31547": "AB888X",
+        "31548": "AB888X",
+        "31549": "AB891X",
+        "31550": "AB888X",
+        "31551": "AB888X",
+        "31552": "AB888X",
+        "31553": "AB888X",
+        "31554": "AB891X",
+        "31555": "AB891X",
+        "31556": "AB888X",
+        "31557": "AB891X",
+        "31558": "AB888X",
+        "31560": "AB891X",
+        "31561": "AB888X",
+        "31562": "AB888X",
+        "31563": "AB891X",
+        "31564": "AB888X",
+        "31565": "AB888X",
+        "31566": "AB888X",
+        "31567": "AB891X",
+        "31568": "AB888X",
+        "31569": "AB888X",
+        "31598": "AB891X",
+        "31599": "AB891X",
+        "31601": "AB891X",
+        "31602": "AB891X",
+        "31603": "AB891X",
+        "31604": "AB891X",
+        "31605": "AB891X",
+        "31606": "AB891X",
+        "31620": "AB891X",
+        "31622": "AB891X",
+        "31623": "AB891X",
+        "31624": "AB891X",
+        "31625": "AB891X",
+        "31626": "AB891X",
+        "31627": "AB891X",
+        "31629": "AB891X",
+        "31630": "AB891X",
+        "31631": "AB891X",
+        "31632": "AB891X",
+        "31634": "AB891X",
+        "31635": "AB891X",
+        "31636": "AB891X",
+        "31637": "AB891X",
+        "31638": "AB891X",
+        "31639": "AB891X",
+        "31641": "AB891X",
+        "31642": "AB891X",
+        "31643": "AB891X",
+        "31645": "AB891X",
+        "31647": "AB891X",
+        "31648": "AB891X",
+        "31649": "AB891X",
+        "31650": "AB891X",
+        "31698": "AB891X",
+        "31699": "AB891X",
+        "31701": "AB891X",
+        "31702": "AB891X",
+        "31703": "AB891X",
+        "31704": "AB891X",
+        "31705": "AB891X",
+        "31706": "AB891X",
+        "31707": "AB891X",
+        "31708": "AB891X",
+        "31709": "AB891X",
+        "31710": "AB891X",
+        "31711": "AB891X",
+        "31712": "AB891X",
+        "31714": "AB891X",
+        "31716": "AB891X",
+        "31719": "AB891X",
+        "31720": "AB891X",
+        "31721": "AB891X",
+        "31722": "AB891X",
+        "31723": "AB890X",
+        "31727": "AB891X",
+        "31730": "AB891X",
+        "31733": "AB891X",
+        "31735": "AB891X",
+        "31738": "AB891X",
+        "31739": "AB891X",
+        "31743": "AB891X",
+        "31744": "AB891X",
+        "31747": "AB891X",
+        "31749": "AB891X",
+        "31750": "AB891X",
+        "31753": "AB891X",
+        "31756": "AB891X",
+        "31757": "AB891X",
+        "31758": "AB891X",
+        "31760": "AB891X",
+        "31763": "AB891X",
+        "31764": "AB891X",
+        "31765": "AB891X",
+        "31768": "AB891X",
+        "31769": "AB891X",
+        "31771": "AB891X",
+        "31772": "AB891X",
+        "31773": "AB891X",
+        "31774": "AB891X",
+        "31775": "AB891X",
+        "31776": "AB891X",
+        "31778": "AB891X",
+        "31779": "AB891X",
+        "31780": "AB891X",
+        "31781": "AB891X",
+        "31782": "AB891X",
+        "31783": "AB891X",
+        "31784": "AB891X",
+        "31787": "AB891X",
+        "31788": "AB891X",
+        "31789": "AB891X",
+        "31790": "AB891X",
+        "31791": "AB891X",
+        "31792": "AB891X",
+        "31793": "AB891X",
+        "31794": "AB891X",
+        "31795": "AB891X",
+        "31796": "AB891X",
+        "31798": "AB891X",
+        "31799": "AB891X",
+        "31801": "AB890X",
+        "31803": "AB890X",
+        "31804": "AB890X",
+        "31805": "AB890X",
+        "31806": "AB891X",
+        "31807": "AB890X",
+        "31808": "AB890X",
+        "31810": "AB890X",
+        "31811": "AB890X",
+        "31812": "AB890X",
+        "31814": "AB890X",
+        "31815": "AB890X",
+        "31816": "AB890X",
+        "31820": "AB890X",
+        "31821": "AB890X",
+        "31822": "AB889X",
+        "31823": "AB890X",
+        "31824": "AB890X",
+        "31825": "AB890X",
+        "31826": "AB890X",
+        "31827": "AB890X",
+        "31829": "AB890X",
+        "31830": "AB890X",
+        "31831": "AB890X",
+        "31832": "AB890X",
+        "31833": "AB889X",
+        "31836": "AB890X",
+        "31901": "AB890X",
+        "31902": "AB890X",
+        "31903": "AB890X",
+        "31904": "AB890X",
+        "31905": "AB890X",
+        "31906": "AB890X",
+        "31907": "AB890X",
+        "31908": "AB890X",
+        "31909": "AB890X",
+        "31914": "AB890X",
+        "31917": "AB890X",
+        "31993": "AB890X",
+        "31995": "AB890X",
+        "31997": "AB890X",
+        "31998": "AB890X",
+        "31999": "AB890X",
+        "32003": "AB888X",
+        "32004": "AB888X",
+        "32006": "AB888X",
+        "32007": "AB888X",
+        "32008": "AB888X",
+        "32009": "AB888X",
+        "32011": "AB888X",
+        "32013": "AB888X",
+        "32024": "AB888X",
+        "32025": "AB888X",
+        "32026": "AB888X",
+        "32030": "AB888X",
+        "32033": "AB888X",
+        "32034": "AB888X",
+        "32035": "AB888X",
+        "32038": "AB888X",
+        "32040": "AB888X",
+        "32041": "AB888X",
+        "32042": "AB888X",
+        "32043": "AB888X",
+        "32044": "AB888X",
+        "32046": "AB888X",
+        "32050": "AB888X",
+        "32052": "AB888X",
+        "32053": "AB888X",
+        "32054": "AB888X",
+        "32055": "AB888X",
+        "32056": "AB888X",
+        "32058": "AB888X",
+        "32059": "AB891X",
+        "32060": "AB888X",
+        "32061": "AB888X",
+        "32062": "AB888X",
+        "32063": "AB888X",
+        "32064": "AB888X",
+        "32065": "AB888X",
+        "32066": "AB888X",
+        "32067": "AB888X",
+        "32068": "AB888X",
+        "32071": "AB888X",
+        "32072": "AB888X",
+        "32073": "AB888X",
+        "32079": "AB888X",
+        "32080": "AB888X",
+        "32081": "AB888X",
+        "32082": "AB888X",
+        "32083": "AB888X",
+        "32084": "AB888X",
+        "32085": "AB888X",
+        "32086": "AB888X",
+        "32087": "AB888X",
+        "32091": "AB888X",
+        "32092": "AB888X",
+        "32094": "AB888X",
+        "32095": "AB888X",
+        "32096": "AB888X",
+        "32097": "AB888X",
+        "32099": "AB888X",
+        "32102": "AB890X",
+        "32105": "AB890X",
+        "32110": "AB890X",
+        "32111": "AB890X",
+        "32112": "AB888X",
+        "32113": "AB890X",
+        "32114": "AB890X",
+        "32115": "AB890X",
+        "32116": "AB890X",
+        "32117": "AB890X",
+        "32118": "AB890X",
+        "32119": "AB890X",
+        "32120": "AB890X",
+        "32121": "AB890X",
+        "32122": "AB890X",
+        "32123": "AB890X",
+        "32124": "AB890X",
+        "32125": "AB890X",
+        "32126": "AB890X",
+        "32127": "AB890X",
+        "32128": "AB890X",
+        "32129": "AB890X",
+        "32130": "AB890X",
+        "32131": "AB888X",
+        "32132": "AB890X",
+        "32133": "AB890X",
+        "32134": "AB890X",
+        "32135": "AB890X",
+        "32136": "AB890X",
+        "32137": "AB890X",
+        "32138": "AB888X",
+        "32139": "AB888X",
+        "32140": "AB888X",
+        "32141": "AB890X",
+        "32142": "AB890X",
+        "32145": "AB888X",
+        "32147": "AB888X",
+        "32148": "AB888X",
+        "32149": "AB888X",
+        "32157": "AB888X",
+        "32158": "AB890X",
+        "32159": "AB890X",
+        "32160": "AB888X",
+        "32162": "AB890X",
+        "32163": "AB890X",
+        "32164": "AB890X",
+        "32168": "AB890X",
+        "32169": "AB890X",
+        "32170": "AB890X",
+        "32173": "AB890X",
+        "32174": "AB890X",
+        "32175": "AB890X",
+        "32176": "AB890X",
+        "32177": "AB888X",
+        "32178": "AB888X",
+        "32179": "AB890X",
+        "32180": "AB890X",
+        "32181": "AB888X",
+        "32182": "AB890X",
+        "32183": "AB890X",
+        "32185": "AB888X",
+        "32187": "AB888X",
+        "32189": "AB888X",
+        "32190": "AB890X",
+        "32192": "AB890X",
+        "32193": "AB888X",
+        "32195": "AB890X",
+        "32198": "AB890X",
+        "32201": "AB888X",
+        "32202": "AB888X",
+        "32203": "AB888X",
+        "32204": "AB888X",
+        "32205": "AB888X",
+        "32206": "AB888X",
+        "32207": "AB888X",
+        "32208": "AB888X",
+        "32209": "AB888X",
+        "32210": "AB888X",
+        "32211": "AB888X",
+        "32212": "AB888X",
+        "32214": "AB888X",
+        "32215": "AB888X",
+        "32216": "AB888X",
+        "32217": "AB888X",
+        "32218": "AB888X",
+        "32219": "AB888X",
+        "32220": "AB888X",
+        "32221": "AB888X",
+        "32222": "AB888X",
+        "32223": "AB888X",
+        "32224": "AB888X",
+        "32225": "AB888X",
+        "32226": "AB888X",
+        "32227": "AB888X",
+        "32228": "AB888X",
+        "32229": "AB888X",
+        "32230": "AB888X",
+        "32231": "AB888X",
+        "32232": "AB888X",
+        "32233": "AB888X",
+        "32234": "AB888X",
+        "32235": "AB888X",
+        "32236": "AB888X",
+        "32237": "AB888X",
+        "32238": "AB888X",
+        "32239": "AB888X",
+        "32240": "AB888X",
+        "32241": "AB888X",
+        "32244": "AB888X",
+        "32245": "AB888X",
+        "32246": "AB888X",
+        "32247": "AB888X",
+        "32250": "AB888X",
+        "32254": "AB888X",
+        "32255": "AB888X",
+        "32256": "AB888X",
+        "32257": "AB888X",
+        "32258": "AB888X",
+        "32259": "AB888X",
+        "32260": "AB888X",
+        "32266": "AB888X",
+        "32267": "AB888X",
+        "32277": "AB888X",
+        "32290": "AB888X",
+        "32301": "AB891X",
+        "32302": "AB891X",
+        "32303": "AB891X",
+        "32304": "AB891X",
+        "32305": "AB891X",
+        "32306": "AB891X",
+        "32307": "AB891X",
+        "32308": "AB891X",
+        "32309": "AB891X",
+        "32310": "AB891X",
+        "32311": "AB891X",
+        "32312": "AB891X",
+        "32313": "AB891X",
+        "32314": "AB891X",
+        "32315": "AB891X",
+        "32316": "AB891X",
+        "32317": "AB891X",
+        "32318": "AB891X",
+        "32320": "AB890X",
+        "32321": "AB891X",
+        "32322": "AB891X",
+        "32323": "AB891X",
+        "32324": "AB891X",
+        "32326": "AB891X",
+        "32327": "AB891X",
+        "32328": "AB891X",
+        "32329": "AB891X",
+        "32330": "AB891X",
+        "32331": "AB891X",
+        "32332": "AB891X",
+        "32333": "AB891X",
+        "32334": "AB891X",
+        "32335": "AB891X",
+        "32336": "AB891X",
+        "32337": "AB891X",
+        "32340": "AB891X",
+        "32341": "AB891X",
+        "32343": "AB891X",
+        "32344": "AB891X",
+        "32345": "AB891X",
+        "32346": "AB891X",
+        "32347": "AB891X",
+        "32348": "AB891X",
+        "32350": "AB891X",
+        "32351": "AB891X",
+        "32352": "AB891X",
+        "32353": "AB891X",
+        "32355": "AB891X",
+        "32356": "AB891X",
+        "32357": "AB891X",
+        "32358": "AB891X",
+        "32359": "AB891X",
+        "32360": "AB891X",
+        "32361": "AB891X",
+        "32362": "AB891X",
+        "32395": "AB891X",
+        "32399": "AB891X",
+        "32401": "AB890X",
+        "32402": "AB890X",
+        "32403": "AB890X",
+        "32404": "AB890X",
+        "32405": "AB890X",
+        "32406": "AB890X",
+        "32407": "AB890X",
+        "32408": "AB890X",
+        "32409": "AB890X",
+        "32410": "AB890X",
+        "32411": "AB890X",
+        "32412": "AB890X",
+        "32413": "AB890X",
+        "32417": "AB890X",
+        "32420": "AB890X",
+        "32421": "AB890X",
+        "32422": "AB890X",
+        "32423": "AB890X",
+        "32424": "AB890X",
+        "32425": "AB890X",
+        "32426": "AB890X",
+        "32427": "AB890X",
+        "32428": "AB890X",
+        "32430": "AB890X",
+        "32431": "AB890X",
+        "32432": "AB890X",
+        "32433": "AB890X",
+        "32434": "AB889X",
+        "32435": "AB890X",
+        "32437": "AB890X",
+        "32438": "AB890X",
+        "32439": "AB889X",
+        "32440": "AB890X",
+        "32442": "AB890X",
+        "32443": "AB890X",
+        "32444": "AB890X",
+        "32445": "AB890X",
+        "32446": "AB890X",
+        "32447": "AB890X",
+        "32448": "AB890X",
+        "32449": "AB890X",
+        "32452": "AB890X",
+        "32454": "AB890X",
+        "32455": "AB890X",
+        "32456": "AB890X",
+        "32457": "AB890X",
+        "32459": "AB889X",
+        "32460": "AB890X",
+        "32461": "AB890X",
+        "32462": "AB890X",
+        "32463": "AB890X",
+        "32464": "AB890X",
+        "32465": "AB890X",
+        "32466": "AB890X",
+        "32501": "AB889X",
+        "32502": "AB889X",
+        "32503": "AB889X",
+        "32504": "AB889X",
+        "32505": "AB889X",
+        "32506": "AB889X",
+        "32507": "AB889X",
+        "32508": "AB889X",
+        "32509": "AB889X",
+        "32511": "AB889X",
+        "32512": "AB889X",
+        "32513": "AB889X",
+        "32514": "AB889X",
+        "32516": "AB889X",
+        "32520": "AB889X",
+        "32521": "AB889X",
+        "32522": "AB889X",
+        "32523": "AB889X",
+        "32524": "AB889X",
+        "32526": "AB889X",
+        "32530": "AB889X",
+        "32531": "AB889X",
+        "32533": "AB889X",
+        "32534": "AB889X",
+        "32535": "AB889X",
+        "32536": "AB889X",
+        "32537": "AB889X",
+        "32538": "AB890X",
+        "32539": "AB889X",
+        "32540": "AB889X",
+        "32541": "AB889X",
+        "32542": "AB889X",
+        "32544": "AB889X",
+        "32547": "AB889X",
+        "32548": "AB889X",
+        "32549": "AB889X",
+        "32550": "AB889X",
+        "32559": "AB889X",
+        "32560": "AB889X",
+        "32561": "AB889X",
+        "32562": "AB889X",
+        "32563": "AB889X",
+        "32564": "AB889X",
+        "32565": "AB889X",
+        "32566": "AB889X",
+        "32567": "AB889X",
+        "32568": "AB889X",
+        "32569": "AB889X",
+        "32570": "AB889X",
+        "32571": "AB889X",
+        "32572": "AB889X",
+        "32574": "AB889X",
+        "32577": "AB889X",
+        "32578": "AB889X",
+        "32579": "AB889X",
+        "32580": "AB889X",
+        "32583": "AB889X",
+        "32588": "AB889X",
+        "32590": "AB889X",
+        "32591": "AB889X",
+        "32592": "AB889X",
+        "32601": "AB888X",
+        "32602": "AB888X",
+        "32603": "AB888X",
+        "32604": "AB888X",
+        "32605": "AB888X",
+        "32606": "AB888X",
+        "32607": "AB888X",
+        "32608": "AB888X",
+        "32609": "AB888X",
+        "32610": "AB888X",
+        "32611": "AB888X",
+        "32612": "AB888X",
+        "32613": "AB888X",
+        "32614": "AB888X",
+        "32615": "AB888X",
+        "32616": "AB888X",
+        "32617": "AB890X",
+        "32618": "AB888X",
+        "32619": "AB888X",
+        "32621": "AB888X",
+        "32622": "AB888X",
+        "32625": "AB888X",
+        "32626": "AB888X",
+        "32627": "AB888X",
+        "32628": "AB888X",
+        "32631": "AB888X",
+        "32633": "AB888X",
+        "32634": "AB890X",
+        "32635": "AB888X",
+        "32639": "AB888X",
+        "32640": "AB888X",
+        "32641": "AB888X",
+        "32643": "AB888X",
+        "32644": "AB888X",
+        "32648": "AB888X",
+        "32653": "AB888X",
+        "32654": "AB888X",
+        "32655": "AB888X",
+        "32656": "AB888X",
+        "32658": "AB888X",
+        "32662": "AB888X",
+        "32663": "AB890X",
+        "32664": "AB888X",
+        "32666": "AB888X",
+        "32667": "AB888X",
+        "32668": "AB888X",
+        "32669": "AB888X",
+        "32680": "AB888X",
+        "32681": "AB890X",
+        "32683": "AB888X",
+        "32686": "AB890X",
+        "32692": "AB888X",
+        "32693": "AB888X",
+        "32694": "AB888X",
+        "32696": "AB888X",
+        "32697": "AB888X",
+        "32701": "AB890X",
+        "32702": "AB890X",
+        "32703": "AB890X",
+        "32704": "AB890X",
+        "32706": "AB890X",
+        "32707": "AB890X",
+        "32708": "AB890X",
+        "32709": "AB890X",
+        "32710": "AB890X",
+        "32712": "AB890X",
+        "32713": "AB890X",
+        "32714": "AB890X",
+        "32715": "AB890X",
+        "32716": "AB890X",
+        "32718": "AB890X",
+        "32719": "AB890X",
+        "32720": "AB890X",
+        "32721": "AB890X",
+        "32722": "AB890X",
+        "32723": "AB890X",
+        "32724": "AB890X",
+        "32725": "AB890X",
+        "32726": "AB890X",
+        "32727": "AB890X",
+        "32728": "AB890X",
+        "32730": "AB890X",
+        "32732": "AB890X",
+        "32733": "AB890X",
+        "32735": "AB890X",
+        "32736": "AB890X",
+        "32738": "AB890X",
+        "32739": "AB890X",
+        "32744": "AB890X",
+        "32745": "AB890X",
+        "32746": "AB890X",
+        "32747": "AB890X",
+        "32750": "AB890X",
+        "32751": "AB890X",
+        "32752": "AB890X",
+        "32753": "AB890X",
+        "32754": "AB890X",
+        "32756": "AB890X",
+        "32757": "AB890X",
+        "32759": "AB890X",
+        "32762": "AB890X",
+        "32763": "AB890X",
+        "32764": "AB890X",
+        "32765": "AB890X",
+        "32766": "AB890X",
+        "32767": "AB890X",
+        "32768": "AB890X",
+        "32771": "AB890X",
+        "32772": "AB890X",
+        "32773": "AB890X",
+        "32774": "AB890X",
+        "32775": "AB890X",
+        "32776": "AB890X",
+        "32777": "AB890X",
+        "32778": "AB890X",
+        "32779": "AB890X",
+        "32780": "AB890X",
+        "32781": "AB890X",
+        "32782": "AB890X",
+        "32783": "AB890X",
+        "32784": "AB890X",
+        "32789": "AB890X",
+        "32790": "AB890X",
+        "32791": "AB890X",
+        "32792": "AB890X",
+        "32793": "AB890X",
+        "32794": "AB890X",
+        "32795": "AB890X",
+        "32796": "AB890X",
+        "32798": "AB890X",
+        "32799": "AB890X",
+        "32801": "AB890X",
+        "32802": "AB890X",
+        "32803": "AB890X",
+        "32804": "AB890X",
+        "32805": "AB890X",
+        "32806": "AB890X",
+        "32807": "AB890X",
+        "32808": "AB890X",
+        "32809": "AB890X",
+        "32810": "AB890X",
+        "32811": "AB890X",
+        "32812": "AB890X",
+        "32814": "AB890X",
+        "32815": "AB890X",
+        "32816": "AB890X",
+        "32817": "AB890X",
+        "32818": "AB890X",
+        "32819": "AB890X",
+        "32820": "AB890X",
+        "32821": "AB890X",
+        "32822": "AB890X",
+        "32824": "AB890X",
+        "32825": "AB890X",
+        "32826": "AB890X",
+        "32827": "AB890X",
+        "32828": "AB890X",
+        "32829": "AB890X",
+        "32830": "AB890X",
+        "32831": "AB890X",
+        "32832": "AB890X",
+        "32833": "AB890X",
+        "32834": "AB890X",
+        "32835": "AB890X",
+        "32836": "AB890X",
+        "32837": "AB890X",
+        "32839": "AB890X",
+        "32853": "AB890X",
+        "32854": "AB890X",
+        "32855": "AB890X",
+        "32856": "AB890X",
+        "32857": "AB890X",
+        "32858": "AB890X",
+        "32859": "AB890X",
+        "32860": "AB890X",
+        "32861": "AB890X",
+        "32862": "AB890X",
+        "32867": "AB890X",
+        "32868": "AB890X",
+        "32869": "AB890X",
+        "32872": "AB890X",
+        "32877": "AB890X",
+        "32878": "AB890X",
+        "32885": "AB890X",
+        "32886": "AB890X",
+        "32887": "AB890X",
+        "32890": "AB890X",
+        "32891": "AB890X",
+        "32893": "AB890X",
+        "32896": "AB890X",
+        "32897": "AB890X",
+        "32898": "AB890X",
+        "32899": "AB890X",
+        "32901": "AB890X",
+        "32902": "AB890X",
+        "32903": "AB890X",
+        "32904": "AB890X",
+        "32905": "AB890X",
+        "32906": "AB890X",
+        "32907": "AB890X",
+        "32908": "AB890X",
+        "32909": "AB890X",
+        "32910": "AB890X",
+        "32911": "AB890X",
+        "32912": "AB890X",
+        "32919": "AB890X",
+        "32920": "AB890X",
+        "32922": "AB890X",
+        "32923": "AB890X",
+        "32924": "AB890X",
+        "32925": "AB890X",
+        "32926": "AB890X",
+        "32927": "AB890X",
+        "32931": "AB890X",
+        "32932": "AB890X",
+        "32934": "AB890X",
+        "32935": "AB890X",
+        "32936": "AB890X",
+        "32937": "AB890X",
+        "32940": "AB890X",
+        "32941": "AB890X",
+        "32948": "AB892X",
+        "32949": "AB890X",
+        "32950": "AB890X",
+        "32951": "AB890X",
+        "32952": "AB890X",
+        "32953": "AB890X",
+        "32954": "AB890X",
+        "32955": "AB890X",
+        "32956": "AB890X",
+        "32957": "AB892X",
+        "32958": "AB892X",
+        "32959": "AB890X",
+        "32960": "AB892X",
+        "32961": "AB892X",
+        "32962": "AB892X",
+        "32963": "AB892X",
+        "32964": "AB892X",
+        "32965": "AB892X",
+        "32966": "AB892X",
+        "32967": "AB892X",
+        "32968": "AB892X",
+        "32969": "AB892X",
+        "32970": "AB892X",
+        "32971": "AB892X",
+        "32976": "AB892X",
+        "32978": "AB892X",
+        "33001": "AB889X",
+        "33002": "AB889X",
+        "33004": "AB889X",
+        "33008": "AB889X",
+        "33009": "AB889X",
+        "33010": "AB889X",
+        "33011": "AB889X",
+        "33012": "AB889X",
+        "33013": "AB889X",
+        "33014": "AB889X",
+        "33015": "AB889X",
+        "33016": "AB889X",
+        "33017": "AB889X",
+        "33018": "AB889X",
+        "33019": "AB889X",
+        "33020": "AB889X",
+        "33021": "AB889X",
+        "33022": "AB889X",
+        "33023": "AB889X",
+        "33024": "AB889X",
+        "33025": "AB889X",
+        "33026": "AB889X",
+        "33027": "AB889X",
+        "33028": "AB889X",
+        "33029": "AB889X",
+        "33030": "AB889X",
+        "33031": "AB889X",
+        "33032": "AB889X",
+        "33033": "AB889X",
+        "33034": "AB889X",
+        "33035": "AB889X",
+        "33036": "AB889X",
+        "33037": "AB889X",
+        "33039": "AB889X",
+        "33040": "AB889X",
+        "33041": "AB889X",
+        "33042": "AB889X",
+        "33043": "AB889X",
+        "33045": "AB889X",
+        "33050": "AB889X",
+        "33051": "AB889X",
+        "33052": "AB889X",
+        "33054": "AB889X",
+        "33055": "AB889X",
+        "33056": "AB889X",
+        "33060": "AB889X",
+        "33061": "AB889X",
+        "33062": "AB889X",
+        "33063": "AB889X",
+        "33064": "AB889X",
+        "33065": "AB889X",
+        "33066": "AB889X",
+        "33067": "AB889X",
+        "33068": "AB889X",
+        "33069": "AB889X",
+        "33070": "AB889X",
+        "33071": "AB889X",
+        "33072": "AB889X",
+        "33073": "AB889X",
+        "33074": "AB889X",
+        "33075": "AB889X",
+        "33076": "AB889X",
+        "33077": "AB889X",
+        "33081": "AB889X",
+        "33082": "AB889X",
+        "33083": "AB889X",
+        "33084": "AB889X",
+        "33090": "AB889X",
+        "33092": "AB889X",
+        "33093": "AB889X",
+        "33097": "AB889X",
+        "33101": "AB889X",
+        "33102": "AB889X",
+        "33107": "AB889X",
+        "33109": "AB889X",
+        "33110": "AB889X",
+        "33111": "AB889X",
+        "33112": "AB889X",
+        "33114": "AB889X",
+        "33116": "AB889X",
+        "33119": "AB889X",
+        "33121": "AB889X",
+        "33122": "AB889X",
+        "33124": "AB889X",
+        "33125": "AB889X",
+        "33126": "AB889X",
+        "33127": "AB889X",
+        "33128": "AB889X",
+        "33129": "AB889X",
+        "33130": "AB889X",
+        "33131": "AB889X",
+        "33132": "AB889X",
+        "33133": "AB889X",
+        "33134": "AB889X",
+        "33135": "AB889X",
+        "33136": "AB889X",
+        "33137": "AB889X",
+        "33138": "AB889X",
+        "33139": "AB889X",
+        "33140": "AB889X",
+        "33141": "AB889X",
+        "33142": "AB889X",
+        "33143": "AB889X",
+        "33144": "AB889X",
+        "33145": "AB889X",
+        "33146": "AB889X",
+        "33147": "AB889X",
+        "33148": "AB889X",
+        "33149": "AB889X",
+        "33150": "AB889X",
+        "33151": "AB889X",
+        "33152": "AB889X",
+        "33153": "AB889X",
+        "33154": "AB889X",
+        "33155": "AB889X",
+        "33156": "AB889X",
+        "33157": "AB889X",
+        "33158": "AB889X",
+        "33159": "AB889X",
+        "33160": "AB889X",
+        "33161": "AB889X",
+        "33162": "AB889X",
+        "33163": "AB889X",
+        "33164": "AB889X",
+        "33165": "AB889X",
+        "33166": "AB889X",
+        "33167": "AB889X",
+        "33168": "AB889X",
+        "33169": "AB889X",
+        "33170": "AB889X",
+        "33172": "AB889X",
+        "33173": "AB889X",
+        "33174": "AB889X",
+        "33175": "AB889X",
+        "33176": "AB889X",
+        "33177": "AB889X",
+        "33178": "AB889X",
+        "33179": "AB889X",
+        "33180": "AB889X",
+        "33181": "AB889X",
+        "33182": "AB889X",
+        "33183": "AB889X",
+        "33184": "AB889X",
+        "33185": "AB889X",
+        "33186": "AB889X",
+        "33187": "AB889X",
+        "33188": "AB889X",
+        "33189": "AB889X",
+        "33190": "AB889X",
+        "33193": "AB889X",
+        "33194": "AB889X",
+        "33195": "AB889X",
+        "33196": "AB889X",
+        "33197": "AB889X",
+        "33199": "AB889X",
+        "33231": "AB889X",
+        "33233": "AB889X",
+        "33234": "AB889X",
+        "33238": "AB889X",
+        "33239": "AB889X",
+        "33242": "AB889X",
+        "33243": "AB889X",
+        "33245": "AB889X",
+        "33247": "AB889X",
+        "33255": "AB889X",
+        "33256": "AB889X",
+        "33257": "AB889X",
+        "33261": "AB889X",
+        "33265": "AB889X",
+        "33266": "AB889X",
+        "33269": "AB889X",
+        "33280": "AB889X",
+        "33283": "AB889X",
+        "33296": "AB889X",
+        "33299": "AB889X",
+        "33301": "AB889X",
+        "33302": "AB889X",
+        "33303": "AB889X",
+        "33304": "AB889X",
+        "33305": "AB889X",
+        "33306": "AB889X",
+        "33307": "AB889X",
+        "33308": "AB889X",
+        "33309": "AB889X",
+        "33310": "AB889X",
+        "33311": "AB889X",
+        "33312": "AB889X",
+        "33313": "AB889X",
+        "33314": "AB889X",
+        "33315": "AB889X",
+        "33316": "AB889X",
+        "33317": "AB889X",
+        "33318": "AB889X",
+        "33319": "AB889X",
+        "33320": "AB889X",
+        "33321": "AB889X",
+        "33322": "AB889X",
+        "33323": "AB889X",
+        "33324": "AB889X",
+        "33325": "AB889X",
+        "33326": "AB889X",
+        "33327": "AB889X",
+        "33328": "AB889X",
+        "33329": "AB889X",
+        "33330": "AB889X",
+        "33331": "AB889X",
+        "33332": "AB889X",
+        "33334": "AB889X",
+        "33335": "AB889X",
+        "33336": "AB889X",
+        "33337": "AB889X",
+        "33338": "AB889X",
+        "33339": "AB889X",
+        "33340": "AB889X",
+        "33345": "AB889X",
+        "33346": "AB889X",
+        "33348": "AB889X",
+        "33349": "AB889X",
+        "33351": "AB889X",
+        "33355": "AB889X",
+        "33359": "AB889X",
+        "33388": "AB889X",
+        "33394": "AB889X",
+        "33400": "AB890X",
+        "33401": "AB892X",
+        "33402": "AB892X",
+        "33403": "AB892X",
+        "33404": "AB892X",
+        "33405": "AB892X",
+        "33406": "AB892X",
+        "33407": "AB892X",
+        "33408": "AB892X",
+        "33409": "AB892X",
+        "33410": "AB892X",
+        "33411": "AB892X",
+        "33412": "AB892X",
+        "33413": "AB892X",
+        "33414": "AB892X",
+        "33415": "AB892X",
+        "33416": "AB892X",
+        "33417": "AB892X",
+        "33418": "AB892X",
+        "33419": "AB892X",
+        "33420": "AB892X",
+        "33421": "AB892X",
+        "33422": "AB892X",
+        "33424": "AB892X",
+        "33425": "AB892X",
+        "33426": "AB892X",
+        "33427": "AB892X",
+        "33428": "AB892X",
+        "33429": "AB892X",
+        "33430": "AB892X",
+        "33431": "AB892X",
+        "33432": "AB892X",
+        "33433": "AB892X",
+        "33434": "AB892X",
+        "33435": "AB892X",
+        "33436": "AB892X",
+        "33437": "AB892X",
+        "33438": "AB892X",
+        "33439": "AB892X",
+        "33440": "AB892X",
+        "33441": "AB889X",
+        "33442": "AB889X",
+        "33443": "AB889X",
+        "33444": "AB892X",
+        "33445": "AB892X",
+        "33446": "AB892X",
+        "33447": "AB892X",
+        "33448": "AB892X",
+        "33449": "AB892X",
+        "33454": "AB892X",
+        "33455": "AB892X",
+        "33458": "AB892X",
+        "33459": "AB892X",
+        "33460": "AB892X",
+        "33461": "AB892X",
+        "33462": "AB892X",
+        "33463": "AB892X",
+        "33464": "AB892X",
+        "33465": "AB892X",
+        "33466": "AB892X",
+        "33467": "AB892X",
+        "33468": "AB892X",
+        "33469": "AB892X",
+        "33470": "AB892X",
+        "33471": "AB892X",
+        "33474": "AB892X",
+        "33475": "AB892X",
+        "33476": "AB892X",
+        "33477": "AB892X",
+        "33478": "AB892X",
+        "33480": "AB892X",
+        "33481": "AB892X",
+        "33482": "AB892X",
+        "33483": "AB892X",
+        "33484": "AB892X",
+        "33486": "AB892X",
+        "33487": "AB892X",
+        "33488": "AB892X",
+        "33493": "AB892X",
+        "33496": "AB892X",
+        "33497": "AB892X",
+        "33498": "AB892X",
+        "33499": "AB892X",
+        "33500": "AB890X",
+        "33503": "AB892X",
+        "33508": "AB892X",
+        "33509": "AB892X",
+        "33510": "AB892X",
+        "33511": "AB892X",
+        "33513": "AB890X",
+        "33514": "AB890X",
+        "33521": "AB890X",
+        "33523": "AB892X",
+        "33524": "AB892X",
+        "33525": "AB892X",
+        "33526": "AB892X",
+        "33527": "AB892X",
+        "33530": "AB892X",
+        "33534": "AB892X",
+        "33537": "AB892X",
+        "33538": "AB890X",
+        "33539": "AB892X",
+        "33540": "AB892X",
+        "33541": "AB892X",
+        "33542": "AB892X",
+        "33543": "AB892X",
+        "33544": "AB892X",
+        "33545": "AB892X",
+        "33547": "AB892X",
+        "33548": "AB892X",
+        "33549": "AB892X",
+        "33550": "AB892X",
+        "33556": "AB892X",
+        "33558": "AB892X",
+        "33559": "AB892X",
+        "33563": "AB892X",
+        "33564": "AB892X",
+        "33565": "AB892X",
+        "33566": "AB892X",
+        "33567": "AB892X",
+        "33568": "AB892X",
+        "33569": "AB892X",
+        "33570": "AB892X",
+        "33571": "AB892X",
+        "33572": "AB892X",
+        "33573": "AB892X",
+        "33574": "AB892X",
+        "33575": "AB892X",
+        "33576": "AB892X",
+        "33578": "AB892X",
+        "33579": "AB892X",
+        "33583": "AB892X",
+        "33584": "AB892X",
+        "33585": "AB890X",
+        "33586": "AB892X",
+        "33587": "AB892X",
+        "33592": "AB892X",
+        "33593": "AB892X",
+        "33594": "AB892X",
+        "33595": "AB892X",
+        "33596": "AB892X",
+        "33597": "AB890X",
+        "33598": "AB892X",
+        "33601": "AB892X",
+        "33602": "AB892X",
+        "33603": "AB892X",
+        "33604": "AB892X",
+        "33605": "AB892X",
+        "33606": "AB892X",
+        "33607": "AB892X",
+        "33608": "AB892X",
+        "33609": "AB892X",
+        "33610": "AB892X",
+        "33611": "AB892X",
+        "33612": "AB892X",
+        "33613": "AB892X",
+        "33614": "AB892X",
+        "33615": "AB892X",
+        "33616": "AB892X",
+        "33617": "AB892X",
+        "33618": "AB892X",
+        "33619": "AB892X",
+        "33620": "AB892X",
+        "33621": "AB892X",
+        "33622": "AB892X",
+        "33623": "AB892X",
+        "33624": "AB892X",
+        "33625": "AB892X",
+        "33626": "AB892X",
+        "33629": "AB892X",
+        "33630": "AB889X",
+        "33631": "AB892X",
+        "33633": "AB892X",
+        "33634": "AB892X",
+        "33635": "AB892X",
+        "33637": "AB892X",
+        "33647": "AB892X",
+        "33650": "AB892X",
+        "33651": "AB892X",
+        "33655": "AB892X",
+        "33660": "AB892X",
+        "33661": "AB892X",
+        "33662": "AB892X",
+        "33663": "AB892X",
+        "33664": "AB892X",
+        "33672": "AB892X",
+        "33673": "AB892X",
+        "33674": "AB892X",
+        "33675": "AB892X",
+        "33677": "AB892X",
+        "33679": "AB892X",
+        "33680": "AB892X",
+        "33681": "AB892X",
+        "33682": "AB892X",
+        "33684": "AB892X",
+        "33685": "AB892X",
+        "33686": "AB892X",
+        "33687": "AB892X",
+        "33688": "AB892X",
+        "33689": "AB892X",
+        "33690": "AB892X",
+        "33694": "AB892X",
+        "33697": "AB892X",
+        "33701": "AB892X",
+        "33702": "AB892X",
+        "33703": "AB892X",
+        "33704": "AB892X",
+        "33705": "AB892X",
+        "33706": "AB892X",
+        "33707": "AB892X",
+        "33708": "AB892X",
+        "33709": "AB892X",
+        "33710": "AB892X",
+        "33711": "AB892X",
+        "33712": "AB892X",
+        "33713": "AB892X",
+        "33714": "AB892X",
+        "33715": "AB892X",
+        "33716": "AB892X",
+        "33729": "AB892X",
+        "33730": "AB892X",
+        "33731": "AB892X",
+        "33732": "AB892X",
+        "33733": "AB892X",
+        "33734": "AB892X",
+        "33736": "AB892X",
+        "33737": "AB892X",
+        "33738": "AB892X",
+        "33740": "AB892X",
+        "33741": "AB892X",
+        "33742": "AB892X",
+        "33743": "AB892X",
+        "33744": "AB892X",
+        "33747": "AB892X",
+        "33755": "AB892X",
+        "33756": "AB892X",
+        "33757": "AB892X",
+        "33758": "AB892X",
+        "33759": "AB892X",
+        "33760": "AB892X",
+        "33761": "AB892X",
+        "33762": "AB892X",
+        "33763": "AB892X",
+        "33764": "AB892X",
+        "33765": "AB892X",
+        "33766": "AB892X",
+        "33767": "AB892X",
+        "33769": "AB892X",
+        "33770": "AB892X",
+        "33771": "AB892X",
+        "33772": "AB892X",
+        "33773": "AB892X",
+        "33774": "AB892X",
+        "33775": "AB892X",
+        "33776": "AB892X",
+        "33777": "AB892X",
+        "33778": "AB892X",
+        "33779": "AB892X",
+        "33780": "AB892X",
+        "33781": "AB892X",
+        "33782": "AB892X",
+        "33784": "AB892X",
+        "33785": "AB892X",
+        "33786": "AB892X",
+        "33801": "AB892X",
+        "33802": "AB892X",
+        "33803": "AB892X",
+        "33804": "AB892X",
+        "33805": "AB892X",
+        "33806": "AB892X",
+        "33807": "AB892X",
+        "33809": "AB892X",
+        "33810": "AB892X",
+        "33811": "AB892X",
+        "33812": "AB892X",
+        "33813": "AB892X",
+        "33815": "AB892X",
+        "33820": "AB892X",
+        "33823": "AB892X",
+        "33825": "AB892X",
+        "33826": "AB892X",
+        "33827": "AB892X",
+        "33830": "AB892X",
+        "33831": "AB892X",
+        "33834": "AB892X",
+        "33835": "AB892X",
+        "33836": "AB892X",
+        "33837": "AB892X",
+        "33838": "AB892X",
+        "33839": "AB892X",
+        "33840": "AB890X",
+        "33841": "AB892X",
+        "33843": "AB892X",
+        "33844": "AB892X",
+        "33845": "AB892X",
+        "33846": "AB892X",
+        "33847": "AB892X",
+        "33848": "AB890X",
+        "33849": "AB892X",
+        "33850": "AB892X",
+        "33851": "AB892X",
+        "33852": "AB892X",
+        "33853": "AB892X",
+        "33854": "AB892X",
+        "33855": "AB892X",
+        "33856": "AB892X",
+        "33857": "AB892X",
+        "33858": "AB892X",
+        "33859": "AB892X",
+        "33860": "AB892X",
+        "33862": "AB892X",
+        "33863": "AB892X",
+        "33865": "AB892X",
+        "33867": "AB892X",
+        "33868": "AB892X",
+        "33870": "AB892X",
+        "33871": "AB892X",
+        "33872": "AB892X",
+        "33873": "AB892X",
+        "33875": "AB892X",
+        "33876": "AB892X",
+        "33877": "AB892X",
+        "33880": "AB892X",
+        "33881": "AB892X",
+        "33882": "AB892X",
+        "33883": "AB892X",
+        "33884": "AB892X",
+        "33885": "AB892X",
+        "33888": "AB892X",
+        "33890": "AB892X",
+        "33896": "AB892X",
+        "33897": "AB890X",
+        "33898": "AB892X",
+        "33901": "AB892X",
+        "33902": "AB892X",
+        "33903": "AB892X",
+        "33904": "AB892X",
+        "33905": "AB892X",
+        "33906": "AB892X",
+        "33907": "AB892X",
+        "33908": "AB892X",
+        "33909": "AB892X",
+        "33910": "AB892X",
+        "33911": "AB892X",
+        "33912": "AB892X",
+        "33913": "AB892X",
+        "33914": "AB892X",
+        "33915": "AB892X",
+        "33916": "AB892X",
+        "33917": "AB892X",
+        "33918": "AB892X",
+        "33919": "AB892X",
+        "33920": "AB892X",
+        "33921": "AB892X",
+        "33922": "AB892X",
+        "33924": "AB892X",
+        "33927": "AB892X",
+        "33928": "AB892X",
+        "33930": "AB892X",
+        "33931": "AB892X",
+        "33932": "AB892X",
+        "33935": "AB892X",
+        "33936": "AB892X",
+        "33938": "AB892X",
+        "33944": "AB892X",
+        "33945": "AB892X",
+        "33946": "AB892X",
+        "33947": "AB892X",
+        "33948": "AB892X",
+        "33949": "AB892X",
+        "33950": "AB892X",
+        "33951": "AB892X",
+        "33952": "AB892X",
+        "33953": "AB892X",
+        "33954": "AB892X",
+        "33955": "AB892X",
+        "33956": "AB892X",
+        "33957": "AB892X",
+        "33960": "AB892X",
+        "33965": "AB892X",
+        "33966": "AB892X",
+        "33967": "AB892X",
+        "33970": "AB892X",
+        "33971": "AB892X",
+        "33972": "AB892X",
+        "33973": "AB892X",
+        "33974": "AB892X",
+        "33975": "AB892X",
+        "33976": "AB892X",
+        "33980": "AB892X",
+        "33981": "AB892X",
+        "33982": "AB892X",
+        "33983": "AB892X",
+        "33990": "AB892X",
+        "33991": "AB892X",
+        "33993": "AB892X",
+        "33994": "AB892X",
+        "34029": "AB891X",
+        "34101": "AB892X",
+        "34102": "AB892X",
+        "34103": "AB892X",
+        "34104": "AB892X",
+        "34105": "AB892X",
+        "34106": "AB892X",
+        "34107": "AB892X",
+        "34108": "AB892X",
+        "34109": "AB892X",
+        "34110": "AB892X",
+        "34112": "AB892X",
+        "34113": "AB892X",
+        "34114": "AB892X",
+        "34116": "AB892X",
+        "34117": "AB892X",
+        "34119": "AB892X",
+        "34120": "AB892X",
+        "34133": "AB892X",
+        "34134": "AB892X",
+        "34135": "AB892X",
+        "34136": "AB892X",
+        "34137": "AB892X",
+        "34138": "AB892X",
+        "34139": "AB892X",
+        "34140": "AB892X",
+        "34141": "AB889X",
+        "34142": "AB892X",
+        "34143": "AB892X",
+        "34145": "AB889X",
+        "34146": "AB892X",
+        "34201": "AB892X",
+        "34202": "AB892X",
+        "34203": "AB892X",
+        "34204": "AB892X",
+        "34205": "AB892X",
+        "34206": "AB892X",
+        "34207": "AB892X",
+        "34208": "AB892X",
+        "34209": "AB892X",
+        "34210": "AB892X",
+        "34211": "AB892X",
+        "34212": "AB892X",
+        "34215": "AB892X",
+        "34216": "AB892X",
+        "34217": "AB892X",
+        "34218": "AB892X",
+        "34219": "AB892X",
+        "34220": "AB892X",
+        "34221": "AB892X",
+        "34222": "AB892X",
+        "34223": "AB892X",
+        "34224": "AB892X",
+        "34228": "AB892X",
+        "34229": "AB892X",
+        "34230": "AB892X",
+        "34231": "AB892X",
+        "34232": "AB892X",
+        "34233": "AB892X",
+        "34234": "AB892X",
+        "34235": "AB892X",
+        "34236": "AB892X",
+        "34237": "AB892X",
+        "34238": "AB892X",
+        "34239": "AB892X",
+        "34240": "AB892X",
+        "34241": "AB892X",
+        "34242": "AB892X",
+        "34243": "AB892X",
+        "34250": "AB892X",
+        "34251": "AB892X",
+        "34260": "AB892X",
+        "34264": "AB892X",
+        "34265": "AB892X",
+        "34266": "AB892X",
+        "34267": "AB892X",
+        "34268": "AB892X",
+        "34269": "AB892X",
+        "34270": "AB892X",
+        "34272": "AB892X",
+        "34274": "AB892X",
+        "34275": "AB892X",
+        "34276": "AB892X",
+        "34277": "AB892X",
+        "34278": "AB892X",
+        "34280": "AB892X",
+        "34281": "AB892X",
+        "34282": "AB892X",
+        "34284": "AB892X",
+        "34285": "AB892X",
+        "34286": "AB892X",
+        "34287": "AB892X",
+        "34288": "AB892X",
+        "34289": "AB892X",
+        "34292": "AB892X",
+        "34293": "AB892X",
+        "34295": "AB892X",
+        "34420": "AB890X",
+        "34421": "AB890X",
+        "34423": "AB892X",
+        "34428": "AB892X",
+        "34429": "AB892X",
+        "34430": "AB890X",
+        "34431": "AB890X",
+        "34432": "AB890X",
+        "34433": "AB892X",
+        "34434": "AB892X",
+        "34436": "AB892X",
+        "34442": "AB892X",
+        "34445": "AB892X",
+        "34446": "AB892X",
+        "34447": "AB892X",
+        "34448": "AB892X",
+        "34449": "AB888X",
+        "34450": "AB892X",
+        "34451": "AB892X",
+        "34452": "AB892X",
+        "34453": "AB892X",
+        "34460": "AB892X",
+        "34461": "AB892X",
+        "34464": "AB892X",
+        "34465": "AB892X",
+        "34470": "AB890X",
+        "34471": "AB890X",
+        "34472": "AB890X",
+        "34473": "AB890X",
+        "34474": "AB890X",
+        "34475": "AB890X",
+        "34476": "AB890X",
+        "34477": "AB890X",
+        "34478": "AB890X",
+        "34479": "AB890X",
+        "34480": "AB890X",
+        "34481": "AB890X",
+        "34482": "AB890X",
+        "34483": "AB890X",
+        "34484": "AB890X",
+        "34487": "AB892X",
+        "34488": "AB890X",
+        "34489": "AB890X",
+        "34491": "AB890X",
+        "34492": "AB890X",
+        "34498": "AB888X",
+        "34601": "AB892X",
+        "34602": "AB892X",
+        "34603": "AB892X",
+        "34604": "AB892X",
+        "34605": "AB892X",
+        "34606": "AB892X",
+        "34607": "AB892X",
+        "34608": "AB892X",
+        "34609": "AB892X",
+        "34610": "AB892X",
+        "34611": "AB892X",
+        "34613": "AB892X",
+        "34614": "AB892X",
+        "34636": "AB892X",
+        "34637": "AB892X",
+        "34638": "AB892X",
+        "34639": "AB892X",
+        "34652": "AB892X",
+        "34653": "AB892X",
+        "34654": "AB892X",
+        "34655": "AB892X",
+        "34656": "AB892X",
+        "34660": "AB892X",
+        "34661": "AB892X",
+        "34667": "AB892X",
+        "34668": "AB892X",
+        "34669": "AB892X",
+        "34673": "AB892X",
+        "34674": "AB892X",
+        "34677": "AB892X",
+        "34679": "AB892X",
+        "34680": "AB892X",
+        "34681": "AB892X",
+        "34682": "AB892X",
+        "34683": "AB892X",
+        "34684": "AB892X",
+        "34685": "AB892X",
+        "34688": "AB892X",
+        "34689": "AB892X",
+        "34690": "AB892X",
+        "34691": "AB892X",
+        "34692": "AB892X",
+        "34695": "AB892X",
+        "34697": "AB892X",
+        "34698": "AB892X",
+        "34700": "AB890X",
+        "34705": "AB890X",
+        "34711": "AB890X",
+        "34712": "AB890X",
+        "34713": "AB890X",
+        "34714": "AB890X",
+        "34715": "AB890X",
+        "34729": "AB890X",
+        "34731": "AB890X",
+        "34734": "AB890X",
+        "34736": "AB890X",
+        "34737": "AB890X",
+        "34739": "AB890X",
+        "34740": "AB890X",
+        "34741": "AB890X",
+        "34742": "AB890X",
+        "34743": "AB890X",
+        "34744": "AB890X",
+        "34745": "AB890X",
+        "34746": "AB890X",
+        "34747": "AB890X",
+        "34748": "AB890X",
+        "34749": "AB890X",
+        "34753": "AB890X",
+        "34755": "AB890X",
+        "34756": "AB890X",
+        "34758": "AB890X",
+        "34759": "AB890X",
+        "34760": "AB890X",
+        "34761": "AB890X",
+        "34762": "AB890X",
+        "34769": "AB890X",
+        "34770": "AB890X",
+        "34771": "AB890X",
+        "34772": "AB890X",
+        "34773": "AB890X",
+        "34777": "AB890X",
+        "34778": "AB890X",
+        "34785": "AB890X",
+        "34786": "AB890X",
+        "34787": "AB890X",
+        "34788": "AB890X",
+        "34789": "AB890X",
+        "34797": "AB890X",
+        "34945": "AB892X",
+        "34946": "AB892X",
+        "34947": "AB892X",
+        "34948": "AB892X",
+        "34949": "AB889X",
+        "34950": "AB892X",
+        "34951": "AB892X",
+        "34952": "AB892X",
+        "34953": "AB892X",
+        "34954": "AB892X",
+        "34956": "AB892X",
+        "34957": "AB892X",
+        "34958": "AB892X",
+        "34972": "AB892X",
+        "34973": "AB892X",
+        "34974": "AB892X",
+        "34979": "AB892X",
+        "34981": "AB892X",
+        "34982": "AB892X",
+        "34983": "AB892X",
+        "34984": "AB892X",
+        "34985": "AB892X",
+        "34986": "AB892X",
+        "34987": "AB892X",
+        "34988": "AB892X",
+        "34990": "AB892X",
+        "34991": "AB892X",
+        "34992": "AB892X",
+        "34994": "AB892X",
+        "34995": "AB892X",
+        "34996": "AB892X",
+        "34997": "AB892X",
+        "35004": "AB887X",
+        "35005": "AB887X",
+        "35006": "AB887X",
+        "35007": "AB887X",
+        "35010": "AB890X",
+        "35011": "AB890X",
+        "35013": "AB887X",
+        "35014": "AB887X",
+        "35015": "AB887X",
+        "35016": "AB887X",
+        "35019": "AB887X",
+        "35020": "AB887X",
+        "35021": "AB887X",
+        "35022": "AB887X",
+        "35023": "AB887X",
+        "35031": "AB887X",
+        "35032": "AB887X",
+        "35033": "AB887X",
+        "35034": "AB887X",
+        "35035": "AB887X",
+        "35036": "AB887X",
+        "35038": "AB887X",
+        "35040": "AB887X",
+        "35041": "AB887X",
+        "35042": "AB887X",
+        "35043": "AB887X",
+        "35044": "AB887X",
+        "35045": "AB887X",
+        "35046": "AB887X",
+        "35048": "AB887X",
+        "35049": "AB887X",
+        "35051": "AB887X",
+        "35052": "AB887X",
+        "35053": "AB887X",
+        "35054": "AB887X",
+        "35055": "AB887X",
+        "35056": "AB887X",
+        "35057": "AB887X",
+        "35058": "AB887X",
+        "35060": "AB887X",
+        "35061": "AB887X",
+        "35062": "AB887X",
+        "35063": "AB887X",
+        "35064": "AB887X",
+        "35068": "AB887X",
+        "35070": "AB887X",
+        "35071": "AB887X",
+        "35072": "AB890X",
+        "35073": "AB887X",
+        "35074": "AB887X",
+        "35077": "AB887X",
+        "35078": "AB887X",
+        "35079": "AB887X",
+        "35080": "AB887X",
+        "35082": "AB889X",
+        "35083": "AB887X",
+        "35085": "AB887X",
+        "35087": "AB887X",
+        "35089": "AB890X",
+        "35091": "AB887X",
+        "35094": "AB887X",
+        "35096": "AB887X",
+        "35097": "AB887X",
+        "35098": "AB887X",
+        "35111": "AB887X",
+        "35112": "AB887X",
+        "35114": "AB887X",
+        "35115": "AB887X",
+        "35116": "AB887X",
+        "35117": "AB887X",
+        "35118": "AB887X",
+        "35119": "AB887X",
+        "35120": "AB887X",
+        "35121": "AB887X",
+        "35123": "AB887X",
+        "35124": "AB887X",
+        "35125": "AB887X",
+        "35126": "AB887X",
+        "35127": "AB887X",
+        "35128": "AB887X",
+        "35130": "AB887X",
+        "35131": "AB887X",
+        "35133": "AB887X",
+        "35135": "AB887X",
+        "35136": "AB890X",
+        "35137": "AB887X",
+        "35139": "AB887X",
+        "35142": "AB887X",
+        "35143": "AB887X",
+        "35144": "AB887X",
+        "35146": "AB887X",
+        "35147": "AB887X",
+        "35148": "AB887X",
+        "35149": "AB887X",
+        "35150": "AB887X",
+        "35151": "AB887X",
+        "35160": "AB887X",
+        "35161": "AB887X",
+        "35171": "AB887X",
+        "35172": "AB887X",
+        "35173": "AB887X",
+        "35175": "AB887X",
+        "35176": "AB887X",
+        "35178": "AB887X",
+        "35179": "AB887X",
+        "35180": "AB887X",
+        "35181": "AB887X",
+        "35182": "AB887X",
+        "35183": "AB890X",
+        "35184": "AB887X",
+        "35185": "AB887X",
+        "35186": "AB887X",
+        "35187": "AB887X",
+        "35188": "AB887X",
+        "35201": "AB887X",
+        "35202": "AB887X",
+        "35203": "AB887X",
+        "35204": "AB887X",
+        "35205": "AB887X",
+        "35206": "AB887X",
+        "35207": "AB887X",
+        "35208": "AB887X",
+        "35209": "AB887X",
+        "35210": "AB887X",
+        "35211": "AB887X",
+        "35212": "AB887X",
+        "35213": "AB887X",
+        "35214": "AB887X",
+        "35215": "AB887X",
+        "35216": "AB887X",
+        "35217": "AB887X",
+        "35218": "AB887X",
+        "35219": "AB887X",
+        "35220": "AB887X",
+        "35221": "AB887X",
+        "35222": "AB887X",
+        "35223": "AB887X",
+        "35224": "AB887X",
+        "35225": "AB887X",
+        "35226": "AB887X",
+        "35228": "AB887X",
+        "35229": "AB887X",
+        "35230": "AB887X",
+        "35231": "AB887X",
+        "35232": "AB887X",
+        "35233": "AB887X",
+        "35234": "AB887X",
+        "35235": "AB887X",
+        "35236": "AB887X",
+        "35237": "AB887X",
+        "35238": "AB887X",
+        "35240": "AB887X",
+        "35242": "AB887X",
+        "35243": "AB887X",
+        "35244": "AB887X",
+        "35245": "AB887X",
+        "35246": "AB887X",
+        "35249": "AB887X",
+        "35253": "AB887X",
+        "35254": "AB887X",
+        "35255": "AB887X",
+        "35259": "AB887X",
+        "35260": "AB887X",
+        "35261": "AB887X",
+        "35263": "AB887X",
+        "35266": "AB887X",
+        "35277": "AB887X",
+        "35278": "AB887X",
+        "35279": "AB887X",
+        "35280": "AB887X",
+        "35281": "AB887X",
+        "35282": "AB887X",
+        "35283": "AB887X",
+        "35285": "AB887X",
+        "35286": "AB887X",
+        "35287": "AB887X",
+        "35288": "AB887X",
+        "35289": "AB887X",
+        "35290": "AB887X",
+        "35291": "AB887X",
+        "35292": "AB887X",
+        "35293": "AB887X",
+        "35294": "AB887X",
+        "35295": "AB887X",
+        "35296": "AB887X",
+        "35297": "AB887X",
+        "35298": "AB887X",
+        "35299": "AB887X",
+        "35401": "AB887X",
+        "35402": "AB887X",
+        "35403": "AB887X",
+        "35404": "AB887X",
+        "35405": "AB887X",
+        "35406": "AB887X",
+        "35407": "AB887X",
+        "35440": "AB887X",
+        "35441": "AB887X",
+        "35442": "AB887X",
+        "35443": "AB887X",
+        "35444": "AB887X",
+        "35446": "AB887X",
+        "35447": "AB887X",
+        "35448": "AB887X",
+        "35449": "AB887X",
+        "35452": "AB887X",
+        "35453": "AB887X",
+        "35456": "AB887X",
+        "35457": "AB887X",
+        "35458": "AB887X",
+        "35459": "AB887X",
+        "35460": "AB887X",
+        "35461": "AB887X",
+        "35462": "AB887X",
+        "35463": "AB887X",
+        "35464": "AB887X",
+        "35466": "AB887X",
+        "35468": "AB887X",
+        "35469": "AB887X",
+        "35470": "AB887X",
+        "35471": "AB887X",
+        "35473": "AB887X",
+        "35474": "AB887X",
+        "35475": "AB887X",
+        "35476": "AB887X",
+        "35477": "AB887X",
+        "35478": "AB887X",
+        "35480": "AB887X",
+        "35481": "AB887X",
+        "35482": "AB887X",
+        "35485": "AB887X",
+        "35486": "AB887X",
+        "35487": "AB887X",
+        "35490": "AB887X",
+        "35491": "AB887X",
+        "35501": "AB887X",
+        "35502": "AB887X",
+        "35503": "AB887X",
+        "35504": "AB887X",
+        "35540": "AB887X",
+        "35541": "AB887X",
+        "35542": "AB887X",
+        "35543": "AB887X",
+        "35544": "AB887X",
+        "35545": "AB887X",
+        "35546": "AB887X",
+        "35548": "AB887X",
+        "35549": "AB887X",
+        "35550": "AB887X",
+        "35551": "AB887X",
+        "35552": "AB887X",
+        "35553": "AB887X",
+        "35554": "AB887X",
+        "35555": "AB887X",
+        "35559": "AB887X",
+        "35560": "AB887X",
+        "35563": "AB887X",
+        "35564": "AB887X",
+        "35565": "AB887X",
+        "35570": "AB887X",
+        "35571": "AB887X",
+        "35572": "AB887X",
+        "35573": "AB887X",
+        "35574": "AB887X",
+        "35575": "AB887X",
+        "35576": "AB887X",
+        "35577": "AB887X",
+        "35578": "AB887X",
+        "35579": "AB887X",
+        "35580": "AB887X",
+        "35581": "AB887X",
+        "35582": "AB887X",
+        "35584": "AB887X",
+        "35585": "AB887X",
+        "35586": "AB887X",
+        "35587": "AB887X",
+        "35592": "AB887X",
+        "35593": "AB887X",
+        "35594": "AB887X",
+        "35601": "AB887X",
+        "35602": "AB887X",
+        "35603": "AB887X",
+        "35609": "AB887X",
+        "35610": "AB887X",
+        "35611": "AB887X",
+        "35612": "AB887X",
+        "35613": "AB887X",
+        "35614": "AB887X",
+        "35615": "AB887X",
+        "35616": "AB887X",
+        "35617": "AB887X",
+        "35618": "AB887X",
+        "35619": "AB887X",
+        "35620": "AB887X",
+        "35621": "AB887X",
+        "35622": "AB887X",
+        "35630": "AB887X",
+        "35631": "AB887X",
+        "35632": "AB887X",
+        "35633": "AB887X",
+        "35634": "AB887X",
+        "35640": "AB887X",
+        "35643": "AB887X",
+        "35645": "AB887X",
+        "35646": "AB887X",
+        "35647": "AB887X",
+        "35648": "AB887X",
+        "35649": "AB887X",
+        "35650": "AB887X",
+        "35651": "AB887X",
+        "35652": "AB887X",
+        "35653": "AB887X",
+        "35654": "AB887X",
+        "35660": "AB887X",
+        "35661": "AB887X",
+        "35662": "AB887X",
+        "35670": "AB887X",
+        "35671": "AB887X",
+        "35672": "AB887X",
+        "35673": "AB887X",
+        "35674": "AB887X",
+        "35677": "AB887X",
+        "35699": "AB887X",
+        "35739": "AB887X",
+        "35740": "AB887X",
+        "35741": "AB887X",
+        "35742": "AB887X",
+        "35744": "AB887X",
+        "35745": "AB887X",
+        "35746": "AB887X",
+        "35747": "AB887X",
+        "35748": "AB887X",
+        "35749": "AB887X",
+        "35750": "AB887X",
+        "35751": "AB887X",
+        "35752": "AB887X",
+        "35754": "AB887X",
+        "35755": "AB887X",
+        "35756": "AB887X",
+        "35757": "AB887X",
+        "35758": "AB887X",
+        "35759": "AB887X",
+        "35760": "AB887X",
+        "35761": "AB887X",
+        "35762": "AB887X",
+        "35763": "AB887X",
+        "35764": "AB887X",
+        "35765": "AB887X",
+        "35766": "AB887X",
+        "35767": "AB887X",
+        "35768": "AB887X",
+        "35769": "AB887X",
+        "35771": "AB887X",
+        "35772": "AB887X",
+        "35773": "AB887X",
+        "35774": "AB887X",
+        "35775": "AB887X",
+        "35776": "AB887X",
+        "35801": "AB887X",
+        "35802": "AB887X",
+        "35803": "AB887X",
+        "35804": "AB887X",
+        "35805": "AB887X",
+        "35806": "AB887X",
+        "35807": "AB887X",
+        "35808": "AB887X",
+        "35809": "AB887X",
+        "35810": "AB887X",
+        "35811": "AB887X",
+        "35812": "AB887X",
+        "35813": "AB887X",
+        "35814": "AB887X",
+        "35815": "AB887X",
+        "35816": "AB887X",
+        "35824": "AB887X",
+        "35893": "AB887X",
+        "35894": "AB887X",
+        "35895": "AB887X",
+        "35896": "AB887X",
+        "35897": "AB887X",
+        "35898": "AB887X",
+        "35899": "AB887X",
+        "35901": "AB887X",
+        "35902": "AB887X",
+        "35903": "AB887X",
+        "35904": "AB887X",
+        "35905": "AB887X",
+        "35906": "AB887X",
+        "35907": "AB887X",
+        "35950": "AB887X",
+        "35951": "AB887X",
+        "35952": "AB887X",
+        "35953": "AB887X",
+        "35954": "AB887X",
+        "35956": "AB887X",
+        "35957": "AB887X",
+        "35958": "AB887X",
+        "35959": "AB887X",
+        "35960": "AB887X",
+        "35961": "AB887X",
+        "35962": "AB887X",
+        "35963": "AB887X",
+        "35964": "AB887X",
+        "35966": "AB887X",
+        "35967": "AB887X",
+        "35968": "AB887X",
+        "35971": "AB887X",
+        "35972": "AB887X",
+        "35973": "AB887X",
+        "35974": "AB887X",
+        "35975": "AB887X",
+        "35976": "AB887X",
+        "35978": "AB887X",
+        "35979": "AB887X",
+        "35980": "AB887X",
+        "35981": "AB887X",
+        "35983": "AB887X",
+        "35984": "AB887X",
+        "35986": "AB887X",
+        "35987": "AB887X",
+        "35988": "AB887X",
+        "35989": "AB887X",
+        "35990": "AB887X",
+        "36003": "AB890X",
+        "36005": "AB890X",
+        "36006": "AB890X",
+        "36008": "AB890X",
+        "36009": "AB890X",
+        "36010": "AB890X",
+        "36013": "AB890X",
+        "36015": "AB890X",
+        "36016": "AB890X",
+        "36017": "AB890X",
+        "36020": "AB890X",
+        "36022": "AB890X",
+        "36023": "AB890X",
+        "36024": "AB890X",
+        "36025": "AB890X",
+        "36026": "AB890X",
+        "36027": "AB890X",
+        "36028": "AB890X",
+        "36029": "AB890X",
+        "36030": "AB890X",
+        "36031": "AB890X",
+        "36032": "AB890X",
+        "36033": "AB890X",
+        "36034": "AB890X",
+        "36035": "AB890X",
+        "36036": "AB890X",
+        "36037": "AB890X",
+        "36038": "AB890X",
+        "36039": "AB890X",
+        "36040": "AB890X",
+        "36041": "AB890X",
+        "36042": "AB890X",
+        "36043": "AB890X",
+        "36045": "AB890X",
+        "36046": "AB890X",
+        "36047": "AB890X",
+        "36048": "AB890X",
+        "36049": "AB890X",
+        "36051": "AB890X",
+        "36052": "AB890X",
+        "36053": "AB890X",
+        "36054": "AB890X",
+        "36057": "AB890X",
+        "36061": "AB890X",
+        "36062": "AB890X",
+        "36064": "AB890X",
+        "36065": "AB890X",
+        "36066": "AB890X",
+        "36067": "AB890X",
+        "36068": "AB890X",
+        "36069": "AB890X",
+        "36071": "AB890X",
+        "36072": "AB890X",
+        "36075": "AB890X",
+        "36078": "AB890X",
+        "36079": "AB890X",
+        "36080": "AB890X",
+        "36081": "AB890X",
+        "36082": "AB890X",
+        "36083": "AB890X",
+        "36087": "AB890X",
+        "36088": "AB890X",
+        "36089": "AB890X",
+        "36091": "AB887X",
+        "36092": "AB890X",
+        "36093": "AB890X",
+        "36101": "AB890X",
+        "36102": "AB890X",
+        "36103": "AB890X",
+        "36104": "AB890X",
+        "36105": "AB890X",
+        "36106": "AB890X",
+        "36107": "AB890X",
+        "36108": "AB890X",
+        "36109": "AB890X",
+        "36110": "AB890X",
+        "36111": "AB890X",
+        "36112": "AB890X",
+        "36113": "AB890X",
+        "36114": "AB890X",
+        "36115": "AB890X",
+        "36116": "AB890X",
+        "36117": "AB890X",
+        "36118": "AB890X",
+        "36119": "AB890X",
+        "36120": "AB890X",
+        "36121": "AB890X",
+        "36123": "AB890X",
+        "36124": "AB890X",
+        "36125": "AB890X",
+        "36130": "AB890X",
+        "36131": "AB890X",
+        "36132": "AB890X",
+        "36133": "AB890X",
+        "36134": "AB890X",
+        "36135": "AB890X",
+        "36140": "AB890X",
+        "36141": "AB890X",
+        "36142": "AB890X",
+        "36177": "AB890X",
+        "36191": "AB890X",
+        "36201": "AB887X",
+        "36202": "AB887X",
+        "36203": "AB887X",
+        "36204": "AB887X",
+        "36205": "AB887X",
+        "36206": "AB887X",
+        "36207": "AB887X",
+        "36210": "AB887X",
+        "36250": "AB887X",
+        "36251": "AB889X",
+        "36253": "AB887X",
+        "36254": "AB887X",
+        "36255": "AB889X",
+        "36256": "AB890X",
+        "36257": "AB887X",
+        "36258": "AB889X",
+        "36260": "AB887X",
+        "36261": "AB887X",
+        "36262": "AB887X",
+        "36263": "AB889X",
+        "36264": "AB887X",
+        "36265": "AB887X",
+        "36266": "AB889X",
+        "36267": "AB889X",
+        "36268": "AB887X",
+        "36269": "AB887X",
+        "36271": "AB887X",
+        "36272": "AB887X",
+        "36273": "AB887X",
+        "36274": "AB889X",
+        "36275": "AB887X",
+        "36276": "AB889X",
+        "36277": "AB887X",
+        "36278": "AB889X",
+        "36279": "AB887X",
+        "36280": "AB889X",
+        "36301": "AB890X",
+        "36302": "AB890X",
+        "36303": "AB890X",
+        "36304": "AB890X",
+        "36305": "AB890X",
+        "36310": "AB890X",
+        "36311": "AB890X",
+        "36312": "AB890X",
+        "36313": "AB890X",
+        "36314": "AB890X",
+        "36316": "AB890X",
+        "36317": "AB890X",
+        "36318": "AB890X",
+        "36319": "AB890X",
+        "36320": "AB890X",
+        "36321": "AB890X",
+        "36322": "AB890X",
+        "36323": "AB890X",
+        "36330": "AB890X",
+        "36331": "AB890X",
+        "36340": "AB890X",
+        "36343": "AB890X",
+        "36344": "AB890X",
+        "36345": "AB890X",
+        "36346": "AB890X",
+        "36349": "AB890X",
+        "36350": "AB890X",
+        "36351": "AB890X",
+        "36352": "AB890X",
+        "36353": "AB890X",
+        "36360": "AB890X",
+        "36361": "AB890X",
+        "36362": "AB890X",
+        "36370": "AB890X",
+        "36371": "AB890X",
+        "36373": "AB890X",
+        "36374": "AB890X",
+        "36375": "AB890X",
+        "36376": "AB890X",
+        "36401": "AB889X",
+        "36420": "AB890X",
+        "36421": "AB890X",
+        "36425": "AB889X",
+        "36426": "AB889X",
+        "36427": "AB889X",
+        "36429": "AB889X",
+        "36432": "AB889X",
+        "36435": "AB890X",
+        "36436": "AB889X",
+        "36439": "AB889X",
+        "36441": "AB889X",
+        "36442": "AB890X",
+        "36444": "AB889X",
+        "36445": "AB889X",
+        "36446": "AB889X",
+        "36449": "AB889X",
+        "36451": "AB889X",
+        "36453": "AB890X",
+        "36454": "AB889X",
+        "36455": "AB890X",
+        "36456": "AB890X",
+        "36457": "AB889X",
+        "36458": "AB889X",
+        "36460": "AB889X",
+        "36461": "AB889X",
+        "36462": "AB889X",
+        "36467": "AB890X",
+        "36470": "AB889X",
+        "36471": "AB889X",
+        "36473": "AB889X",
+        "36474": "AB890X",
+        "36475": "AB889X",
+        "36476": "AB890X",
+        "36477": "AB890X",
+        "36480": "AB889X",
+        "36481": "AB889X",
+        "36482": "AB889X",
+        "36483": "AB890X",
+        "36501": "AB889X",
+        "36502": "AB889X",
+        "36503": "AB889X",
+        "36504": "AB889X",
+        "36505": "AB889X",
+        "36507": "AB889X",
+        "36509": "AB889X",
+        "36511": "AB889X",
+        "36512": "AB889X",
+        "36513": "AB889X",
+        "36515": "AB889X",
+        "36518": "AB889X",
+        "36521": "AB889X",
+        "36522": "AB889X",
+        "36523": "AB889X",
+        "36524": "AB889X",
+        "36525": "AB889X",
+        "36526": "AB889X",
+        "36527": "AB889X",
+        "36528": "AB889X",
+        "36529": "AB889X",
+        "36530": "AB889X",
+        "36532": "AB889X",
+        "36533": "AB889X",
+        "36535": "AB889X",
+        "36536": "AB889X",
+        "36538": "AB889X",
+        "36539": "AB889X",
+        "36540": "AB889X",
+        "36541": "AB889X",
+        "36542": "AB889X",
+        "36543": "AB889X",
+        "36544": "AB889X",
+        "36545": "AB889X",
+        "36547": "AB889X",
+        "36548": "AB889X",
+        "36549": "AB889X",
+        "36550": "AB889X",
+        "36551": "AB889X",
+        "36553": "AB889X",
+        "36555": "AB889X",
+        "36556": "AB889X",
+        "36558": "AB889X",
+        "36559": "AB889X",
+        "36560": "AB889X",
+        "36561": "AB889X",
+        "36562": "AB889X",
+        "36564": "AB889X",
+        "36567": "AB889X",
+        "36568": "AB889X",
+        "36569": "AB889X",
+        "36571": "AB889X",
+        "36572": "AB889X",
+        "36574": "AB889X",
+        "36575": "AB889X",
+        "36576": "AB889X",
+        "36577": "AB889X",
+        "36578": "AB889X",
+        "36579": "AB889X",
+        "36580": "AB889X",
+        "36581": "AB889X",
+        "36582": "AB889X",
+        "36583": "AB889X",
+        "36584": "AB889X",
+        "36585": "AB889X",
+        "36587": "AB889X",
+        "36590": "AB889X",
+        "36601": "AB889X",
+        "36602": "AB889X",
+        "36603": "AB889X",
+        "36604": "AB889X",
+        "36605": "AB889X",
+        "36606": "AB889X",
+        "36607": "AB889X",
+        "36608": "AB889X",
+        "36609": "AB889X",
+        "36610": "AB889X",
+        "36611": "AB889X",
+        "36612": "AB889X",
+        "36613": "AB889X",
+        "36615": "AB889X",
+        "36616": "AB889X",
+        "36617": "AB889X",
+        "36618": "AB889X",
+        "36619": "AB889X",
+        "36621": "AB889X",
+        "36622": "AB889X",
+        "36625": "AB889X",
+        "36628": "AB889X",
+        "36630": "AB889X",
+        "36633": "AB889X",
+        "36640": "AB889X",
+        "36641": "AB889X",
+        "36644": "AB889X",
+        "36652": "AB889X",
+        "36660": "AB889X",
+        "36663": "AB889X",
+        "36670": "AB889X",
+        "36671": "AB889X",
+        "36675": "AB889X",
+        "36685": "AB889X",
+        "36688": "AB889X",
+        "36689": "AB889X",
+        "36690": "AB889X",
+        "36691": "AB889X",
+        "36693": "AB889X",
+        "36695": "AB889X",
+        "36701": "AB890X",
+        "36702": "AB890X",
+        "36703": "AB890X",
+        "36720": "AB890X",
+        "36721": "AB890X",
+        "36722": "AB890X",
+        "36723": "AB890X",
+        "36726": "AB890X",
+        "36727": "AB889X",
+        "36728": "AB890X",
+        "36732": "AB890X",
+        "36736": "AB890X",
+        "36738": "AB890X",
+        "36740": "AB887X",
+        "36741": "AB890X",
+        "36742": "AB890X",
+        "36744": "AB887X",
+        "36745": "AB890X",
+        "36748": "AB890X",
+        "36749": "AB890X",
+        "36750": "AB887X",
+        "36751": "AB890X",
+        "36752": "AB890X",
+        "36753": "AB890X",
+        "36754": "AB890X",
+        "36756": "AB887X",
+        "36758": "AB890X",
+        "36759": "AB890X",
+        "36761": "AB890X",
+        "36762": "AB889X",
+        "36763": "AB890X",
+        "36764": "AB890X",
+        "36765": "AB887X",
+        "36766": "AB890X",
+        "36767": "AB890X",
+        "36768": "AB890X",
+        "36769": "AB890X",
+        "36773": "AB890X",
+        "36775": "AB890X",
+        "36776": "AB887X",
+        "36782": "AB890X",
+        "36783": "AB890X",
+        "36784": "AB889X",
+        "36785": "AB890X",
+        "36786": "AB887X",
+        "36790": "AB887X",
+        "36792": "AB887X",
+        "36793": "AB887X",
+        "36801": "AB890X",
+        "36802": "AB890X",
+        "36803": "AB890X",
+        "36804": "AB890X",
+        "36830": "AB890X",
+        "36831": "AB890X",
+        "36832": "AB890X",
+        "36849": "AB890X",
+        "36850": "AB890X",
+        "36851": "AB890X",
+        "36852": "AB890X",
+        "36853": "AB890X",
+        "36854": "AB890X",
+        "36855": "AB890X",
+        "36856": "AB890X",
+        "36858": "AB890X",
+        "36859": "AB890X",
+        "36860": "AB890X",
+        "36861": "AB890X",
+        "36862": "AB890X",
+        "36863": "AB890X",
+        "36865": "AB890X",
+        "36866": "AB890X",
+        "36867": "AB890X",
+        "36868": "AB890X",
+        "36869": "AB890X",
+        "36870": "AB890X",
+        "36871": "AB890X",
+        "36872": "AB890X",
+        "36874": "AB890X",
+        "36875": "AB890X",
+        "36877": "AB890X",
+        "36879": "AB890X",
+        "36901": "AB887X",
+        "36904": "AB889X",
+        "36907": "AB887X",
+        "36908": "AB889X",
+        "36910": "AB889X",
+        "36912": "AB889X",
+        "36913": "AB889X",
+        "36915": "AB889X",
+        "36916": "AB889X",
+        "36919": "AB889X",
+        "36921": "AB889X",
+        "36922": "AB889X",
+        "36925": "AB887X",
+        "37010": "AB887X",
+        "37011": "AB887X",
+        "37012": "AB887X",
+        "37013": "AB887X",
+        "37014": "AB887X",
+        "37015": "AB887X",
+        "37016": "AB887X",
+        "37018": "AB887X",
+        "37019": "AB887X",
+        "37020": "AB887X",
+        "37022": "AB887X",
+        "37023": "AB887X",
+        "37024": "AB887X",
+        "37025": "AB887X",
+        "37026": "AB887X",
+        "37027": "AB887X",
+        "37028": "AB887X",
+        "37029": "AB887X",
+        "37030": "AB887X",
+        "37031": "AB887X",
+        "37032": "AB887X",
+        "37033": "AB887X",
+        "37034": "AB887X",
+        "37035": "AB887X",
+        "37036": "AB887X",
+        "37037": "AB887X",
+        "37040": "AB887X",
+        "37041": "AB887X",
+        "37042": "AB887X",
+        "37043": "AB887X",
+        "37044": "AB887X",
+        "37046": "AB887X",
+        "37047": "AB887X",
+        "37048": "AB887X",
+        "37049": "AB887X",
+        "37050": "AB887X",
+        "37051": "AB887X",
+        "37052": "AB887X",
+        "37055": "AB887X",
+        "37056": "AB887X",
+        "37057": "AB887X",
+        "37058": "AB887X",
+        "37059": "AB887X",
+        "37060": "AB887X",
+        "37061": "AB887X",
+        "37062": "AB887X",
+        "37063": "AB887X",
+        "37064": "AB887X",
+        "37065": "AB887X",
+        "37066": "AB887X",
+        "37067": "AB887X",
+        "37068": "AB887X",
+        "37069": "AB887X",
+        "37070": "AB887X",
+        "37071": "AB887X",
+        "37072": "AB887X",
+        "37073": "AB887X",
+        "37074": "AB887X",
+        "37075": "AB887X",
+        "37076": "AB887X",
+        "37077": "AB887X",
+        "37078": "AB887X",
+        "37079": "AB887X",
+        "37080": "AB887X",
+        "37082": "AB887X",
+        "37083": "AB887X",
+        "37085": "AB887X",
+        "37086": "AB887X",
+        "37087": "AB887X",
+        "37088": "AB887X",
+        "37089": "AB887X",
+        "37090": "AB887X",
+        "37091": "AB887X",
+        "37095": "AB887X",
+        "37096": "AB887X",
+        "37097": "AB887X",
+        "37098": "AB887X",
+        "37101": "AB887X",
+        "37110": "AB887X",
+        "37111": "AB887X",
+        "37115": "AB887X",
+        "37116": "AB887X",
+        "37118": "AB887X",
+        "37119": "AB887X",
+        "37121": "AB887X",
+        "37122": "AB887X",
+        "37127": "AB887X",
+        "37128": "AB887X",
+        "37129": "AB887X",
+        "37130": "AB887X",
+        "37131": "AB887X",
+        "37132": "AB887X",
+        "37133": "AB887X",
+        "37134": "AB887X",
+        "37135": "AB887X",
+        "37136": "AB887X",
+        "37137": "AB887X",
+        "37138": "AB887X",
+        "37140": "AB887X",
+        "37141": "AB887X",
+        "37142": "AB887X",
+        "37143": "AB887X",
+        "37144": "AB887X",
+        "37145": "AB887X",
+        "37146": "AB887X",
+        "37148": "AB887X",
+        "37149": "AB887X",
+        "37150": "AB887X",
+        "37151": "AB887X",
+        "37152": "AB887X",
+        "37153": "AB887X",
+        "37160": "AB887X",
+        "37161": "AB887X",
+        "37162": "AB887X",
+        "37165": "AB887X",
+        "37166": "AB887X",
+        "37167": "AB887X",
+        "37171": "AB887X",
+        "37172": "AB887X",
+        "37174": "AB887X",
+        "37175": "AB887X",
+        "37178": "AB887X",
+        "37179": "AB887X",
+        "37180": "AB887X",
+        "37181": "AB887X",
+        "37183": "AB887X",
+        "37184": "AB887X",
+        "37185": "AB887X",
+        "37186": "AB887X",
+        "37187": "AB887X",
+        "37188": "AB887X",
+        "37189": "AB887X",
+        "37190": "AB887X",
+        "37191": "AB887X",
+        "37201": "AB887X",
+        "37202": "AB887X",
+        "37203": "AB890X",
+        "37204": "AB887X",
+        "37205": "AB887X",
+        "37206": "AB887X",
+        "37207": "AB887X",
+        "37208": "AB887X",
+        "37209": "AB887X",
+        "37210": "AB887X",
+        "37211": "AB887X",
+        "37212": "AB887X",
+        "37213": "AB887X",
+        "37214": "AB887X",
+        "37215": "AB887X",
+        "37216": "AB887X",
+        "37217": "AB887X",
+        "37218": "AB887X",
+        "37219": "AB887X",
+        "37220": "AB887X",
+        "37221": "AB887X",
+        "37222": "AB887X",
+        "37224": "AB887X",
+        "37227": "AB887X",
+        "37228": "AB887X",
+        "37229": "AB887X",
+        "37230": "AB887X",
+        "37232": "AB887X",
+        "37234": "AB887X",
+        "37235": "AB887X",
+        "37236": "AB887X",
+        "37237": "AB887X",
+        "37238": "AB887X",
+        "37240": "AB887X",
+        "37241": "AB887X",
+        "37242": "AB887X",
+        "37243": "AB887X",
+        "37244": "AB887X",
+        "37245": "AB887X",
+        "37246": "AB887X",
+        "37247": "AB887X",
+        "37248": "AB887X",
+        "37249": "AB887X",
+        "37250": "AB887X",
+        "37301": "AB887X",
+        "37302": "AB888X",
+        "37303": "AB888X",
+        "37304": "AB888X",
+        "37305": "AB888X",
+        "37306": "AB887X",
+        "37307": "AB888X",
+        "37308": "AB888X",
+        "37309": "AB888X",
+        "37310": "AB888X",
+        "37311": "AB888X",
+        "37312": "AB888X",
+        "37313": "AB888X",
+        "37314": "AB888X",
+        "37315": "AB888X",
+        "37316": "AB888X",
+        "37317": "AB888X",
+        "37318": "AB887X",
+        "37320": "AB888X",
+        "37321": "AB888X",
+        "37322": "AB888X",
+        "37323": "AB888X",
+        "37324": "AB887X",
+        "37325": "AB888X",
+        "37326": "AB888X",
+        "37327": "AB888X",
+        "37328": "AB887X",
+        "37329": "AB888X",
+        "37330": "AB887X",
+        "37331": "AB888X",
+        "37332": "AB888X",
+        "37333": "AB888X",
+        "37334": "AB887X",
+        "37335": "AB887X",
+        "37336": "AB888X",
+        "37337": "AB888X",
+        "37338": "AB888X",
+        "37339": "AB888X",
+        "37340": "AB888X",
+        "37341": "AB888X",
+        "37342": "AB887X",
+        "37343": "AB888X",
+        "37345": "AB887X",
+        "37347": "AB888X",
+        "37348": "AB887X",
+        "37349": "AB887X",
+        "37350": "AB888X",
+        "37351": "AB888X",
+        "37352": "AB887X",
+        "37353": "AB888X",
+        "37354": "AB888X",
+        "37355": "AB887X",
+        "37356": "AB888X",
+        "37357": "AB887X",
+        "37359": "AB887X",
+        "37360": "AB887X",
+        "37361": "AB888X",
+        "37362": "AB888X",
+        "37363": "AB888X",
+        "37364": "AB888X",
+        "37365": "AB888X",
+        "37366": "AB887X",
+        "37367": "AB888X",
+        "37369": "AB888X",
+        "37370": "AB888X",
+        "37371": "AB888X",
+        "37372": "AB887X",
+        "37373": "AB888X",
+        "37374": "AB888X",
+        "37375": "AB887X",
+        "37376": "AB887X",
+        "37377": "AB888X",
+        "37378": "AB887X",
+        "37379": "AB888X",
+        "37380": "AB888X",
+        "37381": "AB888X",
+        "37382": "AB887X",
+        "37383": "AB887X",
+        "37384": "AB888X",
+        "37385": "AB888X",
+        "37387": "AB888X",
+        "37388": "AB887X",
+        "37389": "AB887X",
+        "37391": "AB888X",
+        "37394": "AB887X",
+        "37396": "AB888X",
+        "37397": "AB888X",
+        "37398": "AB887X",
+        "37401": "AB888X",
+        "37402": "AB888X",
+        "37403": "AB888X",
+        "37404": "AB888X",
+        "37405": "AB888X",
+        "37406": "AB888X",
+        "37407": "AB888X",
+        "37408": "AB888X",
+        "37409": "AB888X",
+        "37410": "AB888X",
+        "37411": "AB888X",
+        "37412": "AB888X",
+        "37414": "AB888X",
+        "37415": "AB888X",
+        "37416": "AB888X",
+        "37419": "AB888X",
+        "37421": "AB888X",
+        "37422": "AB888X",
+        "37424": "AB888X",
+        "37450": "AB888X",
+        "37501": "AB889X",
+        "37544": "AB889X",
+        "37601": "AB888X",
+        "37602": "AB888X",
+        "37604": "AB888X",
+        "37605": "AB888X",
+        "37614": "AB888X",
+        "37615": "AB888X",
+        "37616": "AB888X",
+        "37617": "AB888X",
+        "37618": "AB888X",
+        "37620": "AB888X",
+        "37621": "AB888X",
+        "37625": "AB888X",
+        "37640": "AB888X",
+        "37641": "AB888X",
+        "37642": "AB888X",
+        "37643": "AB888X",
+        "37644": "AB888X",
+        "37645": "AB888X",
+        "37650": "AB888X",
+        "37656": "AB888X",
+        "37657": "AB888X",
+        "37658": "AB888X",
+        "37659": "AB888X",
+        "37660": "AB888X",
+        "37662": "AB888X",
+        "37663": "AB888X",
+        "37664": "AB888X",
+        "37665": "AB888X",
+        "37669": "AB888X",
+        "37680": "AB888X",
+        "37681": "AB888X",
+        "37682": "AB888X",
+        "37683": "AB887X",
+        "37684": "AB888X",
+        "37686": "AB888X",
+        "37687": "AB888X",
+        "37688": "AB888X",
+        "37690": "AB888X",
+        "37691": "AB888X",
+        "37692": "AB888X",
+        "37694": "AB888X",
+        "37699": "AB888X",
+        "37701": "AB888X",
+        "37705": "AB888X",
+        "37707": "AB888X",
+        "37708": "AB888X",
+        "37709": "AB888X",
+        "37710": "AB888X",
+        "37711": "AB888X",
+        "37713": "AB888X",
+        "37714": "AB888X",
+        "37715": "AB888X",
+        "37716": "AB888X",
+        "37717": "AB888X",
+        "37719": "AB888X",
+        "37721": "AB888X",
+        "37722": "AB888X",
+        "37723": "AB888X",
+        "37724": "AB888X",
+        "37725": "AB888X",
+        "37726": "AB888X",
+        "37727": "AB888X",
+        "37729": "AB888X",
+        "37730": "AB888X",
+        "37731": "AB888X",
+        "37732": "AB888X",
+        "37733": "AB888X",
+        "37737": "AB888X",
+        "37738": "AB888X",
+        "37742": "AB888X",
+        "37743": "AB888X",
+        "37744": "AB888X",
+        "37745": "AB888X",
+        "37748": "AB888X",
+        "37752": "AB888X",
+        "37753": "AB888X",
+        "37754": "AB888X",
+        "37755": "AB888X",
+        "37756": "AB888X",
+        "37757": "AB888X",
+        "37760": "AB888X",
+        "37762": "AB888X",
+        "37763": "AB888X",
+        "37764": "AB888X",
+        "37765": "AB888X",
+        "37766": "AB888X",
+        "37769": "AB888X",
+        "37770": "AB888X",
+        "37771": "AB888X",
+        "37772": "AB888X",
+        "37773": "AB888X",
+        "37774": "AB888X",
+        "37777": "AB888X",
+        "37778": "AB888X",
+        "37779": "AB888X",
+        "37801": "AB888X",
+        "37802": "AB888X",
+        "37803": "AB888X",
+        "37804": "AB888X",
+        "37806": "AB888X",
+        "37807": "AB888X",
+        "37809": "AB888X",
+        "37810": "AB888X",
+        "37811": "AB888X",
+        "37813": "AB888X",
+        "37814": "AB888X",
+        "37815": "AB888X",
+        "37816": "AB888X",
+        "37818": "AB888X",
+        "37819": "AB888X",
+        "37820": "AB888X",
+        "37821": "AB888X",
+        "37822": "AB888X",
+        "37824": "AB888X",
+        "37825": "AB888X",
+        "37826": "AB888X",
+        "37828": "AB888X",
+        "37829": "AB888X",
+        "37830": "AB888X",
+        "37831": "AB888X",
+        "37840": "AB888X",
+        "37841": "AB888X",
+        "37843": "AB888X",
+        "37845": "AB888X",
+        "37846": "AB888X",
+        "37847": "AB888X",
+        "37848": "AB888X",
+        "37849": "AB888X",
+        "37851": "AB888X",
+        "37852": "AB888X",
+        "37853": "AB888X",
+        "37854": "AB888X",
+        "37857": "AB888X",
+        "37860": "AB888X",
+        "37861": "AB888X",
+        "37862": "AB888X",
+        "37863": "AB888X",
+        "37864": "AB888X",
+        "37865": "AB888X",
+        "37866": "AB888X",
+        "37867": "AB888X",
+        "37868": "AB888X",
+        "37869": "AB888X",
+        "37870": "AB888X",
+        "37871": "AB888X",
+        "37872": "AB888X",
+        "37873": "AB888X",
+        "37874": "AB888X",
+        "37876": "AB888X",
+        "37877": "AB888X",
+        "37878": "AB888X",
+        "37879": "AB888X",
+        "37880": "AB888X",
+        "37881": "AB888X",
+        "37882": "AB888X",
+        "37885": "AB888X",
+        "37886": "AB888X",
+        "37887": "AB888X",
+        "37888": "AB888X",
+        "37890": "AB888X",
+        "37891": "AB888X",
+        "37892": "AB888X",
+        "37901": "AB888X",
+        "37902": "AB888X",
+        "37909": "AB888X",
+        "37912": "AB888X",
+        "37914": "AB888X",
+        "37915": "AB888X",
+        "37916": "AB888X",
+        "37917": "AB888X",
+        "37918": "AB888X",
+        "37919": "AB888X",
+        "37920": "AB888X",
+        "37921": "AB888X",
+        "37922": "AB888X",
+        "37923": "AB888X",
+        "37924": "AB888X",
+        "37927": "AB888X",
+        "37928": "AB888X",
+        "37929": "AB888X",
+        "37930": "AB888X",
+        "37931": "AB888X",
+        "37932": "AB888X",
+        "37933": "AB888X",
+        "37934": "AB888X",
+        "37938": "AB888X",
+        "37939": "AB888X",
+        "37940": "AB888X",
+        "37950": "AB888X",
+        "37990": "AB888X",
+        "37995": "AB888X",
+        "37996": "AB888X",
+        "37997": "AB888X",
+        "37998": "AB888X",
+        "38001": "AB889X",
+        "38002": "AB889X",
+        "38004": "AB889X",
+        "38006": "AB889X",
+        "38007": "AB889X",
+        "38008": "AB889X",
+        "38010": "AB889X",
+        "38011": "AB889X",
+        "38012": "AB889X",
+        "38014": "AB889X",
+        "38015": "AB889X",
+        "38016": "AB889X",
+        "38017": "AB889X",
+        "38018": "AB889X",
+        "38019": "AB889X",
+        "38021": "AB889X",
+        "38023": "AB889X",
+        "38024": "AB889X",
+        "38025": "AB889X",
+        "38027": "AB889X",
+        "38028": "AB889X",
+        "38029": "AB889X",
+        "38030": "AB889X",
+        "38034": "AB889X",
+        "38036": "AB889X",
+        "38037": "AB889X",
+        "38039": "AB889X",
+        "38040": "AB889X",
+        "38041": "AB889X",
+        "38042": "AB889X",
+        "38044": "AB889X",
+        "38045": "AB889X",
+        "38046": "AB889X",
+        "38047": "AB889X",
+        "38048": "AB889X",
+        "38049": "AB889X",
+        "38050": "AB889X",
+        "38052": "AB889X",
+        "38053": "AB889X",
+        "38054": "AB889X",
+        "38055": "AB889X",
+        "38057": "AB889X",
+        "38058": "AB889X",
+        "38059": "AB889X",
+        "38060": "AB889X",
+        "38061": "AB889X",
+        "38063": "AB889X",
+        "38066": "AB889X",
+        "38067": "AB889X",
+        "38068": "AB889X",
+        "38069": "AB889X",
+        "38070": "AB889X",
+        "38071": "AB889X",
+        "38075": "AB889X",
+        "38076": "AB889X",
+        "38077": "AB889X",
+        "38079": "AB889X",
+        "38080": "AB889X",
+        "38083": "AB889X",
+        "38088": "AB889X",
+        "38101": "AB889X",
+        "38103": "AB889X",
+        "38104": "AB889X",
+        "38105": "AB889X",
+        "38106": "AB889X",
+        "38107": "AB889X",
+        "38108": "AB889X",
+        "38109": "AB889X",
+        "38110": "AB889X",
+        "38111": "AB889X",
+        "38112": "AB889X",
+        "38113": "AB889X",
+        "38114": "AB889X",
+        "38115": "AB889X",
+        "38116": "AB889X",
+        "38117": "AB889X",
+        "38118": "AB889X",
+        "38119": "AB889X",
+        "38120": "AB889X",
+        "38122": "AB889X",
+        "38124": "AB889X",
+        "38125": "AB889X",
+        "38126": "AB889X",
+        "38127": "AB889X",
+        "38128": "AB889X",
+        "38130": "AB889X",
+        "38131": "AB889X",
+        "38132": "AB889X",
+        "38133": "AB889X",
+        "38134": "AB889X",
+        "38135": "AB889X",
+        "38136": "AB889X",
+        "38137": "AB889X",
+        "38138": "AB889X",
+        "38139": "AB889X",
+        "38141": "AB889X",
+        "38142": "AB889X",
+        "38145": "AB889X",
+        "38147": "AB889X",
+        "38148": "AB889X",
+        "38150": "AB889X",
+        "38151": "AB889X",
+        "38152": "AB889X",
+        "38157": "AB889X",
+        "38159": "AB889X",
+        "38161": "AB889X",
+        "38163": "AB889X",
+        "38165": "AB889X",
+        "38166": "AB889X",
+        "38167": "AB889X",
+        "38168": "AB889X",
+        "38173": "AB889X",
+        "38174": "AB889X",
+        "38175": "AB889X",
+        "38177": "AB889X",
+        "38181": "AB889X",
+        "38182": "AB889X",
+        "38183": "AB889X",
+        "38184": "AB889X",
+        "38186": "AB889X",
+        "38187": "AB889X",
+        "38188": "AB889X",
+        "38190": "AB889X",
+        "38193": "AB889X",
+        "38194": "AB889X",
+        "38197": "AB889X",
+        "38201": "AB889X",
+        "38220": "AB889X",
+        "38221": "AB889X",
+        "38222": "AB889X",
+        "38223": "AB889X",
+        "38224": "AB889X",
+        "38225": "AB888X",
+        "38226": "AB888X",
+        "38227": "AB888X",
+        "38229": "AB889X",
+        "38230": "AB888X",
+        "38231": "AB889X",
+        "38232": "AB888X",
+        "38233": "AB889X",
+        "38235": "AB889X",
+        "38236": "AB889X",
+        "38237": "AB888X",
+        "38238": "AB888X",
+        "38240": "AB888X",
+        "38241": "AB888X",
+        "38242": "AB887X",
+        "38251": "AB888X",
+        "38253": "AB888X",
+        "38254": "AB888X",
+        "38255": "AB888X",
+        "38256": "AB889X",
+        "38257": "AB888X",
+        "38258": "AB889X",
+        "38259": "AB889X",
+        "38260": "AB888X",
+        "38261": "AB888X",
+        "38271": "AB888X",
+        "38281": "AB888X",
+        "38301": "AB889X",
+        "38302": "AB889X",
+        "38303": "AB889X",
+        "38305": "AB889X",
+        "38308": "AB889X",
+        "38310": "AB889X",
+        "38311": "AB889X",
+        "38313": "AB889X",
+        "38314": "AB889X",
+        "38315": "AB889X",
+        "38316": "AB889X",
+        "38317": "AB889X",
+        "38318": "AB889X",
+        "38320": "AB887X",
+        "38321": "AB889X",
+        "38324": "AB889X",
+        "38326": "AB889X",
+        "38327": "AB889X",
+        "38328": "AB889X",
+        "38329": "AB889X",
+        "38330": "AB889X",
+        "38331": "AB889X",
+        "38332": "AB889X",
+        "38333": "AB889X",
+        "38334": "AB889X",
+        "38336": "AB889X",
+        "38337": "AB889X",
+        "38338": "AB889X",
+        "38339": "AB889X",
+        "38340": "AB889X",
+        "38341": "AB889X",
+        "38342": "AB889X",
+        "38343": "AB889X",
+        "38344": "AB889X",
+        "38345": "AB889X",
+        "38346": "AB889X",
+        "38347": "AB889X",
+        "38348": "AB889X",
+        "38351": "AB889X",
+        "38352": "AB889X",
+        "38355": "AB889X",
+        "38356": "AB889X",
+        "38357": "AB889X",
+        "38358": "AB889X",
+        "38359": "AB889X",
+        "38361": "AB889X",
+        "38362": "AB889X",
+        "38363": "AB889X",
+        "38365": "AB889X",
+        "38366": "AB889X",
+        "38367": "AB889X",
+        "38368": "AB889X",
+        "38369": "AB889X",
+        "38370": "AB889X",
+        "38371": "AB889X",
+        "38372": "AB889X",
+        "38374": "AB889X",
+        "38375": "AB889X",
+        "38376": "AB889X",
+        "38377": "AB889X",
+        "38378": "AB889X",
+        "38379": "AB889X",
+        "38380": "AB889X",
+        "38381": "AB889X",
+        "38382": "AB889X",
+        "38387": "AB889X",
+        "38388": "AB889X",
+        "38389": "AB889X",
+        "38390": "AB889X",
+        "38391": "AB889X",
+        "38392": "AB889X",
+        "38393": "AB889X",
+        "38401": "AB887X",
+        "38402": "AB887X",
+        "38425": "AB889X",
+        "38449": "AB887X",
+        "38450": "AB889X",
+        "38451": "AB887X",
+        "38452": "AB889X",
+        "38453": "AB887X",
+        "38454": "AB887X",
+        "38455": "AB887X",
+        "38456": "AB887X",
+        "38457": "AB887X",
+        "38459": "AB887X",
+        "38460": "AB887X",
+        "38461": "AB887X",
+        "38462": "AB887X",
+        "38463": "AB887X",
+        "38464": "AB887X",
+        "38468": "AB887X",
+        "38469": "AB887X",
+        "38471": "AB889X",
+        "38472": "AB887X",
+        "38473": "AB887X",
+        "38474": "AB887X",
+        "38475": "AB889X",
+        "38476": "AB887X",
+        "38477": "AB887X",
+        "38478": "AB887X",
+        "38481": "AB887X",
+        "38482": "AB887X",
+        "38483": "AB887X",
+        "38485": "AB887X",
+        "38486": "AB887X",
+        "38487": "AB887X",
+        "38488": "AB887X",
+        "38501": "AB887X",
+        "38502": "AB887X",
+        "38503": "AB887X",
+        "38504": "AB888X",
+        "38505": "AB887X",
+        "38506": "AB887X",
+        "38541": "AB887X",
+        "38542": "AB887X",
+        "38543": "AB888X",
+        "38544": "AB887X",
+        "38545": "AB887X",
+        "38547": "AB887X",
+        "38548": "AB887X",
+        "38549": "AB888X",
+        "38550": "AB887X",
+        "38551": "AB887X",
+        "38552": "AB887X",
+        "38553": "AB888X",
+        "38554": "AB887X",
+        "38555": "AB888X",
+        "38556": "AB888X",
+        "38557": "AB888X",
+        "38558": "AB888X",
+        "38559": "AB887X",
+        "38560": "AB887X",
+        "38562": "AB887X",
+        "38563": "AB887X",
+        "38564": "AB887X",
+        "38565": "AB888X",
+        "38567": "AB887X",
+        "38568": "AB887X",
+        "38569": "AB887X",
+        "38570": "AB887X",
+        "38571": "AB888X",
+        "38572": "AB888X",
+        "38573": "AB887X",
+        "38574": "AB887X",
+        "38575": "AB887X",
+        "38577": "AB888X",
+        "38578": "AB888X",
+        "38579": "AB887X",
+        "38580": "AB887X",
+        "38581": "AB887X",
+        "38582": "AB887X",
+        "38583": "AB887X",
+        "38585": "AB887X",
+        "38587": "AB887X",
+        "38588": "AB887X",
+        "38589": "AB887X",
+        "38601": "AB889X",
+        "38602": "AB889X",
+        "38603": "AB889X",
+        "38606": "AB889X",
+        "38609": "AB889X",
+        "38610": "AB889X",
+        "38611": "AB889X",
+        "38614": "AB889X",
+        "38617": "AB889X",
+        "38618": "AB889X",
+        "38619": "AB889X",
+        "38620": "AB889X",
+        "38621": "AB889X",
+        "38622": "AB889X",
+        "38623": "AB889X",
+        "38625": "AB889X",
+        "38626": "AB889X",
+        "38627": "AB889X",
+        "38628": "AB889X",
+        "38629": "AB889X",
+        "38630": "AB889X",
+        "38631": "AB889X",
+        "38632": "AB889X",
+        "38633": "AB889X",
+        "38634": "AB889X",
+        "38635": "AB889X",
+        "38637": "AB889X",
+        "38638": "AB889X",
+        "38639": "AB889X",
+        "38641": "AB889X",
+        "38642": "AB889X",
+        "38643": "AB889X",
+        "38644": "AB889X",
+        "38645": "AB889X",
+        "38646": "AB889X",
+        "38647": "AB889X",
+        "38649": "AB889X",
+        "38650": "AB889X",
+        "38651": "AB889X",
+        "38652": "AB889X",
+        "38654": "AB889X",
+        "38655": "AB889X",
+        "38658": "AB889X",
+        "38659": "AB889X",
+        "38661": "AB889X",
+        "38663": "AB889X",
+        "38664": "AB889X",
+        "38665": "AB889X",
+        "38666": "AB889X",
+        "38668": "AB889X",
+        "38669": "AB889X",
+        "38670": "AB889X",
+        "38671": "AB889X",
+        "38672": "AB889X",
+        "38673": "AB889X",
+        "38674": "AB889X",
+        "38675": "AB889X",
+        "38676": "AB889X",
+        "38677": "AB889X",
+        "38679": "AB889X",
+        "38680": "AB889X",
+        "38683": "AB889X",
+        "38685": "AB889X",
+        "38686": "AB889X",
+        "38701": "AB889X",
+        "38702": "AB889X",
+        "38703": "AB889X",
+        "38704": "AB889X",
+        "38720": "AB889X",
+        "38721": "AB889X",
+        "38722": "AB889X",
+        "38723": "AB889X",
+        "38725": "AB889X",
+        "38726": "AB889X",
+        "38730": "AB889X",
+        "38731": "AB889X",
+        "38732": "AB889X",
+        "38733": "AB889X",
+        "38736": "AB889X",
+        "38737": "AB889X",
+        "38738": "AB889X",
+        "38739": "AB889X",
+        "38740": "AB889X",
+        "38744": "AB889X",
+        "38745": "AB889X",
+        "38746": "AB889X",
+        "38748": "AB889X",
+        "38749": "AB889X",
+        "38751": "AB889X",
+        "38753": "AB889X",
+        "38754": "AB889X",
+        "38756": "AB889X",
+        "38759": "AB889X",
+        "38760": "AB889X",
+        "38761": "AB889X",
+        "38762": "AB889X",
+        "38764": "AB889X",
+        "38765": "AB889X",
+        "38767": "AB889X",
+        "38768": "AB889X",
+        "38769": "AB889X",
+        "38771": "AB889X",
+        "38772": "AB889X",
+        "38773": "AB889X",
+        "38774": "AB889X",
+        "38776": "AB889X",
+        "38778": "AB889X",
+        "38780": "AB889X",
+        "38781": "AB889X",
+        "38782": "AB889X",
+        "38801": "AB889X",
+        "38802": "AB889X",
+        "38803": "AB889X",
+        "38804": "AB889X",
+        "38820": "AB889X",
+        "38821": "AB889X",
+        "38824": "AB889X",
+        "38825": "AB889X",
+        "38826": "AB889X",
+        "38827": "AB889X",
+        "38828": "AB889X",
+        "38829": "AB889X",
+        "38833": "AB889X",
+        "38834": "AB889X",
+        "38835": "AB889X",
+        "38838": "AB889X",
+        "38839": "AB889X",
+        "38841": "AB889X",
+        "38843": "AB889X",
+        "38844": "AB889X",
+        "38846": "AB889X",
+        "38847": "AB889X",
+        "38848": "AB889X",
+        "38849": "AB889X",
+        "38850": "AB889X",
+        "38851": "AB889X",
+        "38852": "AB889X",
+        "38855": "AB889X",
+        "38856": "AB889X",
+        "38857": "AB889X",
+        "38858": "AB889X",
+        "38859": "AB889X",
+        "38860": "AB889X",
+        "38862": "AB889X",
+        "38863": "AB889X",
+        "38864": "AB889X",
+        "38865": "AB889X",
+        "38866": "AB889X",
+        "38868": "AB889X",
+        "38869": "AB889X",
+        "38870": "AB889X",
+        "38871": "AB889X",
+        "38873": "AB889X",
+        "38874": "AB889X",
+        "38875": "AB889X",
+        "38876": "AB889X",
+        "38877": "AB889X",
+        "38878": "AB889X",
+        "38879": "AB889X",
+        "38880": "AB889X",
+        "38901": "AB889X",
+        "38902": "AB889X",
+        "38913": "AB889X",
+        "38914": "AB889X",
+        "38915": "AB889X",
+        "38916": "AB889X",
+        "38917": "AB889X",
+        "38920": "AB889X",
+        "38921": "AB889X",
+        "38922": "AB889X",
+        "38923": "AB889X",
+        "38924": "AB889X",
+        "38925": "AB889X",
+        "38926": "AB889X",
+        "38927": "AB889X",
+        "38928": "AB889X",
+        "38929": "AB889X",
+        "38930": "AB889X",
+        "38935": "AB889X",
+        "38940": "AB889X",
+        "38941": "AB889X",
+        "38943": "AB889X",
+        "38944": "AB889X",
+        "38945": "AB889X",
+        "38946": "AB889X",
+        "38947": "AB889X",
+        "38948": "AB889X",
+        "38949": "AB889X",
+        "38950": "AB889X",
+        "38951": "AB889X",
+        "38952": "AB889X",
+        "38953": "AB889X",
+        "38954": "AB889X",
+        "38955": "AB889X",
+        "38957": "AB889X",
+        "38958": "AB889X",
+        "38959": "AB889X",
+        "38960": "AB889X",
+        "38961": "AB889X",
+        "38962": "AB889X",
+        "38963": "AB889X",
+        "38964": "AB889X",
+        "38965": "AB889X",
+        "38966": "AB889X",
+        "38967": "AB889X",
+        "39000": "AB889X",
+        "39038": "AB889X",
+        "39039": "AB889X",
+        "39040": "AB889X",
+        "39041": "AB889X",
+        "39042": "AB889X",
+        "39043": "AB889X",
+        "39044": "AB889X",
+        "39045": "AB889X",
+        "39046": "AB889X",
+        "39047": "AB889X",
+        "39051": "AB889X",
+        "39054": "AB889X",
+        "39056": "AB889X",
+        "39057": "AB889X",
+        "39058": "AB889X",
+        "39059": "AB889X",
+        "39060": "AB889X",
+        "39061": "AB889X",
+        "39062": "AB889X",
+        "39063": "AB889X",
+        "39066": "AB889X",
+        "39067": "AB889X",
+        "39069": "AB889X",
+        "39071": "AB889X",
+        "39072": "AB889X",
+        "39073": "AB889X",
+        "39074": "AB889X",
+        "39077": "AB889X",
+        "39078": "AB889X",
+        "39079": "AB889X",
+        "39080": "AB889X",
+        "39081": "AB889X",
+        "39082": "AB889X",
+        "39083": "AB889X",
+        "39086": "AB889X",
+        "39087": "AB889X",
+        "39088": "AB889X",
+        "39090": "AB889X",
+        "39092": "AB889X",
+        "39094": "AB889X",
+        "39095": "AB889X",
+        "39096": "AB889X",
+        "39097": "AB889X",
+        "39098": "AB889X",
+        "39107": "AB889X",
+        "39108": "AB889X",
+        "39109": "AB889X",
+        "39110": "AB889X",
+        "39111": "AB889X",
+        "39113": "AB889X",
+        "39114": "AB889X",
+        "39115": "AB889X",
+        "39116": "AB889X",
+        "39117": "AB889X",
+        "39119": "AB889X",
+        "39120": "AB887X",
+        "39121": "AB887X",
+        "39122": "AB887X",
+        "39130": "AB889X",
+        "39140": "AB889X",
+        "39144": "AB889X",
+        "39145": "AB889X",
+        "39146": "AB889X",
+        "39148": "AB889X",
+        "39149": "AB889X",
+        "39150": "AB889X",
+        "39151": "AB889X",
+        "39152": "AB889X",
+        "39153": "AB889X",
+        "39154": "AB889X",
+        "39156": "AB889X",
+        "39157": "AB889X",
+        "39158": "AB889X",
+        "39159": "AB889X",
+        "39160": "AB889X",
+        "39161": "AB889X",
+        "39162": "AB889X",
+        "39163": "AB889X",
+        "39165": "AB887X",
+        "39166": "AB889X",
+        "39167": "AB889X",
+        "39168": "AB889X",
+        "39169": "AB889X",
+        "39170": "AB889X",
+        "39171": "AB889X",
+        "39173": "AB889X",
+        "39174": "AB889X",
+        "39175": "AB889X",
+        "39176": "AB889X",
+        "39177": "AB889X",
+        "39179": "AB889X",
+        "39180": "AB889X",
+        "39181": "AB889X",
+        "39182": "AB889X",
+        "39183": "AB889X",
+        "39189": "AB889X",
+        "39190": "AB887X",
+        "39191": "AB889X",
+        "39192": "AB889X",
+        "39193": "AB889X",
+        "39194": "AB889X",
+        "39201": "AB889X",
+        "39202": "AB889X",
+        "39203": "AB889X",
+        "39204": "AB889X",
+        "39205": "AB889X",
+        "39206": "AB889X",
+        "39207": "AB889X",
+        "39208": "AB889X",
+        "39209": "AB889X",
+        "39210": "AB889X",
+        "39211": "AB889X",
+        "39212": "AB889X",
+        "39213": "AB889X",
+        "39215": "AB889X",
+        "39216": "AB889X",
+        "39217": "AB889X",
+        "39218": "AB889X",
+        "39225": "AB889X",
+        "39232": "AB889X",
+        "39235": "AB889X",
+        "39236": "AB889X",
+        "39250": "AB889X",
+        "39269": "AB889X",
+        "39271": "AB889X",
+        "39272": "AB889X",
+        "39282": "AB889X",
+        "39283": "AB889X",
+        "39284": "AB889X",
+        "39286": "AB889X",
+        "39288": "AB889X",
+        "39289": "AB889X",
+        "39296": "AB889X",
+        "39298": "AB889X",
+        "39301": "AB889X",
+        "39302": "AB889X",
+        "39303": "AB889X",
+        "39304": "AB889X",
+        "39305": "AB889X",
+        "39307": "AB889X",
+        "39309": "AB889X",
+        "39320": "AB889X",
+        "39322": "AB889X",
+        "39323": "AB889X",
+        "39324": "AB889X",
+        "39325": "AB889X",
+        "39326": "AB889X",
+        "39327": "AB889X",
+        "39328": "AB889X",
+        "39330": "AB889X",
+        "39332": "AB889X",
+        "39335": "AB889X",
+        "39336": "AB889X",
+        "39337": "AB889X",
+        "39338": "AB889X",
+        "39339": "AB889X",
+        "39341": "AB889X",
+        "39342": "AB889X",
+        "39345": "AB889X",
+        "39346": "AB889X",
+        "39347": "AB889X",
+        "39348": "AB889X",
+        "39350": "AB889X",
+        "39351": "AB889X",
+        "39352": "AB889X",
+        "39354": "AB889X",
+        "39355": "AB889X",
+        "39356": "AB889X",
+        "39358": "AB889X",
+        "39359": "AB889X",
+        "39360": "AB889X",
+        "39361": "AB889X",
+        "39362": "AB889X",
+        "39363": "AB889X",
+        "39364": "AB889X",
+        "39365": "AB889X",
+        "39366": "AB889X",
+        "39367": "AB889X",
+        "39391": "AB889X",
+        "39392": "AB889X",
+        "39401": "AB889X",
+        "39402": "AB889X",
+        "39403": "AB889X",
+        "39404": "AB889X",
+        "39406": "AB889X",
+        "39407": "AB889X",
+        "39421": "AB889X",
+        "39422": "AB889X",
+        "39423": "AB889X",
+        "39425": "AB889X",
+        "39426": "AB889X",
+        "39427": "AB889X",
+        "39428": "AB889X",
+        "39429": "AB889X",
+        "39436": "AB889X",
+        "39437": "AB889X",
+        "39439": "AB889X",
+        "39440": "AB889X",
+        "39441": "AB889X",
+        "39442": "AB889X",
+        "39443": "AB889X",
+        "39451": "AB889X",
+        "39452": "AB889X",
+        "39455": "AB889X",
+        "39456": "AB889X",
+        "39457": "AB889X",
+        "39459": "AB889X",
+        "39460": "AB889X",
+        "39461": "AB889X",
+        "39462": "AB889X",
+        "39463": "AB889X",
+        "39464": "AB889X",
+        "39465": "AB889X",
+        "39466": "AB889X",
+        "39470": "AB889X",
+        "39474": "AB889X",
+        "39475": "AB889X",
+        "39476": "AB889X",
+        "39477": "AB889X",
+        "39478": "AB889X",
+        "39479": "AB889X",
+        "39480": "AB889X",
+        "39481": "AB889X",
+        "39482": "AB889X",
+        "39483": "AB889X",
+        "39501": "AB889X",
+        "39502": "AB889X",
+        "39503": "AB889X",
+        "39505": "AB889X",
+        "39506": "AB889X",
+        "39507": "AB889X",
+        "39520": "AB889X",
+        "39521": "AB889X",
+        "39522": "AB889X",
+        "39525": "AB889X",
+        "39529": "AB889X",
+        "39530": "AB889X",
+        "39531": "AB889X",
+        "39532": "AB889X",
+        "39533": "AB889X",
+        "39534": "AB889X",
+        "39535": "AB889X",
+        "39540": "AB889X",
+        "39552": "AB889X",
+        "39553": "AB889X",
+        "39555": "AB889X",
+        "39556": "AB889X",
+        "39558": "AB889X",
+        "39560": "AB889X",
+        "39561": "AB889X",
+        "39562": "AB889X",
+        "39563": "AB889X",
+        "39564": "AB889X",
+        "39565": "AB889X",
+        "39566": "AB889X",
+        "39567": "AB889X",
+        "39568": "AB889X",
+        "39569": "AB889X",
+        "39571": "AB889X",
+        "39572": "AB889X",
+        "39573": "AB889X",
+        "39574": "AB889X",
+        "39576": "AB889X",
+        "39577": "AB889X",
+        "39581": "AB889X",
+        "39595": "AB889X",
+        "39601": "AB889X",
+        "39602": "AB889X",
+        "39603": "AB889X",
+        "39626": "AB889X",
+        "39629": "AB889X",
+        "39630": "AB889X",
+        "39631": "AB889X",
+        "39632": "AB889X",
+        "39633": "AB889X",
+        "39635": "AB889X",
+        "39638": "AB889X",
+        "39641": "AB889X",
+        "39643": "AB889X",
+        "39645": "AB889X",
+        "39647": "AB889X",
+        "39648": "AB889X",
+        "39649": "AB889X",
+        "39652": "AB889X",
+        "39653": "AB889X",
+        "39654": "AB889X",
+        "39656": "AB889X",
+        "39657": "AB889X",
+        "39661": "AB889X",
+        "39662": "AB889X",
+        "39663": "AB889X",
+        "39664": "AB889X",
+        "39665": "AB889X",
+        "39666": "AB889X",
+        "39667": "AB889X",
+        "39668": "AB889X",
+        "39669": "AB889X",
+        "39701": "AB889X",
+        "39702": "AB889X",
+        "39703": "AB889X",
+        "39704": "AB889X",
+        "39705": "AB889X",
+        "39710": "AB889X",
+        "39730": "AB889X",
+        "39733": "AB889X",
+        "39735": "AB889X",
+        "39736": "AB889X",
+        "39737": "AB889X",
+        "39739": "AB889X",
+        "39740": "AB889X",
+        "39741": "AB889X",
+        "39743": "AB889X",
+        "39744": "AB889X",
+        "39745": "AB889X",
+        "39746": "AB889X",
+        "39747": "AB889X",
+        "39750": "AB889X",
+        "39751": "AB889X",
+        "39752": "AB889X",
+        "39753": "AB889X",
+        "39754": "AB889X",
+        "39755": "AB889X",
+        "39756": "AB889X",
+        "39759": "AB889X",
+        "39760": "AB889X",
+        "39762": "AB889X",
+        "39766": "AB889X",
+        "39767": "AB889X",
+        "39769": "AB889X",
+        "39771": "AB889X",
+        "39772": "AB889X",
+        "39773": "AB889X",
+        "39776": "AB889X",
+        "39813": "AB891X",
+        "39815": "AB891X",
+        "39817": "AB891X",
+        "39818": "AB891X",
+        "39819": "AB891X",
+        "39823": "AB890X",
+        "39824": "AB890X",
+        "39825": "AB891X",
+        "39826": "AB891X",
+        "39827": "AB891X",
+        "39828": "AB891X",
+        "39829": "AB891X",
+        "39832": "AB890X",
+        "39834": "AB891X",
+        "39836": "AB890X",
+        "39837": "AB891X",
+        "39840": "AB890X",
+        "39841": "AB890X",
+        "39842": "AB891X",
+        "39845": "AB891X",
+        "39846": "AB891X",
+        "39851": "AB890X",
+        "39852": "AB891X",
+        "39854": "AB890X",
+        "39859": "AB891X",
+        "39861": "AB890X",
+        "39862": "AB891X",
+        "39866": "AB891X",
+        "39867": "AB890X",
+        "39870": "AB891X",
+        "39877": "AB891X",
+        "39885": "AB891X",
+        "39886": "AB890X",
+        "39897": "AB891X",
+        "39901": "AB889X",
+        "40003": "AB888X",
+        "40004": "AB888X",
+        "40006": "AB888X",
+        "40007": "AB888X",
+        "40008": "AB888X",
+        "40009": "AB888X",
+        "40010": "AB888X",
+        "40011": "AB888X",
+        "40012": "AB888X",
+        "40013": "AB888X",
+        "40014": "AB888X",
+        "40018": "AB888X",
+        "40019": "AB888X",
+        "40020": "AB888X",
+        "40022": "AB888X",
+        "40023": "AB888X",
+        "40025": "AB888X",
+        "40026": "AB888X",
+        "40027": "AB888X",
+        "40031": "AB888X",
+        "40032": "AB888X",
+        "40033": "AB888X",
+        "40036": "AB888X",
+        "40037": "AB888X",
+        "40040": "AB888X",
+        "40041": "AB888X",
+        "40045": "AB888X",
+        "40046": "AB888X",
+        "40047": "AB888X",
+        "40048": "AB888X",
+        "40049": "AB888X",
+        "40050": "AB888X",
+        "40051": "AB888X",
+        "40052": "AB888X",
+        "40055": "AB888X",
+        "40056": "AB888X",
+        "40057": "AB888X",
+        "40058": "AB888X",
+        "40059": "AB888X",
+        "40060": "AB888X",
+        "40061": "AB888X",
+        "40062": "AB888X",
+        "40063": "AB888X",
+        "40065": "AB888X",
+        "40066": "AB888X",
+        "40067": "AB888X",
+        "40068": "AB888X",
+        "40069": "AB888X",
+        "40070": "AB888X",
+        "40071": "AB888X",
+        "40075": "AB888X",
+        "40076": "AB888X",
+        "40077": "AB888X",
+        "40078": "AB888X",
+        "40104": "AB888X",
+        "40107": "AB888X",
+        "40108": "AB888X",
+        "40109": "AB888X",
+        "40110": "AB888X",
+        "40111": "AB888X",
+        "40115": "AB888X",
+        "40117": "AB888X",
+        "40118": "AB888X",
+        "40119": "AB888X",
+        "40121": "AB888X",
+        "40129": "AB888X",
+        "40140": "AB888X",
+        "40142": "AB888X",
+        "40143": "AB888X",
+        "40144": "AB888X",
+        "40145": "AB888X",
+        "40146": "AB888X",
+        "40150": "AB888X",
+        "40152": "AB888X",
+        "40153": "AB888X",
+        "40155": "AB888X",
+        "40157": "AB888X",
+        "40159": "AB888X",
+        "40160": "AB888X",
+        "40161": "AB888X",
+        "40162": "AB888X",
+        "40165": "AB888X",
+        "40170": "AB888X",
+        "40171": "AB888X",
+        "40175": "AB888X",
+        "40176": "AB888X",
+        "40177": "AB888X",
+        "40178": "AB888X",
+        "40201": "AB888X",
+        "40202": "AB888X",
+        "40203": "AB888X",
+        "40204": "AB888X",
+        "40205": "AB888X",
+        "40206": "AB888X",
+        "40207": "AB888X",
+        "40208": "AB888X",
+        "40209": "AB888X",
+        "40210": "AB888X",
+        "40211": "AB888X",
+        "40212": "AB888X",
+        "40213": "AB888X",
+        "40214": "AB888X",
+        "40215": "AB888X",
+        "40216": "AB888X",
+        "40217": "AB888X",
+        "40218": "AB888X",
+        "40219": "AB888X",
+        "40220": "AB888X",
+        "40221": "AB888X",
+        "40222": "AB888X",
+        "40223": "AB888X",
+        "40224": "AB888X",
+        "40225": "AB888X",
+        "40228": "AB888X",
+        "40229": "AB888X",
+        "40231": "AB888X",
+        "40232": "AB888X",
+        "40233": "AB888X",
+        "40241": "AB888X",
+        "40242": "AB888X",
+        "40243": "AB888X",
+        "40245": "AB888X",
+        "40250": "AB888X",
+        "40251": "AB888X",
+        "40252": "AB888X",
+        "40253": "AB888X",
+        "40255": "AB888X",
+        "40256": "AB888X",
+        "40257": "AB888X",
+        "40258": "AB888X",
+        "40259": "AB888X",
+        "40261": "AB888X",
+        "40266": "AB888X",
+        "40268": "AB888X",
+        "40269": "AB888X",
+        "40270": "AB888X",
+        "40272": "AB888X",
+        "40280": "AB888X",
+        "40281": "AB888X",
+        "40282": "AB888X",
+        "40283": "AB888X",
+        "40285": "AB888X",
+        "40287": "AB888X",
+        "40289": "AB888X",
+        "40290": "AB888X",
+        "40291": "AB888X",
+        "40292": "AB888X",
+        "40293": "AB888X",
+        "40294": "AB888X",
+        "40295": "AB888X",
+        "40296": "AB888X",
+        "40297": "AB888X",
+        "40298": "AB888X",
+        "40299": "AB888X",
+        "40310": "AB888X",
+        "40311": "AB888X",
+        "40312": "AB888X",
+        "40313": "AB888X",
+        "40316": "AB888X",
+        "40317": "AB888X",
+        "40319": "AB888X",
+        "40322": "AB888X",
+        "40324": "AB888X",
+        "40328": "AB888X",
+        "40330": "AB888X",
+        "40334": "AB888X",
+        "40336": "AB888X",
+        "40337": "AB888X",
+        "40339": "AB888X",
+        "40340": "AB888X",
+        "40342": "AB888X",
+        "40346": "AB888X",
+        "40347": "AB888X",
+        "40348": "AB888X",
+        "40350": "AB888X",
+        "40351": "AB888X",
+        "40353": "AB888X",
+        "40355": "AB890X",
+        "40356": "AB888X",
+        "40357": "AB888X",
+        "40358": "AB888X",
+        "40359": "AB890X",
+        "40360": "AB888X",
+        "40361": "AB888X",
+        "40362": "AB888X",
+        "40363": "AB890X",
+        "40366": "AB888X",
+        "40370": "AB888X",
+        "40371": "AB888X",
+        "40372": "AB888X",
+        "40374": "AB888X",
+        "40376": "AB888X",
+        "40379": "AB888X",
+        "40380": "AB888X",
+        "40383": "AB888X",
+        "40384": "AB888X",
+        "40385": "AB888X",
+        "40386": "AB888X",
+        "40387": "AB888X",
+        "40390": "AB888X",
+        "40391": "AB888X",
+        "40392": "AB888X",
+        "40400": "AB888X",
+        "40402": "AB888X",
+        "40403": "AB888X",
+        "40404": "AB888X",
+        "40405": "AB888X",
+        "40409": "AB888X",
+        "40410": "AB888X",
+        "40419": "AB888X",
+        "40422": "AB888X",
+        "40423": "AB888X",
+        "40427": "AB888X",
+        "40434": "AB888X",
+        "40437": "AB888X",
+        "40440": "AB888X",
+        "40442": "AB888X",
+        "40444": "AB888X",
+        "40445": "AB888X",
+        "40446": "AB888X",
+        "40447": "AB888X",
+        "40448": "AB888X",
+        "40452": "AB888X",
+        "40456": "AB888X",
+        "40460": "AB888X",
+        "40461": "AB888X",
+        "40464": "AB888X",
+        "40468": "AB888X",
+        "40472": "AB888X",
+        "40473": "AB888X",
+        "40475": "AB888X",
+        "40476": "AB888X",
+        "40481": "AB888X",
+        "40484": "AB888X",
+        "40486": "AB888X",
+        "40488": "AB888X",
+        "40489": "AB888X",
+        "40492": "AB888X",
+        "40495": "AB888X",
+        "40501": "AB888X",
+        "40502": "AB888X",
+        "40503": "AB888X",
+        "40504": "AB888X",
+        "40505": "AB888X",
+        "40506": "AB888X",
+        "40507": "AB888X",
+        "40508": "AB888X",
+        "40509": "AB888X",
+        "40510": "AB888X",
+        "40511": "AB888X",
+        "40512": "AB888X",
+        "40513": "AB888X",
+        "40514": "AB888X",
+        "40515": "AB888X",
+        "40516": "AB888X",
+        "40517": "AB888X",
+        "40522": "AB888X",
+        "40523": "AB888X",
+        "40524": "AB888X",
+        "40526": "AB888X",
+        "40533": "AB888X",
+        "40536": "AB888X",
+        "40544": "AB888X",
+        "40546": "AB888X",
+        "40550": "AB888X",
+        "40555": "AB888X",
+        "40574": "AB888X",
+        "40575": "AB888X",
+        "40576": "AB888X",
+        "40577": "AB888X",
+        "40578": "AB888X",
+        "40579": "AB888X",
+        "40580": "AB888X",
+        "40581": "AB888X",
+        "40582": "AB888X",
+        "40583": "AB888X",
+        "40585": "AB888X",
+        "40588": "AB888X",
+        "40591": "AB888X",
+        "40598": "AB888X",
+        "40601": "AB888X",
+        "40602": "AB888X",
+        "40603": "AB888X",
+        "40604": "AB888X",
+        "40618": "AB888X",
+        "40619": "AB888X",
+        "40620": "AB888X",
+        "40621": "AB888X",
+        "40622": "AB888X",
+        "40701": "AB888X",
+        "40702": "AB888X",
+        "40724": "AB888X",
+        "40729": "AB888X",
+        "40730": "AB888X",
+        "40734": "AB888X",
+        "40737": "AB888X",
+        "40740": "AB888X",
+        "40741": "AB888X",
+        "40742": "AB888X",
+        "40743": "AB888X",
+        "40744": "AB888X",
+        "40745": "AB888X",
+        "40754": "AB888X",
+        "40755": "AB888X",
+        "40759": "AB888X",
+        "40763": "AB888X",
+        "40769": "AB888X",
+        "40771": "AB888X",
+        "40801": "AB888X",
+        "40803": "AB888X",
+        "40806": "AB888X",
+        "40807": "AB888X",
+        "40808": "AB888X",
+        "40810": "AB888X",
+        "40813": "AB888X",
+        "40815": "AB888X",
+        "40816": "AB888X",
+        "40818": "AB888X",
+        "40819": "AB888X",
+        "40820": "AB888X",
+        "40823": "AB888X",
+        "40824": "AB888X",
+        "40826": "AB888X",
+        "40827": "AB888X",
+        "40828": "AB888X",
+        "40829": "AB888X",
+        "40830": "AB888X",
+        "40831": "AB888X",
+        "40840": "AB888X",
+        "40843": "AB888X",
+        "40844": "AB888X",
+        "40845": "AB888X",
+        "40847": "AB888X",
+        "40849": "AB888X",
+        "40854": "AB888X",
+        "40855": "AB888X",
+        "40856": "AB888X",
+        "40858": "AB888X",
+        "40862": "AB888X",
+        "40863": "AB888X",
+        "40865": "AB888X",
+        "40868": "AB888X",
+        "40870": "AB888X",
+        "40873": "AB888X",
+        "40874": "AB888X",
+        "40902": "AB888X",
+        "40903": "AB888X",
+        "40906": "AB888X",
+        "40913": "AB888X",
+        "40914": "AB888X",
+        "40915": "AB888X",
+        "40921": "AB888X",
+        "40923": "AB888X",
+        "40927": "AB888X",
+        "40930": "AB888X",
+        "40931": "AB888X",
+        "40932": "AB888X",
+        "40935": "AB888X",
+        "40939": "AB888X",
+        "40940": "AB888X",
+        "40941": "AB888X",
+        "40943": "AB888X",
+        "40944": "AB888X",
+        "40946": "AB888X",
+        "40949": "AB888X",
+        "40951": "AB888X",
+        "40953": "AB888X",
+        "40955": "AB888X",
+        "40958": "AB888X",
+        "40962": "AB888X",
+        "40964": "AB888X",
+        "40965": "AB888X",
+        "40972": "AB888X",
+        "40977": "AB888X",
+        "40979": "AB888X",
+        "40981": "AB888X",
+        "40982": "AB888X",
+        "40983": "AB888X",
+        "40988": "AB888X",
+        "40995": "AB888X",
+        "40997": "AB888X",
+        "40999": "AB888X",
+        "41001": "AB890X",
+        "41002": "AB890X",
+        "41003": "AB888X",
+        "41004": "AB890X",
+        "41005": "AB890X",
+        "41006": "AB888X",
+        "41007": "AB888X",
+        "41008": "AB888X",
+        "41010": "AB890X",
+        "41011": "AB890X",
+        "41012": "AB890X",
+        "41014": "AB890X",
+        "41015": "AB890X",
+        "41016": "AB890X",
+        "41017": "AB890X",
+        "41018": "AB890X",
+        "41019": "AB890X",
+        "41022": "AB890X",
+        "41030": "AB890X",
+        "41031": "AB888X",
+        "41033": "AB890X",
+        "41034": "AB890X",
+        "41035": "AB890X",
+        "41037": "AB890X",
+        "41039": "AB890X",
+        "41040": "AB890X",
+        "41041": "AB890X",
+        "41042": "AB890X",
+        "41043": "AB890X",
+        "41044": "AB890X",
+        "41045": "AB888X",
+        "41046": "AB890X",
+        "41048": "AB890X",
+        "41049": "AB890X",
+        "41051": "AB890X",
+        "41052": "AB890X",
+        "41053": "AB890X",
+        "41054": "AB890X",
+        "41055": "AB890X",
+        "41056": "AB890X",
+        "41059": "AB888X",
+        "41061": "AB888X",
+        "41062": "AB890X",
+        "41063": "AB890X",
+        "41064": "AB890X",
+        "41065": "AB890X",
+        "41071": "AB888X",
+        "41072": "AB888X",
+        "41073": "AB888X",
+        "41074": "AB888X",
+        "41075": "AB888X",
+        "41076": "AB888X",
+        "41080": "AB890X",
+        "41081": "AB890X",
+        "41083": "AB888X",
+        "41085": "AB888X",
+        "41086": "AB890X",
+        "41091": "AB890X",
+        "41092": "AB890X",
+        "41093": "AB890X",
+        "41094": "AB890X",
+        "41095": "AB890X",
+        "41096": "AB890X",
+        "41097": "AB890X",
+        "41098": "AB888X",
+        "41099": "AB888X",
+        "41101": "AB900X",
+        "41102": "AB900X",
+        "41105": "AB900X",
+        "41114": "AB900X",
+        "41121": "AB900X",
+        "41124": "AB900X",
+        "41128": "AB888X",
+        "41129": "AB900X",
+        "41132": "AB888X",
+        "41135": "AB890X",
+        "41139": "AB900X",
+        "41141": "AB900X",
+        "41142": "AB888X",
+        "41143": "AB900X",
+        "41144": "AB900X",
+        "41146": "AB888X",
+        "41149": "AB900X",
+        "41159": "AB900X",
+        "41160": "AB900X",
+        "41164": "AB900X",
+        "41166": "AB890X",
+        "41168": "AB900X",
+        "41169": "AB900X",
+        "41171": "AB900X",
+        "41173": "AB900X",
+        "41174": "AB900X",
+        "41175": "AB900X",
+        "41179": "AB890X",
+        "41180": "AB900X",
+        "41181": "AB900X",
+        "41183": "AB900X",
+        "41189": "AB890X",
+        "41201": "AB900X",
+        "41203": "AB900X",
+        "41204": "AB900X",
+        "41214": "AB900X",
+        "41216": "AB900X",
+        "41219": "AB900X",
+        "41222": "AB900X",
+        "41224": "AB900X",
+        "41226": "AB900X",
+        "41230": "AB900X",
+        "41231": "AB900X",
+        "41232": "AB900X",
+        "41234": "AB900X",
+        "41235": "AB900X",
+        "41238": "AB900X",
+        "41240": "AB900X",
+        "41250": "AB900X",
+        "41254": "AB900X",
+        "41255": "AB900X",
+        "41256": "AB900X",
+        "41257": "AB900X",
+        "41260": "AB900X",
+        "41262": "AB900X",
+        "41263": "AB900X",
+        "41264": "AB900X",
+        "41265": "AB900X",
+        "41267": "AB900X",
+        "41268": "AB900X",
+        "41271": "AB900X",
+        "41274": "AB900X",
+        "41301": "AB888X",
+        "41307": "AB888X",
+        "41310": "AB888X",
+        "41311": "AB888X",
+        "41313": "AB888X",
+        "41314": "AB888X",
+        "41317": "AB888X",
+        "41332": "AB888X",
+        "41333": "AB888X",
+        "41338": "AB888X",
+        "41339": "AB888X",
+        "41347": "AB888X",
+        "41348": "AB888X",
+        "41351": "AB888X",
+        "41352": "AB900X",
+        "41360": "AB888X",
+        "41362": "AB888X",
+        "41364": "AB888X",
+        "41365": "AB888X",
+        "41366": "AB888X",
+        "41367": "AB888X",
+        "41368": "AB888X",
+        "41385": "AB888X",
+        "41386": "AB888X",
+        "41390": "AB888X",
+        "41397": "AB888X",
+        "41408": "AB900X",
+        "41413": "AB900X",
+        "41421": "AB900X",
+        "41425": "AB900X",
+        "41426": "AB900X",
+        "41433": "AB900X",
+        "41451": "AB900X",
+        "41459": "AB900X",
+        "41464": "AB900X",
+        "41465": "AB900X",
+        "41472": "AB900X",
+        "41477": "AB900X",
+        "41501": "AB900X",
+        "41502": "AB900X",
+        "41503": "AB900X",
+        "41512": "AB900X",
+        "41513": "AB900X",
+        "41514": "AB900X",
+        "41517": "AB900X",
+        "41519": "AB900X",
+        "41520": "AB900X",
+        "41522": "AB900X",
+        "41524": "AB900X",
+        "41526": "AB900X",
+        "41527": "AB900X",
+        "41528": "AB900X",
+        "41531": "AB900X",
+        "41534": "AB900X",
+        "41535": "AB900X",
+        "41537": "AB888X",
+        "41538": "AB900X",
+        "41539": "AB900X",
+        "41540": "AB900X",
+        "41542": "AB900X",
+        "41543": "AB900X",
+        "41544": "AB900X",
+        "41547": "AB900X",
+        "41548": "AB900X",
+        "41549": "AB900X",
+        "41553": "AB900X",
+        "41554": "AB900X",
+        "41555": "AB900X",
+        "41557": "AB900X",
+        "41558": "AB900X",
+        "41559": "AB900X",
+        "41560": "AB900X",
+        "41561": "AB900X",
+        "41562": "AB900X",
+        "41563": "AB900X",
+        "41564": "AB900X",
+        "41566": "AB900X",
+        "41567": "AB900X",
+        "41568": "AB900X",
+        "41571": "AB900X",
+        "41572": "AB900X",
+        "41601": "AB900X",
+        "41602": "AB900X",
+        "41603": "AB900X",
+        "41604": "AB900X",
+        "41605": "AB900X",
+        "41606": "AB900X",
+        "41607": "AB900X",
+        "41612": "AB900X",
+        "41615": "AB900X",
+        "41616": "AB900X",
+        "41619": "AB900X",
+        "41621": "AB900X",
+        "41622": "AB900X",
+        "41630": "AB900X",
+        "41631": "AB900X",
+        "41632": "AB900X",
+        "41635": "AB900X",
+        "41636": "AB900X",
+        "41640": "AB900X",
+        "41642": "AB900X",
+        "41643": "AB900X",
+        "41645": "AB900X",
+        "41647": "AB900X",
+        "41649": "AB900X",
+        "41650": "AB900X",
+        "41651": "AB900X",
+        "41653": "AB900X",
+        "41655": "AB900X",
+        "41659": "AB900X",
+        "41660": "AB900X",
+        "41663": "AB900X",
+        "41666": "AB900X",
+        "41667": "AB900X",
+        "41669": "AB900X",
+        "41695": "AB900X",
+        "41701": "AB888X",
+        "41702": "AB888X",
+        "41712": "AB888X",
+        "41713": "AB888X",
+        "41714": "AB888X",
+        "41719": "AB888X",
+        "41721": "AB888X",
+        "41722": "AB888X",
+        "41723": "AB888X",
+        "41725": "AB900X",
+        "41727": "AB888X",
+        "41729": "AB888X",
+        "41731": "AB888X",
+        "41735": "AB888X",
+        "41736": "AB888X",
+        "41739": "AB888X",
+        "41740": "AB900X",
+        "41743": "AB900X",
+        "41745": "AB888X",
+        "41746": "AB888X",
+        "41747": "AB888X",
+        "41749": "AB888X",
+        "41751": "AB888X",
+        "41754": "AB888X",
+        "41759": "AB900X",
+        "41760": "AB888X",
+        "41762": "AB888X",
+        "41763": "AB888X",
+        "41764": "AB888X",
+        "41766": "AB888X",
+        "41772": "AB900X",
+        "41773": "AB888X",
+        "41774": "AB888X",
+        "41775": "AB888X",
+        "41776": "AB888X",
+        "41777": "AB888X",
+        "41778": "AB888X",
+        "41804": "AB888X",
+        "41810": "AB888X",
+        "41812": "AB888X",
+        "41815": "AB888X",
+        "41817": "AB900X",
+        "41819": "AB888X",
+        "41821": "AB888X",
+        "41822": "AB900X",
+        "41824": "AB888X",
+        "41825": "AB888X",
+        "41826": "AB888X",
+        "41828": "AB900X",
+        "41831": "AB900X",
+        "41832": "AB888X",
+        "41833": "AB888X",
+        "41834": "AB900X",
+        "41835": "AB888X",
+        "41836": "AB900X",
+        "41837": "AB888X",
+        "41838": "AB888X",
+        "41839": "AB900X",
+        "41840": "AB888X",
+        "41843": "AB900X",
+        "41844": "AB900X",
+        "41845": "AB888X",
+        "41847": "AB900X",
+        "41848": "AB888X",
+        "41849": "AB888X",
+        "41855": "AB888X",
+        "41858": "AB888X",
+        "41859": "AB900X",
+        "41861": "AB900X",
+        "41862": "AB900X",
+        "42001": "AB888X",
+        "42002": "AB888X",
+        "42003": "AB888X",
+        "42020": "AB888X",
+        "42021": "AB888X",
+        "42022": "AB888X",
+        "42023": "AB888X",
+        "42024": "AB888X",
+        "42025": "AB888X",
+        "42027": "AB888X",
+        "42028": "AB888X",
+        "42029": "AB888X",
+        "42031": "AB888X",
+        "42032": "AB888X",
+        "42033": "AB888X",
+        "42035": "AB888X",
+        "42036": "AB888X",
+        "42037": "AB888X",
+        "42038": "AB888X",
+        "42039": "AB888X",
+        "42040": "AB888X",
+        "42041": "AB888X",
+        "42044": "AB888X",
+        "42045": "AB888X",
+        "42047": "AB888X",
+        "42048": "AB888X",
+        "42049": "AB888X",
+        "42050": "AB888X",
+        "42051": "AB888X",
+        "42053": "AB888X",
+        "42054": "AB888X",
+        "42055": "AB888X",
+        "42056": "AB888X",
+        "42058": "AB888X",
+        "42060": "AB888X",
+        "42061": "AB888X",
+        "42063": "AB888X",
+        "42064": "AB888X",
+        "42066": "AB888X",
+        "42069": "AB888X",
+        "42070": "AB888X",
+        "42071": "AB888X",
+        "42076": "AB888X",
+        "42078": "AB888X",
+        "42079": "AB888X",
+        "42081": "AB888X",
+        "42082": "AB888X",
+        "42083": "AB888X",
+        "42084": "AB888X",
+        "42085": "AB888X",
+        "42086": "AB888X",
+        "42087": "AB888X",
+        "42088": "AB888X",
+        "42101": "AB887X",
+        "42102": "AB887X",
+        "42103": "AB887X",
+        "42104": "AB887X",
+        "42120": "AB887X",
+        "42122": "AB887X",
+        "42123": "AB887X",
+        "42124": "AB887X",
+        "42127": "AB887X",
+        "42128": "AB887X",
+        "42129": "AB887X",
+        "42130": "AB887X",
+        "42131": "AB887X",
+        "42133": "AB887X",
+        "42134": "AB887X",
+        "42135": "AB887X",
+        "42140": "AB887X",
+        "42141": "AB887X",
+        "42142": "AB887X",
+        "42151": "AB887X",
+        "42152": "AB887X",
+        "42153": "AB887X",
+        "42154": "AB887X",
+        "42156": "AB887X",
+        "42157": "AB887X",
+        "42159": "AB887X",
+        "42160": "AB887X",
+        "42163": "AB887X",
+        "42164": "AB887X",
+        "42166": "AB887X",
+        "42167": "AB887X",
+        "42170": "AB887X",
+        "42171": "AB887X",
+        "42201": "AB887X",
+        "42202": "AB887X",
+        "42204": "AB887X",
+        "42206": "AB887X",
+        "42207": "AB887X",
+        "42210": "AB887X",
+        "42211": "AB887X",
+        "42214": "AB887X",
+        "42215": "AB887X",
+        "42216": "AB887X",
+        "42217": "AB887X",
+        "42219": "AB887X",
+        "42220": "AB887X",
+        "42221": "AB887X",
+        "42223": "AB887X",
+        "42232": "AB887X",
+        "42234": "AB887X",
+        "42236": "AB887X",
+        "42240": "AB887X",
+        "42241": "AB887X",
+        "42252": "AB887X",
+        "42254": "AB887X",
+        "42256": "AB887X",
+        "42259": "AB887X",
+        "42261": "AB887X",
+        "42262": "AB887X",
+        "42265": "AB887X",
+        "42266": "AB887X",
+        "42273": "AB887X",
+        "42274": "AB887X",
+        "42275": "AB887X",
+        "42276": "AB887X",
+        "42280": "AB887X",
+        "42283": "AB887X",
+        "42285": "AB887X",
+        "42286": "AB887X",
+        "42287": "AB887X",
+        "42288": "AB887X",
+        "42301": "AB888X",
+        "42302": "AB888X",
+        "42303": "AB888X",
+        "42304": "AB888X",
+        "42320": "AB888X",
+        "42321": "AB888X",
+        "42322": "AB888X",
+        "42323": "AB888X",
+        "42324": "AB888X",
+        "42325": "AB888X",
+        "42326": "AB888X",
+        "42327": "AB888X",
+        "42328": "AB888X",
+        "42330": "AB888X",
+        "42332": "AB888X",
+        "42333": "AB888X",
+        "42334": "AB888X",
+        "42336": "AB888X",
+        "42337": "AB888X",
+        "42338": "AB888X",
+        "42339": "AB888X",
+        "42340": "AB888X",
+        "42343": "AB888X",
+        "42344": "AB888X",
+        "42345": "AB888X",
+        "42347": "AB888X",
+        "42348": "AB888X",
+        "42349": "AB888X",
+        "42350": "AB888X",
+        "42351": "AB888X",
+        "42352": "AB888X",
+        "42354": "AB888X",
+        "42355": "AB888X",
+        "42356": "AB888X",
+        "42358": "AB888X",
+        "42361": "AB888X",
+        "42364": "AB888X",
+        "42365": "AB888X",
+        "42366": "AB888X",
+        "42367": "AB888X",
+        "42368": "AB888X",
+        "42369": "AB888X",
+        "42370": "AB888X",
+        "42371": "AB888X",
+        "42372": "AB888X",
+        "42374": "AB888X",
+        "42375": "AB888X",
+        "42376": "AB888X",
+        "42377": "AB888X",
+        "42378": "AB888X",
+        "42402": "AB888X",
+        "42403": "AB888X",
+        "42404": "AB888X",
+        "42406": "AB888X",
+        "42408": "AB888X",
+        "42409": "AB888X",
+        "42410": "AB888X",
+        "42411": "AB888X",
+        "42413": "AB888X",
+        "42419": "AB888X",
+        "42420": "AB888X",
+        "42431": "AB888X",
+        "42436": "AB888X",
+        "42437": "AB888X",
+        "42440": "AB888X",
+        "42441": "AB888X",
+        "42442": "AB888X",
+        "42444": "AB888X",
+        "42445": "AB888X",
+        "42450": "AB888X",
+        "42451": "AB888X",
+        "42452": "AB888X",
+        "42453": "AB888X",
+        "42455": "AB888X",
+        "42456": "AB888X",
+        "42457": "AB888X",
+        "42458": "AB888X",
+        "42459": "AB888X",
+        "42460": "AB888X",
+        "42461": "AB888X",
+        "42462": "AB888X",
+        "42463": "AB888X",
+        "42464": "AB888X",
+        "42501": "AB888X",
+        "42502": "AB888X",
+        "42503": "AB888X",
+        "42516": "AB888X",
+        "42518": "AB888X",
+        "42519": "AB888X",
+        "42528": "AB888X",
+        "42533": "AB888X",
+        "42539": "AB888X",
+        "42541": "AB888X",
+        "42544": "AB888X",
+        "42553": "AB888X",
+        "42558": "AB888X",
+        "42564": "AB888X",
+        "42565": "AB888X",
+        "42566": "AB888X",
+        "42567": "AB888X",
+        "42602": "AB888X",
+        "42603": "AB888X",
+        "42629": "AB888X",
+        "42631": "AB888X",
+        "42633": "AB888X",
+        "42634": "AB888X",
+        "42635": "AB888X",
+        "42638": "AB888X",
+        "42642": "AB888X",
+        "42647": "AB888X",
+        "42649": "AB888X",
+        "42653": "AB888X",
+        "42701": "AB888X",
+        "42702": "AB888X",
+        "42712": "AB888X",
+        "42713": "AB887X",
+        "42715": "AB888X",
+        "42716": "AB888X",
+        "42717": "AB887X",
+        "42718": "AB888X",
+        "42719": "AB888X",
+        "42720": "AB888X",
+        "42721": "AB888X",
+        "42722": "AB887X",
+        "42724": "AB888X",
+        "42726": "AB888X",
+        "42728": "AB888X",
+        "42729": "AB887X",
+        "42731": "AB887X",
+        "42732": "AB888X",
+        "42733": "AB888X",
+        "42740": "AB888X",
+        "42741": "AB888X",
+        "42742": "AB888X",
+        "42743": "AB888X",
+        "42746": "AB887X",
+        "42748": "AB888X",
+        "42749": "AB887X",
+        "42753": "AB888X",
+        "42754": "AB888X",
+        "42755": "AB888X",
+        "42757": "AB888X",
+        "42758": "AB888X",
+        "42759": "AB887X",
+        "42762": "AB888X",
+        "42764": "AB888X",
+        "42765": "AB887X",
+        "42776": "AB888X",
+        "42782": "AB888X",
+        "42784": "AB888X",
+        "42788": "AB888X",
+        "43000": "AB890X",
+        "43001": "AB890X",
+        "43002": "AB890X",
+        "43003": "AB890X",
+        "43004": "AB890X",
+        "43005": "AB890X",
+        "43006": "AB890X",
+        "43007": "AB890X",
+        "43008": "AB890X",
+        "43009": "AB890X",
+        "43010": "AB890X",
+        "43011": "AB890X",
+        "43013": "AB890X",
+        "43014": "AB890X",
+        "43015": "AB890X",
+        "43016": "AB890X",
+        "43017": "AB890X",
+        "43018": "AB890X",
+        "43019": "AB890X",
+        "43021": "AB890X",
+        "43022": "AB890X",
+        "43023": "AB890X",
+        "43025": "AB890X",
+        "43026": "AB890X",
+        "43027": "AB890X",
+        "43028": "AB890X",
+        "43029": "AB890X",
+        "43030": "AB890X",
+        "43031": "AB890X",
+        "43032": "AB890X",
+        "43033": "AB890X",
+        "43035": "AB890X",
+        "43036": "AB890X",
+        "43037": "AB890X",
+        "43040": "AB890X",
+        "43041": "AB890X",
+        "43044": "AB890X",
+        "43045": "AB890X",
+        "43046": "AB890X",
+        "43047": "AB890X",
+        "43048": "AB890X",
+        "43050": "AB890X",
+        "43054": "AB890X",
+        "43055": "AB890X",
+        "43056": "AB890X",
+        "43058": "AB889X",
+        "43060": "AB890X",
+        "43061": "AB890X",
+        "43062": "AB890X",
+        "43064": "AB890X",
+        "43065": "AB890X",
+        "43066": "AB890X",
+        "43067": "AB890X",
+        "43068": "AB890X",
+        "43070": "AB890X",
+        "43071": "AB890X",
+        "43072": "AB890X",
+        "43073": "AB890X",
+        "43074": "AB890X",
+        "43076": "AB890X",
+        "43077": "AB890X",
+        "43078": "AB890X",
+        "43080": "AB890X",
+        "43081": "AB890X",
+        "43082": "AB890X",
+        "43083": "AB890X",
+        "43084": "AB890X",
+        "43085": "AB890X",
+        "43086": "AB890X",
+        "43093": "AB890X",
+        "43098": "AB890X",
+        "43101": "AB890X",
+        "43102": "AB890X",
+        "43103": "AB890X",
+        "43105": "AB890X",
+        "43106": "AB890X",
+        "43107": "AB890X",
+        "43109": "AB890X",
+        "43110": "AB890X",
+        "43111": "AB890X",
+        "43112": "AB890X",
+        "43113": "AB890X",
+        "43115": "AB890X",
+        "43116": "AB890X",
+        "43117": "AB890X",
+        "43119": "AB890X",
+        "43123": "AB890X",
+        "43125": "AB890X",
+        "43126": "AB890X",
+        "43127": "AB890X",
+        "43128": "AB890X",
+        "43130": "AB890X",
+        "43135": "AB890X",
+        "43136": "AB890X",
+        "43137": "AB890X",
+        "43138": "AB890X",
+        "43140": "AB890X",
+        "43142": "AB890X",
+        "43143": "AB890X",
+        "43144": "AB890X",
+        "43145": "AB890X",
+        "43146": "AB890X",
+        "43147": "AB890X",
+        "43148": "AB890X",
+        "43149": "AB890X",
+        "43150": "AB890X",
+        "43151": "AB890X",
+        "43152": "AB890X",
+        "43153": "AB890X",
+        "43154": "AB890X",
+        "43155": "AB890X",
+        "43156": "AB890X",
+        "43157": "AB890X",
+        "43158": "AB890X",
+        "43160": "AB890X",
+        "43162": "AB890X",
+        "43163": "AB890X",
+        "43164": "AB890X",
+        "43195": "AB890X",
+        "43196": "AB890X",
+        "43198": "AB890X",
+        "43199": "AB890X",
+        "43201": "AB890X",
+        "43202": "AB890X",
+        "43203": "AB890X",
+        "43204": "AB890X",
+        "43205": "AB890X",
+        "43206": "AB890X",
+        "43207": "AB890X",
+        "43209": "AB890X",
+        "43210": "AB890X",
+        "43211": "AB890X",
+        "43212": "AB890X",
+        "43213": "AB890X",
+        "43214": "AB890X",
+        "43215": "AB890X",
+        "43216": "AB890X",
+        "43217": "AB890X",
+        "43218": "AB890X",
+        "43219": "AB890X",
+        "43220": "AB890X",
+        "43221": "AB890X",
+        "43222": "AB890X",
+        "43223": "AB890X",
+        "43224": "AB890X",
+        "43226": "AB890X",
+        "43227": "AB890X",
+        "43228": "AB890X",
+        "43229": "AB890X",
+        "43230": "AB890X",
+        "43231": "AB890X",
+        "43232": "AB890X",
+        "43234": "AB890X",
+        "43235": "AB890X",
+        "43236": "AB890X",
+        "43240": "AB890X",
+        "43251": "AB890X",
+        "43260": "AB890X",
+        "43265": "AB890X",
+        "43266": "AB890X",
+        "43268": "AB890X",
+        "43270": "AB890X",
+        "43271": "AB890X",
+        "43272": "AB890X",
+        "43279": "AB890X",
+        "43287": "AB890X",
+        "43291": "AB890X",
+        "43299": "AB890X",
+        "43301": "AB890X",
+        "43302": "AB890X",
+        "43306": "AB890X",
+        "43307": "AB890X",
+        "43310": "AB890X",
+        "43311": "AB890X",
+        "43314": "AB890X",
+        "43315": "AB890X",
+        "43316": "AB890X",
+        "43317": "AB890X",
+        "43318": "AB890X",
+        "43319": "AB890X",
+        "43320": "AB890X",
+        "43321": "AB890X",
+        "43322": "AB890X",
+        "43323": "AB890X",
+        "43324": "AB890X",
+        "43325": "AB890X",
+        "43326": "AB890X",
+        "43330": "AB890X",
+        "43331": "AB890X",
+        "43332": "AB890X",
+        "43333": "AB890X",
+        "43334": "AB890X",
+        "43335": "AB890X",
+        "43336": "AB890X",
+        "43337": "AB890X",
+        "43338": "AB890X",
+        "43340": "AB890X",
+        "43341": "AB890X",
+        "43342": "AB890X",
+        "43343": "AB890X",
+        "43344": "AB890X",
+        "43345": "AB890X",
+        "43346": "AB890X",
+        "43347": "AB890X",
+        "43348": "AB890X",
+        "43349": "AB890X",
+        "43350": "AB890X",
+        "43351": "AB890X",
+        "43356": "AB890X",
+        "43357": "AB890X",
+        "43358": "AB890X",
+        "43359": "AB890X",
+        "43360": "AB890X",
+        "43402": "AB890X",
+        "43403": "AB890X",
+        "43406": "AB890X",
+        "43407": "AB890X",
+        "43408": "AB890X",
+        "43410": "AB890X",
+        "43412": "AB890X",
+        "43413": "AB890X",
+        "43414": "AB890X",
+        "43416": "AB890X",
+        "43420": "AB890X",
+        "43430": "AB890X",
+        "43431": "AB890X",
+        "43432": "AB890X",
+        "43433": "AB890X",
+        "43434": "AB890X",
+        "43435": "AB890X",
+        "43436": "AB890X",
+        "43437": "AB890X",
+        "43438": "AB890X",
+        "43439": "AB890X",
+        "43440": "AB890X",
+        "43441": "AB890X",
+        "43442": "AB890X",
+        "43443": "AB890X",
+        "43445": "AB890X",
+        "43446": "AB890X",
+        "43447": "AB890X",
+        "43449": "AB890X",
+        "43450": "AB890X",
+        "43451": "AB890X",
+        "43452": "AB890X",
+        "43456": "AB890X",
+        "43457": "AB890X",
+        "43458": "AB890X",
+        "43460": "AB890X",
+        "43462": "AB890X",
+        "43463": "AB890X",
+        "43464": "AB890X",
+        "43465": "AB890X",
+        "43466": "AB890X",
+        "43467": "AB890X",
+        "43468": "AB890X",
+        "43469": "AB890X",
+        "43501": "AB890X",
+        "43502": "AB890X",
+        "43504": "AB890X",
+        "43505": "AB890X",
+        "43506": "AB890X",
+        "43510": "AB890X",
+        "43511": "AB890X",
+        "43512": "AB890X",
+        "43515": "AB890X",
+        "43516": "AB890X",
+        "43517": "AB890X",
+        "43518": "AB890X",
+        "43519": "AB890X",
+        "43520": "AB890X",
+        "43521": "AB890X",
+        "43522": "AB890X",
+        "43523": "AB890X",
+        "43524": "AB890X",
+        "43525": "AB890X",
+        "43526": "AB890X",
+        "43527": "AB890X",
+        "43528": "AB890X",
+        "43529": "AB890X",
+        "43530": "AB890X",
+        "43531": "AB890X",
+        "43532": "AB890X",
+        "43533": "AB890X",
+        "43534": "AB890X",
+        "43535": "AB890X",
+        "43536": "AB890X",
+        "43537": "AB890X",
+        "43540": "AB890X",
+        "43541": "AB890X",
+        "43542": "AB890X",
+        "43543": "AB890X",
+        "43545": "AB890X",
+        "43547": "AB890X",
+        "43548": "AB890X",
+        "43549": "AB890X",
+        "43550": "AB890X",
+        "43551": "AB890X",
+        "43552": "AB890X",
+        "43553": "AB890X",
+        "43554": "AB890X",
+        "43555": "AB890X",
+        "43556": "AB890X",
+        "43557": "AB890X",
+        "43558": "AB890X",
+        "43560": "AB890X",
+        "43565": "AB890X",
+        "43566": "AB890X",
+        "43567": "AB890X",
+        "43569": "AB890X",
+        "43570": "AB890X",
+        "43571": "AB890X",
+        "43601": "AB890X",
+        "43603": "AB890X",
+        "43604": "AB890X",
+        "43605": "AB889X",
+        "43606": "AB890X",
+        "43607": "AB890X",
+        "43608": "AB890X",
+        "43609": "AB890X",
+        "43610": "AB890X",
+        "43611": "AB890X",
+        "43612": "AB889X",
+        "43613": "AB890X",
+        "43614": "AB890X",
+        "43615": "AB890X",
+        "43616": "AB890X",
+        "43617": "AB890X",
+        "43618": "AB890X",
+        "43619": "AB890X",
+        "43620": "AB890X",
+        "43623": "AB890X",
+        "43635": "AB890X",
+        "43652": "AB890X",
+        "43654": "AB890X",
+        "43656": "AB890X",
+        "43657": "AB890X",
+        "43659": "AB890X",
+        "43660": "AB890X",
+        "43661": "AB890X",
+        "43666": "AB890X",
+        "43667": "AB890X",
+        "43681": "AB890X",
+        "43682": "AB890X",
+        "43697": "AB890X",
+        "43699": "AB890X",
+        "43701": "AB890X",
+        "43702": "AB890X",
+        "43710": "AB900X",
+        "43711": "AB900X",
+        "43713": "AB900X",
+        "43716": "AB900X",
+        "43717": "AB900X",
+        "43718": "AB900X",
+        "43719": "AB900X",
+        "43720": "AB890X",
+        "43721": "AB890X",
+        "43722": "AB890X",
+        "43723": "AB890X",
+        "43724": "AB900X",
+        "43725": "AB890X",
+        "43727": "AB890X",
+        "43728": "AB900X",
+        "43730": "AB890X",
+        "43731": "AB890X",
+        "43732": "AB890X",
+        "43733": "AB890X",
+        "43734": "AB890X",
+        "43735": "AB890X",
+        "43736": "AB900X",
+        "43738": "AB890X",
+        "43739": "AB890X",
+        "43740": "AB890X",
+        "43746": "AB890X",
+        "43747": "AB900X",
+        "43748": "AB890X",
+        "43749": "AB890X",
+        "43750": "AB890X",
+        "43752": "AB900X",
+        "43754": "AB900X",
+        "43755": "AB890X",
+        "43756": "AB900X",
+        "43757": "AB900X",
+        "43758": "AB900X",
+        "43759": "AB900X",
+        "43760": "AB890X",
+        "43761": "AB890X",
+        "43762": "AB890X",
+        "43764": "AB890X",
+        "43766": "AB890X",
+        "43767": "AB890X",
+        "43768": "AB890X",
+        "43771": "AB890X",
+        "43772": "AB890X",
+        "43773": "AB890X",
+        "43777": "AB890X",
+        "43778": "AB890X",
+        "43779": "AB900X",
+        "43780": "AB890X",
+        "43782": "AB890X",
+        "43783": "AB890X",
+        "43786": "AB900X",
+        "43787": "AB900X",
+        "43788": "AB900X",
+        "43789": "AB900X",
+        "43791": "AB890X",
+        "43793": "AB900X",
+        "43802": "AB890X",
+        "43803": "AB890X",
+        "43804": "AB890X",
+        "43805": "AB890X",
+        "43811": "AB890X",
+        "43812": "AB890X",
+        "43821": "AB890X",
+        "43822": "AB890X",
+        "43824": "AB890X",
+        "43828": "AB890X",
+        "43830": "AB890X",
+        "43832": "AB890X",
+        "43836": "AB890X",
+        "43837": "AB890X",
+        "43840": "AB890X",
+        "43842": "AB890X",
+        "43843": "AB890X",
+        "43844": "AB890X",
+        "43845": "AB890X",
+        "43901": "AB900X",
+        "43902": "AB900X",
+        "43903": "AB900X",
+        "43905": "AB900X",
+        "43906": "AB900X",
+        "43907": "AB900X",
+        "43908": "AB900X",
+        "43909": "AB900X",
+        "43910": "AB900X",
+        "43912": "AB900X",
+        "43913": "AB900X",
+        "43914": "AB900X",
+        "43915": "AB900X",
+        "43916": "AB900X",
+        "43917": "AB900X",
+        "43920": "AB900X",
+        "43925": "AB900X",
+        "43926": "AB900X",
+        "43927": "AB900X",
+        "43928": "AB900X",
+        "43930": "AB900X",
+        "43931": "AB900X",
+        "43932": "AB900X",
+        "43933": "AB900X",
+        "43934": "AB900X",
+        "43935": "AB900X",
+        "43937": "AB900X",
+        "43938": "AB900X",
+        "43939": "AB900X",
+        "43940": "AB900X",
+        "43941": "AB900X",
+        "43942": "AB900X",
+        "43943": "AB900X",
+        "43944": "AB900X",
+        "43945": "AB890X",
+        "43946": "AB900X",
+        "43947": "AB900X",
+        "43948": "AB900X",
+        "43950": "AB900X",
+        "43951": "AB900X",
+        "43952": "AB900X",
+        "43953": "AB900X",
+        "43961": "AB900X",
+        "43962": "AB890X",
+        "43963": "AB900X",
+        "43964": "AB900X",
+        "43967": "AB900X",
+        "43968": "AB900X",
+        "43970": "AB900X",
+        "43971": "AB900X",
+        "43972": "AB900X",
+        "43973": "AB890X",
+        "43974": "AB900X",
+        "43976": "AB900X",
+        "43977": "AB900X",
+        "43981": "AB900X",
+        "43983": "AB900X",
+        "43984": "AB900X",
+        "43985": "AB900X",
+        "43986": "AB900X",
+        "43988": "AB900X",
+        "44001": "AB890X",
+        "44003": "AB890X",
+        "44004": "AB890X",
+        "44005": "AB890X",
+        "44010": "AB890X",
+        "44011": "AB890X",
+        "44012": "AB890X",
+        "44017": "AB890X",
+        "44021": "AB890X",
+        "44022": "AB890X",
+        "44023": "AB890X",
+        "44024": "AB890X",
+        "44026": "AB890X",
+        "44028": "AB890X",
+        "44030": "AB890X",
+        "44032": "AB890X",
+        "44033": "AB890X",
+        "44035": "AB890X",
+        "44036": "AB890X",
+        "44039": "AB890X",
+        "44040": "AB890X",
+        "44041": "AB890X",
+        "44044": "AB890X",
+        "44045": "AB890X",
+        "44046": "AB890X",
+        "44047": "AB890X",
+        "44048": "AB890X",
+        "44049": "AB890X",
+        "44050": "AB890X",
+        "44052": "AB890X",
+        "44053": "AB890X",
+        "44054": "AB890X",
+        "44055": "AB890X",
+        "44056": "AB890X",
+        "44057": "AB890X",
+        "44060": "AB890X",
+        "44061": "AB890X",
+        "44062": "AB890X",
+        "44064": "AB890X",
+        "44065": "AB890X",
+        "44067": "AB890X",
+        "44068": "AB890X",
+        "44070": "AB890X",
+        "44072": "AB890X",
+        "44073": "AB890X",
+        "44074": "AB890X",
+        "44076": "AB890X",
+        "44077": "AB890X",
+        "44080": "AB890X",
+        "44081": "AB890X",
+        "44082": "AB890X",
+        "44084": "AB890X",
+        "44085": "AB890X",
+        "44086": "AB890X",
+        "44087": "AB890X",
+        "44088": "AB890X",
+        "44089": "AB890X",
+        "44090": "AB890X",
+        "44092": "AB890X",
+        "44093": "AB890X",
+        "44094": "AB890X",
+        "44095": "AB890X",
+        "44096": "AB890X",
+        "44097": "AB890X",
+        "44099": "AB890X",
+        "44101": "AB890X",
+        "44102": "AB890X",
+        "44103": "AB890X",
+        "44104": "AB890X",
+        "44105": "AB890X",
+        "44106": "AB890X",
+        "44107": "AB890X",
+        "44108": "AB890X",
+        "44109": "AB890X",
+        "44110": "AB890X",
+        "44111": "AB890X",
+        "44112": "AB890X",
+        "44113": "AB890X",
+        "44114": "AB890X",
+        "44115": "AB890X",
+        "44116": "AB890X",
+        "44117": "AB890X",
+        "44118": "AB890X",
+        "44119": "AB890X",
+        "44120": "AB890X",
+        "44121": "AB890X",
+        "44122": "AB890X",
+        "44123": "AB890X",
+        "44124": "AB890X",
+        "44125": "AB890X",
+        "44126": "AB890X",
+        "44127": "AB890X",
+        "44128": "AB890X",
+        "44129": "AB890X",
+        "44130": "AB890X",
+        "44131": "AB890X",
+        "44132": "AB890X",
+        "44133": "AB890X",
+        "44134": "AB890X",
+        "44135": "AB890X",
+        "44136": "AB890X",
+        "44137": "AB890X",
+        "44138": "AB890X",
+        "44139": "AB890X",
+        "44140": "AB890X",
+        "44141": "AB890X",
+        "44142": "AB890X",
+        "44143": "AB889X",
+        "44144": "AB890X",
+        "44145": "AB890X",
+        "44146": "AB890X",
+        "44147": "AB890X",
+        "44149": "AB890X",
+        "44178": "AB890X",
+        "44181": "AB890X",
+        "44185": "AB890X",
+        "44188": "AB890X",
+        "44189": "AB890X",
+        "44190": "AB890X",
+        "44191": "AB890X",
+        "44192": "AB890X",
+        "44193": "AB890X",
+        "44194": "AB890X",
+        "44195": "AB890X",
+        "44197": "AB890X",
+        "44198": "AB890X",
+        "44199": "AB890X",
+        "44201": "AB890X",
+        "44202": "AB890X",
+        "44203": "AB890X",
+        "44210": "AB890X",
+        "44211": "AB890X",
+        "44212": "AB890X",
+        "44214": "AB890X",
+        "44215": "AB890X",
+        "44216": "AB890X",
+        "44217": "AB890X",
+        "44221": "AB890X",
+        "44222": "AB890X",
+        "44223": "AB890X",
+        "44224": "AB890X",
+        "44230": "AB890X",
+        "44231": "AB890X",
+        "44232": "AB890X",
+        "44233": "AB890X",
+        "44234": "AB890X",
+        "44235": "AB890X",
+        "44236": "AB890X",
+        "44237": "AB890X",
+        "44240": "AB890X",
+        "44241": "AB890X",
+        "44242": "AB890X",
+        "44243": "AB890X",
+        "44250": "AB890X",
+        "44251": "AB890X",
+        "44253": "AB890X",
+        "44254": "AB890X",
+        "44255": "AB890X",
+        "44256": "AB890X",
+        "44258": "AB890X",
+        "44260": "AB890X",
+        "44262": "AB890X",
+        "44264": "AB890X",
+        "44265": "AB890X",
+        "44266": "AB890X",
+        "44270": "AB890X",
+        "44272": "AB890X",
+        "44273": "AB890X",
+        "44274": "AB890X",
+        "44275": "AB890X",
+        "44276": "AB890X",
+        "44278": "AB890X",
+        "44280": "AB890X",
+        "44281": "AB890X",
+        "44282": "AB890X",
+        "44285": "AB890X",
+        "44286": "AB890X",
+        "44287": "AB890X",
+        "44288": "AB890X",
+        "44301": "AB890X",
+        "44302": "AB890X",
+        "44303": "AB890X",
+        "44304": "AB890X",
+        "44305": "AB890X",
+        "44306": "AB890X",
+        "44307": "AB890X",
+        "44308": "AB890X",
+        "44309": "AB890X",
+        "44310": "AB890X",
+        "44311": "AB890X",
+        "44312": "AB890X",
+        "44313": "AB890X",
+        "44314": "AB890X",
+        "44315": "AB890X",
+        "44316": "AB890X",
+        "44317": "AB890X",
+        "44319": "AB890X",
+        "44320": "AB890X",
+        "44321": "AB890X",
+        "44322": "AB890X",
+        "44325": "AB890X",
+        "44326": "AB890X",
+        "44328": "AB890X",
+        "44333": "AB890X",
+        "44334": "AB890X",
+        "44372": "AB890X",
+        "44393": "AB890X",
+        "44396": "AB890X",
+        "44398": "AB890X",
+        "44399": "AB890X",
+        "44401": "AB900X",
+        "44402": "AB900X",
+        "44403": "AB900X",
+        "44404": "AB900X",
+        "44405": "AB900X",
+        "44406": "AB900X",
+        "44408": "AB890X",
+        "44410": "AB900X",
+        "44411": "AB890X",
+        "44412": "AB890X",
+        "44413": "AB890X",
+        "44415": "AB890X",
+        "44416": "AB900X",
+        "44417": "AB900X",
+        "44418": "AB900X",
+        "44420": "AB900X",
+        "44422": "AB900X",
+        "44423": "AB890X",
+        "44424": "AB900X",
+        "44425": "AB900X",
+        "44427": "AB889X",
+        "44428": "AB900X",
+        "44429": "AB900X",
+        "44430": "AB900X",
+        "44431": "AB890X",
+        "44432": "AB890X",
+        "44436": "AB900X",
+        "44437": "AB900X",
+        "44438": "AB900X",
+        "44439": "AB900X",
+        "44440": "AB900X",
+        "44441": "AB890X",
+        "44442": "AB900X",
+        "44443": "AB900X",
+        "44444": "AB900X",
+        "44445": "AB890X",
+        "44446": "AB900X",
+        "44449": "AB890X",
+        "44450": "AB900X",
+        "44451": "AB900X",
+        "44452": "AB900X",
+        "44453": "AB900X",
+        "44454": "AB900X",
+        "44455": "AB890X",
+        "44460": "AB900X",
+        "44470": "AB900X",
+        "44471": "AB900X",
+        "44473": "AB900X",
+        "44481": "AB900X",
+        "44482": "AB900X",
+        "44483": "AB900X",
+        "44484": "AB900X",
+        "44485": "AB900X",
+        "44486": "AB900X",
+        "44488": "AB900X",
+        "44490": "AB890X",
+        "44491": "AB900X",
+        "44492": "AB890X",
+        "44493": "AB890X",
+        "44501": "AB900X",
+        "44502": "AB900X",
+        "44503": "AB900X",
+        "44504": "AB900X",
+        "44505": "AB900X",
+        "44506": "AB900X",
+        "44507": "AB900X",
+        "44509": "AB900X",
+        "44510": "AB900X",
+        "44511": "AB900X",
+        "44512": "AB900X",
+        "44513": "AB900X",
+        "44514": "AB900X",
+        "44515": "AB900X",
+        "44555": "AB900X",
+        "44601": "AB890X",
+        "44606": "AB890X",
+        "44607": "AB890X",
+        "44608": "AB890X",
+        "44609": "AB900X",
+        "44610": "AB890X",
+        "44611": "AB890X",
+        "44612": "AB890X",
+        "44613": "AB890X",
+        "44614": "AB890X",
+        "44615": "AB890X",
+        "44617": "AB890X",
+        "44618": "AB890X",
+        "44619": "AB900X",
+        "44620": "AB890X",
+        "44621": "AB890X",
+        "44622": "AB890X",
+        "44624": "AB890X",
+        "44625": "AB890X",
+        "44626": "AB890X",
+        "44627": "AB890X",
+        "44628": "AB890X",
+        "44629": "AB890X",
+        "44630": "AB890X",
+        "44631": "AB890X",
+        "44632": "AB890X",
+        "44633": "AB890X",
+        "44634": "AB890X",
+        "44636": "AB890X",
+        "44637": "AB890X",
+        "44638": "AB890X",
+        "44639": "AB890X",
+        "44640": "AB890X",
+        "44641": "AB890X",
+        "44643": "AB890X",
+        "44644": "AB890X",
+        "44645": "AB890X",
+        "44646": "AB890X",
+        "44647": "AB890X",
+        "44648": "AB890X",
+        "44650": "AB890X",
+        "44651": "AB890X",
+        "44652": "AB890X",
+        "44653": "AB890X",
+        "44654": "AB890X",
+        "44656": "AB890X",
+        "44657": "AB890X",
+        "44659": "AB890X",
+        "44660": "AB890X",
+        "44661": "AB890X",
+        "44662": "AB890X",
+        "44663": "AB890X",
+        "44665": "AB890X",
+        "44666": "AB890X",
+        "44667": "AB890X",
+        "44669": "AB890X",
+        "44670": "AB890X",
+        "44671": "AB890X",
+        "44672": "AB900X",
+        "44675": "AB890X",
+        "44676": "AB890X",
+        "44677": "AB890X",
+        "44678": "AB890X",
+        "44679": "AB890X",
+        "44680": "AB890X",
+        "44681": "AB890X",
+        "44682": "AB890X",
+        "44683": "AB890X",
+        "44685": "AB890X",
+        "44687": "AB890X",
+        "44688": "AB890X",
+        "44689": "AB890X",
+        "44690": "AB890X",
+        "44691": "AB890X",
+        "44693": "AB900X",
+        "44695": "AB900X",
+        "44697": "AB890X",
+        "44699": "AB900X",
+        "44701": "AB890X",
+        "44702": "AB890X",
+        "44703": "AB890X",
+        "44704": "AB890X",
+        "44705": "AB890X",
+        "44706": "AB890X",
+        "44707": "AB890X",
+        "44708": "AB890X",
+        "44709": "AB890X",
+        "44710": "AB890X",
+        "44711": "AB890X",
+        "44712": "AB890X",
+        "44714": "AB890X",
+        "44718": "AB890X",
+        "44720": "AB890X",
+        "44721": "AB890X",
+        "44730": "AB890X",
+        "44735": "AB890X",
+        "44750": "AB890X",
+        "44767": "AB890X",
+        "44799": "AB890X",
+        "44802": "AB890X",
+        "44804": "AB890X",
+        "44805": "AB890X",
+        "44807": "AB890X",
+        "44809": "AB890X",
+        "44811": "AB890X",
+        "44813": "AB890X",
+        "44814": "AB890X",
+        "44815": "AB890X",
+        "44816": "AB890X",
+        "44817": "AB890X",
+        "44818": "AB890X",
+        "44820": "AB890X",
+        "44822": "AB890X",
+        "44824": "AB890X",
+        "44825": "AB890X",
+        "44826": "AB890X",
+        "44827": "AB890X",
+        "44828": "AB890X",
+        "44830": "AB890X",
+        "44833": "AB890X",
+        "44836": "AB890X",
+        "44837": "AB890X",
+        "44838": "AB890X",
+        "44839": "AB890X",
+        "44840": "AB890X",
+        "44841": "AB890X",
+        "44842": "AB890X",
+        "44843": "AB890X",
+        "44844": "AB890X",
+        "44845": "AB890X",
+        "44846": "AB890X",
+        "44847": "AB890X",
+        "44848": "AB890X",
+        "44849": "AB890X",
+        "44850": "AB890X",
+        "44851": "AB890X",
+        "44853": "AB890X",
+        "44854": "AB890X",
+        "44855": "AB890X",
+        "44856": "AB890X",
+        "44857": "AB890X",
+        "44859": "AB890X",
+        "44860": "AB890X",
+        "44861": "AB890X",
+        "44862": "AB890X",
+        "44864": "AB890X",
+        "44865": "AB890X",
+        "44866": "AB890X",
+        "44867": "AB890X",
+        "44870": "AB890X",
+        "44871": "AB890X",
+        "44874": "AB890X",
+        "44875": "AB890X",
+        "44878": "AB890X",
+        "44880": "AB890X",
+        "44881": "AB890X",
+        "44882": "AB890X",
+        "44883": "AB890X",
+        "44887": "AB890X",
+        "44888": "AB890X",
+        "44889": "AB890X",
+        "44890": "AB890X",
+        "44901": "AB890X",
+        "44902": "AB890X",
+        "44903": "AB890X",
+        "44904": "AB890X",
+        "44905": "AB890X",
+        "44906": "AB890X",
+        "44907": "AB890X",
+        "44999": "AB890X",
+        "45001": "AB890X",
+        "45002": "AB890X",
+        "45003": "AB890X",
+        "45004": "AB890X",
+        "45005": "AB890X",
+        "45011": "AB890X",
+        "45012": "AB890X",
+        "45013": "AB890X",
+        "45014": "AB890X",
+        "45015": "AB890X",
+        "45018": "AB890X",
+        "45025": "AB890X",
+        "45026": "AB890X",
+        "45030": "AB890X",
+        "45032": "AB890X",
+        "45033": "AB890X",
+        "45034": "AB890X",
+        "45036": "AB890X",
+        "45039": "AB890X",
+        "45040": "AB890X",
+        "45041": "AB890X",
+        "45042": "AB888X",
+        "45043": "AB890X",
+        "45044": "AB890X",
+        "45047": "AB890X",
+        "45050": "AB890X",
+        "45051": "AB890X",
+        "45052": "AB890X",
+        "45053": "AB890X",
+        "45054": "AB890X",
+        "45055": "AB890X",
+        "45056": "AB890X",
+        "45061": "AB890X",
+        "45062": "AB890X",
+        "45063": "AB890X",
+        "45064": "AB890X",
+        "45065": "AB890X",
+        "45066": "AB890X",
+        "45067": "AB890X",
+        "45068": "AB890X",
+        "45069": "AB890X",
+        "45070": "AB890X",
+        "45071": "AB890X",
+        "45101": "AB890X",
+        "45102": "AB890X",
+        "45103": "AB890X",
+        "45105": "AB890X",
+        "45106": "AB890X",
+        "45107": "AB890X",
+        "45110": "AB890X",
+        "45111": "AB890X",
+        "45112": "AB890X",
+        "45113": "AB890X",
+        "45114": "AB890X",
+        "45115": "AB890X",
+        "45118": "AB890X",
+        "45119": "AB890X",
+        "45120": "AB890X",
+        "45121": "AB890X",
+        "45122": "AB890X",
+        "45123": "AB890X",
+        "45130": "AB890X",
+        "45131": "AB890X",
+        "45132": "AB890X",
+        "45133": "AB890X",
+        "45135": "AB890X",
+        "45138": "AB890X",
+        "45140": "AB890X",
+        "45142": "AB890X",
+        "45144": "AB890X",
+        "45145": "AB890X",
+        "45146": "AB890X",
+        "45147": "AB890X",
+        "45148": "AB890X",
+        "45150": "AB890X",
+        "45152": "AB890X",
+        "45153": "AB890X",
+        "45154": "AB890X",
+        "45155": "AB890X",
+        "45156": "AB890X",
+        "45157": "AB890X",
+        "45158": "AB890X",
+        "45159": "AB890X",
+        "45160": "AB890X",
+        "45162": "AB890X",
+        "45164": "AB890X",
+        "45166": "AB890X",
+        "45167": "AB890X",
+        "45168": "AB890X",
+        "45169": "AB890X",
+        "45171": "AB890X",
+        "45172": "AB890X",
+        "45174": "AB890X",
+        "45176": "AB890X",
+        "45177": "AB890X",
+        "45201": "AB890X",
+        "45202": "AB890X",
+        "45203": "AB890X",
+        "45204": "AB890X",
+        "45205": "AB890X",
+        "45206": "AB890X",
+        "45207": "AB890X",
+        "45208": "AB890X",
+        "45209": "AB890X",
+        "45211": "AB890X",
+        "45212": "AB890X",
+        "45213": "AB890X",
+        "45214": "AB890X",
+        "45215": "AB890X",
+        "45216": "AB890X",
+        "45217": "AB890X",
+        "45218": "AB890X",
+        "45219": "AB890X",
+        "45220": "AB890X",
+        "45221": "AB890X",
+        "45222": "AB890X",
+        "45223": "AB890X",
+        "45224": "AB890X",
+        "45225": "AB890X",
+        "45226": "AB890X",
+        "45227": "AB890X",
+        "45228": "AB890X",
+        "45229": "AB890X",
+        "45230": "AB890X",
+        "45231": "AB890X",
+        "45232": "AB890X",
+        "45233": "AB890X",
+        "45234": "AB890X",
+        "45235": "AB890X",
+        "45236": "AB890X",
+        "45237": "AB890X",
+        "45238": "AB890X",
+        "45239": "AB890X",
+        "45240": "AB890X",
+        "45241": "AB890X",
+        "45242": "AB890X",
+        "45243": "AB890X",
+        "45244": "AB890X",
+        "45245": "AB890X",
+        "45246": "AB890X",
+        "45247": "AB890X",
+        "45248": "AB890X",
+        "45249": "AB890X",
+        "45250": "AB890X",
+        "45251": "AB890X",
+        "45252": "AB890X",
+        "45253": "AB890X",
+        "45254": "AB890X",
+        "45255": "AB890X",
+        "45258": "AB890X",
+        "45262": "AB890X",
+        "45263": "AB890X",
+        "45264": "AB890X",
+        "45267": "AB890X",
+        "45268": "AB890X",
+        "45269": "AB890X",
+        "45270": "AB890X",
+        "45271": "AB890X",
+        "45273": "AB890X",
+        "45274": "AB890X",
+        "45275": "AB890X",
+        "45277": "AB890X",
+        "45280": "AB890X",
+        "45296": "AB890X",
+        "45298": "AB890X",
+        "45299": "AB890X",
+        "45301": "AB890X",
+        "45302": "AB890X",
+        "45303": "AB890X",
+        "45304": "AB890X",
+        "45305": "AB890X",
+        "45306": "AB890X",
+        "45307": "AB890X",
+        "45308": "AB890X",
+        "45309": "AB890X",
+        "45310": "AB890X",
+        "45311": "AB890X",
+        "45312": "AB890X",
+        "45314": "AB890X",
+        "45315": "AB890X",
+        "45316": "AB890X",
+        "45317": "AB890X",
+        "45318": "AB890X",
+        "45319": "AB890X",
+        "45320": "AB890X",
+        "45321": "AB890X",
+        "45322": "AB890X",
+        "45323": "AB890X",
+        "45324": "AB890X",
+        "45325": "AB890X",
+        "45326": "AB890X",
+        "45327": "AB890X",
+        "45328": "AB890X",
+        "45330": "AB890X",
+        "45331": "AB890X",
+        "45332": "AB890X",
+        "45333": "AB890X",
+        "45334": "AB890X",
+        "45335": "AB890X",
+        "45336": "AB890X",
+        "45337": "AB890X",
+        "45338": "AB890X",
+        "45339": "AB890X",
+        "45340": "AB890X",
+        "45341": "AB890X",
+        "45342": "AB890X",
+        "45343": "AB890X",
+        "45344": "AB890X",
+        "45345": "AB890X",
+        "45346": "AB890X",
+        "45347": "AB890X",
+        "45348": "AB890X",
+        "45349": "AB890X",
+        "45350": "AB890X",
+        "45351": "AB890X",
+        "45352": "AB890X",
+        "45353": "AB890X",
+        "45354": "AB890X",
+        "45356": "AB890X",
+        "45358": "AB890X",
+        "45359": "AB890X",
+        "45360": "AB890X",
+        "45361": "AB890X",
+        "45362": "AB890X",
+        "45363": "AB890X",
+        "45365": "AB890X",
+        "45367": "AB890X",
+        "45368": "AB890X",
+        "45369": "AB890X",
+        "45370": "AB890X",
+        "45371": "AB890X",
+        "45372": "AB890X",
+        "45373": "AB890X",
+        "45374": "AB890X",
+        "45377": "AB890X",
+        "45378": "AB890X",
+        "45380": "AB890X",
+        "45381": "AB890X",
+        "45382": "AB890X",
+        "45383": "AB890X",
+        "45384": "AB890X",
+        "45385": "AB890X",
+        "45387": "AB890X",
+        "45388": "AB890X",
+        "45389": "AB890X",
+        "45390": "AB888X",
+        "45401": "AB890X",
+        "45402": "AB890X",
+        "45403": "AB890X",
+        "45404": "AB890X",
+        "45405": "AB890X",
+        "45406": "AB890X",
+        "45408": "AB890X",
+        "45409": "AB890X",
+        "45410": "AB890X",
+        "45412": "AB890X",
+        "45413": "AB890X",
+        "45414": "AB890X",
+        "45415": "AB890X",
+        "45416": "AB890X",
+        "45417": "AB890X",
+        "45418": "AB890X",
+        "45419": "AB890X",
+        "45420": "AB890X",
+        "45422": "AB890X",
+        "45423": "AB890X",
+        "45424": "AB890X",
+        "45426": "AB890X",
+        "45427": "AB890X",
+        "45428": "AB890X",
+        "45429": "AB890X",
+        "45430": "AB890X",
+        "45431": "AB890X",
+        "45432": "AB890X",
+        "45433": "AB890X",
+        "45434": "AB890X",
+        "45435": "AB890X",
+        "45437": "AB890X",
+        "45439": "AB890X",
+        "45440": "AB900X",
+        "45441": "AB890X",
+        "45448": "AB890X",
+        "45449": "AB890X",
+        "45454": "AB890X",
+        "45458": "AB890X",
+        "45459": "AB890X",
+        "45463": "AB890X",
+        "45469": "AB890X",
+        "45470": "AB890X",
+        "45475": "AB890X",
+        "45479": "AB890X",
+        "45481": "AB890X",
+        "45482": "AB890X",
+        "45490": "AB890X",
+        "45501": "AB890X",
+        "45502": "AB890X",
+        "45503": "AB890X",
+        "45504": "AB890X",
+        "45505": "AB890X",
+        "45506": "AB890X",
+        "45600": "AB890X",
+        "45601": "AB890X",
+        "45612": "AB890X",
+        "45613": "AB890X",
+        "45614": "AB900X",
+        "45616": "AB890X",
+        "45617": "AB890X",
+        "45618": "AB890X",
+        "45619": "AB900X",
+        "45620": "AB900X",
+        "45621": "AB900X",
+        "45622": "AB890X",
+        "45623": "AB900X",
+        "45624": "AB890X",
+        "45628": "AB890X",
+        "45629": "AB900X",
+        "45630": "AB900X",
+        "45631": "AB900X",
+        "45633": "AB890X",
+        "45634": "AB890X",
+        "45636": "AB900X",
+        "45638": "AB900X",
+        "45640": "AB900X",
+        "45642": "AB890X",
+        "45643": "AB900X",
+        "45644": "AB890X",
+        "45645": "AB900X",
+        "45646": "AB890X",
+        "45647": "AB890X",
+        "45648": "AB900X",
+        "45650": "AB890X",
+        "45651": "AB900X",
+        "45652": "AB900X",
+        "45653": "AB900X",
+        "45654": "AB890X",
+        "45656": "AB900X",
+        "45657": "AB900X",
+        "45658": "AB900X",
+        "45659": "AB900X",
+        "45660": "AB890X",
+        "45661": "AB890X",
+        "45662": "AB900X",
+        "45663": "AB900X",
+        "45669": "AB900X",
+        "45671": "AB900X",
+        "45672": "AB900X",
+        "45673": "AB900X",
+        "45674": "AB900X",
+        "45675": "AB900X",
+        "45677": "AB900X",
+        "45678": "AB900X",
+        "45679": "AB890X",
+        "45680": "AB900X",
+        "45681": "AB890X",
+        "45682": "AB900X",
+        "45683": "AB900X",
+        "45684": "AB890X",
+        "45685": "AB900X",
+        "45686": "AB900X",
+        "45687": "AB890X",
+        "45688": "AB900X",
+        "45690": "AB890X",
+        "45692": "AB900X",
+        "45693": "AB890X",
+        "45694": "AB900X",
+        "45695": "AB890X",
+        "45696": "AB900X",
+        "45697": "AB890X",
+        "45698": "AB890X",
+        "45699": "AB900X",
+        "45701": "AB890X",
+        "45710": "AB890X",
+        "45711": "AB890X",
+        "45712": "AB900X",
+        "45713": "AB900X",
+        "45714": "AB900X",
+        "45715": "AB900X",
+        "45716": "AB890X",
+        "45717": "AB890X",
+        "45719": "AB890X",
+        "45720": "AB900X",
+        "45721": "AB900X",
+        "45723": "AB890X",
+        "45724": "AB900X",
+        "45727": "AB900X",
+        "45729": "AB900X",
+        "45732": "AB890X",
+        "45734": "AB900X",
+        "45735": "AB890X",
+        "45739": "AB890X",
+        "45740": "AB890X",
+        "45741": "AB900X",
+        "45742": "AB900X",
+        "45743": "AB900X",
+        "45744": "AB900X",
+        "45745": "AB900X",
+        "45746": "AB900X",
+        "45750": "AB900X",
+        "45760": "AB900X",
+        "45761": "AB890X",
+        "45764": "AB890X",
+        "45766": "AB890X",
+        "45767": "AB900X",
+        "45768": "AB900X",
+        "45769": "AB900X",
+        "45770": "AB900X",
+        "45771": "AB890X",
+        "45772": "AB900X",
+        "45773": "AB900X",
+        "45775": "AB900X",
+        "45776": "AB890X",
+        "45777": "AB890X",
+        "45778": "AB890X",
+        "45779": "AB900X",
+        "45780": "AB890X",
+        "45782": "AB890X",
+        "45783": "AB900X",
+        "45784": "AB900X",
+        "45786": "AB900X",
+        "45787": "AB900X",
+        "45788": "AB900X",
+        "45789": "AB900X",
+        "45801": "AB890X",
+        "45802": "AB890X",
+        "45804": "AB890X",
+        "45805": "AB890X",
+        "45806": "AB890X",
+        "45807": "AB888X",
+        "45808": "AB890X",
+        "45809": "AB890X",
+        "45810": "AB890X",
+        "45812": "AB890X",
+        "45813": "AB890X",
+        "45814": "AB890X",
+        "45815": "AB890X",
+        "45816": "AB890X",
+        "45817": "AB890X",
+        "45819": "AB890X",
+        "45820": "AB890X",
+        "45821": "AB890X",
+        "45822": "AB890X",
+        "45826": "AB890X",
+        "45827": "AB890X",
+        "45828": "AB890X",
+        "45830": "AB890X",
+        "45831": "AB890X",
+        "45832": "AB888X",
+        "45833": "AB888X",
+        "45835": "AB890X",
+        "45836": "AB890X",
+        "45837": "AB890X",
+        "45838": "AB888X",
+        "45839": "AB890X",
+        "45840": "AB890X",
+        "45841": "AB890X",
+        "45843": "AB890X",
+        "45844": "AB888X",
+        "45845": "AB890X",
+        "45846": "AB890X",
+        "45848": "AB890X",
+        "45849": "AB890X",
+        "45850": "AB890X",
+        "45851": "AB890X",
+        "45853": "AB890X",
+        "45854": "AB890X",
+        "45855": "AB890X",
+        "45856": "AB890X",
+        "45858": "AB890X",
+        "45859": "AB890X",
+        "45860": "AB890X",
+        "45861": "AB890X",
+        "45862": "AB890X",
+        "45863": "AB888X",
+        "45864": "AB890X",
+        "45865": "AB890X",
+        "45866": "AB890X",
+        "45867": "AB890X",
+        "45868": "AB890X",
+        "45869": "AB890X",
+        "45870": "AB890X",
+        "45871": "AB890X",
+        "45872": "AB890X",
+        "45873": "AB890X",
+        "45874": "AB888X",
+        "45875": "AB890X",
+        "45876": "AB890X",
+        "45877": "AB890X",
+        "45879": "AB890X",
+        "45880": "AB890X",
+        "45881": "AB890X",
+        "45882": "AB888X",
+        "45883": "AB890X",
+        "45884": "AB890X",
+        "45885": "AB890X",
+        "45886": "AB888X",
+        "45887": "AB888X",
+        "45888": "AB890X",
+        "45889": "AB890X",
+        "45890": "AB890X",
+        "45891": "AB888X",
+        "45893": "AB890X",
+        "45894": "AB888X",
+        "45895": "AB890X",
+        "45896": "AB890X",
+        "45897": "AB890X",
+        "45898": "AB888X",
+        "45899": "AB888X",
+        "45999": "AB890X",
+        "46001": "AB888X",
+        "46011": "AB888X",
+        "46012": "AB888X",
+        "46013": "AB888X",
+        "46014": "AB888X",
+        "46015": "AB888X",
+        "46016": "AB888X",
+        "46017": "AB888X",
+        "46018": "AB888X",
+        "46030": "AB888X",
+        "46031": "AB888X",
+        "46032": "AB888X",
+        "46033": "AB888X",
+        "46034": "AB888X",
+        "46035": "AB888X",
+        "46036": "AB888X",
+        "46037": "AB888X",
+        "46038": "AB888X",
+        "46039": "AB888X",
+        "46040": "AB888X",
+        "46041": "AB888X",
+        "46044": "AB888X",
+        "46045": "AB888X",
+        "46047": "AB888X",
+        "46048": "AB888X",
+        "46049": "AB888X",
+        "46050": "AB888X",
+        "46051": "AB888X",
+        "46052": "AB888X",
+        "46055": "AB888X",
+        "46056": "AB888X",
+        "46057": "AB888X",
+        "46058": "AB888X",
+        "46060": "AB888X",
+        "46061": "AB888X",
+        "46062": "AB888X",
+        "46063": "AB888X",
+        "46064": "AB888X",
+        "46065": "AB888X",
+        "46067": "AB888X",
+        "46068": "AB888X",
+        "46069": "AB888X",
+        "46070": "AB888X",
+        "46071": "AB888X",
+        "46072": "AB888X",
+        "46074": "AB888X",
+        "46075": "AB888X",
+        "46076": "AB888X",
+        "46077": "AB888X",
+        "46082": "AB888X",
+        "46102": "AB888X",
+        "46103": "AB888X",
+        "46104": "AB888X",
+        "46105": "AB888X",
+        "46106": "AB888X",
+        "46107": "AB888X",
+        "46110": "AB888X",
+        "46111": "AB888X",
+        "46112": "AB888X",
+        "46113": "AB888X",
+        "46115": "AB888X",
+        "46117": "AB888X",
+        "46118": "AB888X",
+        "46120": "AB888X",
+        "46121": "AB888X",
+        "46122": "AB888X",
+        "46123": "AB888X",
+        "46124": "AB888X",
+        "46125": "AB888X",
+        "46126": "AB888X",
+        "46127": "AB888X",
+        "46128": "AB888X",
+        "46129": "AB888X",
+        "46130": "AB888X",
+        "46131": "AB888X",
+        "46133": "AB888X",
+        "46135": "AB888X",
+        "46140": "AB888X",
+        "46142": "AB888X",
+        "46143": "AB888X",
+        "46144": "AB888X",
+        "46146": "AB888X",
+        "46147": "AB888X",
+        "46148": "AB888X",
+        "46149": "AB888X",
+        "46150": "AB888X",
+        "46151": "AB888X",
+        "46154": "AB888X",
+        "46155": "AB888X",
+        "46156": "AB888X",
+        "46157": "AB888X",
+        "46158": "AB888X",
+        "46160": "AB888X",
+        "46161": "AB888X",
+        "46162": "AB888X",
+        "46163": "AB888X",
+        "46164": "AB888X",
+        "46165": "AB888X",
+        "46166": "AB888X",
+        "46167": "AB888X",
+        "46168": "AB888X",
+        "46170": "AB888X",
+        "46171": "AB888X",
+        "46172": "AB888X",
+        "46173": "AB888X",
+        "46175": "AB888X",
+        "46176": "AB888X",
+        "46180": "AB888X",
+        "46181": "AB888X",
+        "46182": "AB888X",
+        "46183": "AB888X",
+        "46184": "AB888X",
+        "46186": "AB888X",
+        "46201": "AB888X",
+        "46202": "AB888X",
+        "46203": "AB888X",
+        "46204": "AB888X",
+        "46205": "AB888X",
+        "46206": "AB888X",
+        "46207": "AB888X",
+        "46208": "AB888X",
+        "46209": "AB888X",
+        "46211": "AB888X",
+        "46214": "AB888X",
+        "46216": "AB888X",
+        "46217": "AB888X",
+        "46218": "AB888X",
+        "46219": "AB888X",
+        "46220": "AB888X",
+        "46221": "AB888X",
+        "46222": "AB888X",
+        "46223": "AB888X",
+        "46224": "AB888X",
+        "46225": "AB888X",
+        "46226": "AB888X",
+        "46227": "AB888X",
+        "46228": "AB888X",
+        "46229": "AB888X",
+        "46230": "AB888X",
+        "46231": "AB888X",
+        "46234": "AB888X",
+        "46235": "AB888X",
+        "46236": "AB888X",
+        "46237": "AB888X",
+        "46239": "AB888X",
+        "46240": "AB888X",
+        "46241": "AB888X",
+        "46242": "AB888X",
+        "46244": "AB888X",
+        "46247": "AB888X",
+        "46249": "AB888X",
+        "46250": "AB888X",
+        "46251": "AB888X",
+        "46253": "AB888X",
+        "46254": "AB888X",
+        "46255": "AB888X",
+        "46256": "AB888X",
+        "46259": "AB888X",
+        "46260": "AB888X",
+        "46262": "AB888X",
+        "46266": "AB888X",
+        "46268": "AB888X",
+        "46274": "AB888X",
+        "46275": "AB888X",
+        "46277": "AB888X",
+        "46278": "AB888X",
+        "46280": "AB888X",
+        "46282": "AB888X",
+        "46283": "AB888X",
+        "46285": "AB888X",
+        "46290": "AB888X",
+        "46291": "AB888X",
+        "46295": "AB888X",
+        "46296": "AB888X",
+        "46298": "AB888X",
+        "46301": "AB887X",
+        "46302": "AB887X",
+        "46303": "AB887X",
+        "46304": "AB887X",
+        "46307": "AB887X",
+        "46308": "AB887X",
+        "46310": "AB887X",
+        "46311": "AB887X",
+        "46312": "AB887X",
+        "46319": "AB887X",
+        "46320": "AB887X",
+        "46321": "AB887X",
+        "46322": "AB887X",
+        "46323": "AB887X",
+        "46324": "AB887X",
+        "46325": "AB887X",
+        "46327": "AB887X",
+        "46340": "AB887X",
+        "46341": "AB887X",
+        "46342": "AB887X",
+        "46345": "AB887X",
+        "46346": "AB887X",
+        "46347": "AB887X",
+        "46348": "AB887X",
+        "46349": "AB888X",
+        "46350": "AB887X",
+        "46352": "AB887X",
+        "46355": "AB887X",
+        "46356": "AB887X",
+        "46360": "AB887X",
+        "46361": "AB887X",
+        "46365": "AB887X",
+        "46366": "AB887X",
+        "46368": "AB887X",
+        "46371": "AB887X",
+        "46372": "AB888X",
+        "46373": "AB887X",
+        "46374": "AB887X",
+        "46375": "AB887X",
+        "46376": "AB887X",
+        "46377": "AB887X",
+        "46379": "AB888X",
+        "46380": "AB887X",
+        "46381": "AB888X",
+        "46382": "AB887X",
+        "46383": "AB887X",
+        "46384": "AB887X",
+        "46385": "AB887X",
+        "46390": "AB887X",
+        "46391": "AB887X",
+        "46392": "AB887X",
+        "46393": "AB887X",
+        "46394": "AB887X",
+        "46401": "AB887X",
+        "46402": "AB887X",
+        "46403": "AB887X",
+        "46404": "AB887X",
+        "46405": "AB887X",
+        "46406": "AB887X",
+        "46407": "AB887X",
+        "46408": "AB887X",
+        "46409": "AB887X",
+        "46410": "AB887X",
+        "46411": "AB887X",
+        "46501": "AB887X",
+        "46502": "AB888X",
+        "46504": "AB887X",
+        "46506": "AB887X",
+        "46507": "AB887X",
+        "46508": "AB888X",
+        "46510": "AB888X",
+        "46511": "AB887X",
+        "46513": "AB887X",
+        "46514": "AB887X",
+        "46515": "AB887X",
+        "46516": "AB887X",
+        "46517": "AB887X",
+        "46524": "AB888X",
+        "46526": "AB887X",
+        "46527": "AB887X",
+        "46528": "AB887X",
+        "46530": "AB887X",
+        "46531": "AB887X",
+        "46532": "AB887X",
+        "46534": "AB887X",
+        "46536": "AB887X",
+        "46537": "AB887X",
+        "46538": "AB888X",
+        "46539": "AB888X",
+        "46540": "AB887X",
+        "46542": "AB888X",
+        "46543": "AB887X",
+        "46544": "AB887X",
+        "46545": "AB887X",
+        "46546": "AB887X",
+        "46550": "AB887X",
+        "46552": "AB887X",
+        "46553": "AB890X",
+        "46554": "AB887X",
+        "46555": "AB888X",
+        "46556": "AB887X",
+        "46561": "AB887X",
+        "46562": "AB888X",
+        "46563": "AB887X",
+        "46565": "AB888X",
+        "46567": "AB888X",
+        "46570": "AB887X",
+        "46571": "AB888X",
+        "46572": "AB887X",
+        "46573": "AB887X",
+        "46574": "AB887X",
+        "46580": "AB887X",
+        "46581": "AB888X",
+        "46582": "AB887X",
+        "46590": "AB888X",
+        "46595": "AB887X",
+        "46601": "AB887X",
+        "46604": "AB887X",
+        "46613": "AB887X",
+        "46614": "AB887X",
+        "46615": "AB887X",
+        "46616": "AB887X",
+        "46617": "AB887X",
+        "46619": "AB887X",
+        "46620": "AB887X",
+        "46624": "AB887X",
+        "46626": "AB887X",
+        "46628": "AB887X",
+        "46634": "AB887X",
+        "46635": "AB887X",
+        "46637": "AB887X",
+        "46660": "AB887X",
+        "46680": "AB887X",
+        "46699": "AB887X",
+        "46701": "AB888X",
+        "46702": "AB888X",
+        "46703": "AB888X",
+        "46704": "AB888X",
+        "46705": "AB888X",
+        "46706": "AB888X",
+        "46710": "AB888X",
+        "46711": "AB888X",
+        "46713": "AB888X",
+        "46714": "AB888X",
+        "46721": "AB888X",
+        "46723": "AB888X",
+        "46725": "AB888X",
+        "46730": "AB888X",
+        "46731": "AB888X",
+        "46732": "AB888X",
+        "46733": "AB888X",
+        "46737": "AB888X",
+        "46738": "AB888X",
+        "46740": "AB888X",
+        "46741": "AB888X",
+        "46742": "AB888X",
+        "46743": "AB888X",
+        "46745": "AB888X",
+        "46746": "AB889X",
+        "46747": "AB888X",
+        "46748": "AB888X",
+        "46750": "AB888X",
+        "46755": "AB888X",
+        "46759": "AB888X",
+        "46760": "AB888X",
+        "46761": "AB888X",
+        "46763": "AB888X",
+        "46764": "AB888X",
+        "46765": "AB888X",
+        "46766": "AB888X",
+        "46767": "AB888X",
+        "46769": "AB888X",
+        "46770": "AB888X",
+        "46771": "AB888X",
+        "46772": "AB888X",
+        "46773": "AB888X",
+        "46774": "AB888X",
+        "46776": "AB888X",
+        "46777": "AB888X",
+        "46778": "AB888X",
+        "46779": "AB888X",
+        "46780": "AB888X",
+        "46781": "AB888X",
+        "46782": "AB888X",
+        "46783": "AB888X",
+        "46784": "AB888X",
+        "46785": "AB888X",
+        "46786": "AB888X",
+        "46787": "AB888X",
+        "46788": "AB888X",
+        "46789": "AB888X",
+        "46791": "AB888X",
+        "46792": "AB888X",
+        "46793": "AB888X",
+        "46794": "AB888X",
+        "46795": "AB888X",
+        "46796": "AB888X",
+        "46797": "AB888X",
+        "46798": "AB888X",
+        "46799": "AB888X",
+        "46801": "AB888X",
+        "46802": "AB888X",
+        "46803": "AB888X",
+        "46804": "AB888X",
+        "46805": "AB888X",
+        "46806": "AB888X",
+        "46807": "AB888X",
+        "46808": "AB888X",
+        "46809": "AB888X",
+        "46814": "AB888X",
+        "46815": "AB888X",
+        "46816": "AB888X",
+        "46818": "AB888X",
+        "46819": "AB888X",
+        "46825": "AB888X",
+        "46835": "AB888X",
+        "46845": "AB888X",
+        "46850": "AB888X",
+        "46851": "AB888X",
+        "46852": "AB888X",
+        "46853": "AB888X",
+        "46854": "AB888X",
+        "46855": "AB888X",
+        "46856": "AB888X",
+        "46857": "AB888X",
+        "46858": "AB888X",
+        "46859": "AB888X",
+        "46860": "AB888X",
+        "46861": "AB888X",
+        "46862": "AB888X",
+        "46863": "AB888X",
+        "46864": "AB888X",
+        "46865": "AB888X",
+        "46866": "AB888X",
+        "46867": "AB888X",
+        "46868": "AB888X",
+        "46869": "AB888X",
+        "46885": "AB888X",
+        "46895": "AB888X",
+        "46896": "AB888X",
+        "46897": "AB888X",
+        "46898": "AB888X",
+        "46899": "AB888X",
+        "46901": "AB888X",
+        "46902": "AB888X",
+        "46903": "AB888X",
+        "46904": "AB888X",
+        "46910": "AB887X",
+        "46911": "AB888X",
+        "46912": "AB887X",
+        "46913": "AB888X",
+        "46914": "AB888X",
+        "46915": "AB888X",
+        "46916": "AB888X",
+        "46917": "AB888X",
+        "46919": "AB888X",
+        "46920": "AB888X",
+        "46921": "AB888X",
+        "46922": "AB887X",
+        "46923": "AB888X",
+        "46926": "AB888X",
+        "46928": "AB888X",
+        "46929": "AB888X",
+        "46930": "AB888X",
+        "46931": "AB887X",
+        "46932": "AB888X",
+        "46933": "AB888X",
+        "46935": "AB887X",
+        "46936": "AB888X",
+        "46937": "AB888X",
+        "46938": "AB888X",
+        "46939": "AB887X",
+        "46940": "AB888X",
+        "46941": "AB888X",
+        "46942": "AB888X",
+        "46943": "AB888X",
+        "46945": "AB887X",
+        "46946": "AB888X",
+        "46947": "AB888X",
+        "46950": "AB888X",
+        "46951": "AB888X",
+        "46952": "AB888X",
+        "46953": "AB888X",
+        "46957": "AB888X",
+        "46958": "AB888X",
+        "46959": "AB888X",
+        "46960": "AB887X",
+        "46961": "AB888X",
+        "46962": "AB888X",
+        "46965": "AB888X",
+        "46967": "AB888X",
+        "46968": "AB887X",
+        "46970": "AB888X",
+        "46971": "AB888X",
+        "46974": "AB888X",
+        "46975": "AB887X",
+        "46977": "AB888X",
+        "46978": "AB888X",
+        "46979": "AB888X",
+        "46980": "AB888X",
+        "46982": "AB888X",
+        "46984": "AB888X",
+        "46985": "AB887X",
+        "46986": "AB888X",
+        "46987": "AB888X",
+        "46988": "AB888X",
+        "46989": "AB888X",
+        "46990": "AB888X",
+        "46991": "AB888X",
+        "46992": "AB888X",
+        "46994": "AB888X",
+        "46995": "AB888X",
+        "46996": "AB887X",
+        "46998": "AB888X",
+        "47001": "AB890X",
+        "47003": "AB888X",
+        "47006": "AB888X",
+        "47010": "AB888X",
+        "47011": "AB888X",
+        "47012": "AB888X",
+        "47016": "AB888X",
+        "47017": "AB888X",
+        "47018": "AB890X",
+        "47019": "AB888X",
+        "47020": "AB888X",
+        "47021": "AB888X",
+        "47022": "AB890X",
+        "47023": "AB888X",
+        "47024": "AB888X",
+        "47025": "AB890X",
+        "47030": "AB888X",
+        "47031": "AB890X",
+        "47032": "AB890X",
+        "47033": "AB888X",
+        "47034": "AB888X",
+        "47035": "AB888X",
+        "47036": "AB888X",
+        "47037": "AB888X",
+        "47038": "AB888X",
+        "47039": "AB888X",
+        "47040": "AB890X",
+        "47041": "AB890X",
+        "47042": "AB888X",
+        "47043": "AB888X",
+        "47060": "AB890X",
+        "47102": "AB888X",
+        "47104": "AB888X",
+        "47106": "AB888X",
+        "47107": "AB888X",
+        "47108": "AB888X",
+        "47110": "AB888X",
+        "47111": "AB888X",
+        "47112": "AB888X",
+        "47114": "AB888X",
+        "47115": "AB888X",
+        "47116": "AB888X",
+        "47117": "AB888X",
+        "47118": "AB888X",
+        "47119": "AB888X",
+        "47120": "AB888X",
+        "47122": "AB888X",
+        "47123": "AB888X",
+        "47124": "AB888X",
+        "47125": "AB888X",
+        "47126": "AB888X",
+        "47129": "AB888X",
+        "47130": "AB888X",
+        "47131": "AB888X",
+        "47132": "AB888X",
+        "47133": "AB888X",
+        "47134": "AB888X",
+        "47135": "AB888X",
+        "47136": "AB888X",
+        "47137": "AB888X",
+        "47138": "AB888X",
+        "47139": "AB888X",
+        "47140": "AB888X",
+        "47141": "AB888X",
+        "47142": "AB888X",
+        "47143": "AB888X",
+        "47144": "AB888X",
+        "47145": "AB888X",
+        "47146": "AB888X",
+        "47147": "AB888X",
+        "47150": "AB888X",
+        "47151": "AB888X",
+        "47160": "AB888X",
+        "47161": "AB888X",
+        "47162": "AB888X",
+        "47163": "AB888X",
+        "47164": "AB888X",
+        "47165": "AB888X",
+        "47166": "AB888X",
+        "47167": "AB888X",
+        "47170": "AB888X",
+        "47172": "AB888X",
+        "47174": "AB888X",
+        "47175": "AB888X",
+        "47177": "AB888X",
+        "47190": "AB888X",
+        "47199": "AB888X",
+        "47201": "AB888X",
+        "47202": "AB888X",
+        "47203": "AB888X",
+        "47220": "AB888X",
+        "47223": "AB888X",
+        "47224": "AB888X",
+        "47225": "AB888X",
+        "47226": "AB888X",
+        "47227": "AB888X",
+        "47228": "AB888X",
+        "47229": "AB888X",
+        "47230": "AB888X",
+        "47231": "AB888X",
+        "47232": "AB888X",
+        "47234": "AB888X",
+        "47235": "AB888X",
+        "47236": "AB888X",
+        "47240": "AB888X",
+        "47243": "AB888X",
+        "47244": "AB888X",
+        "47245": "AB888X",
+        "47246": "AB888X",
+        "47247": "AB888X",
+        "47249": "AB888X",
+        "47250": "AB888X",
+        "47260": "AB888X",
+        "47261": "AB888X",
+        "47263": "AB888X",
+        "47264": "AB888X",
+        "47265": "AB888X",
+        "47270": "AB888X",
+        "47272": "AB888X",
+        "47273": "AB888X",
+        "47274": "AB888X",
+        "47280": "AB888X",
+        "47281": "AB888X",
+        "47282": "AB888X",
+        "47283": "AB888X",
+        "47302": "AB888X",
+        "47303": "AB888X",
+        "47304": "AB888X",
+        "47305": "AB888X",
+        "47306": "AB888X",
+        "47307": "AB888X",
+        "47308": "AB888X",
+        "47320": "AB888X",
+        "47322": "AB888X",
+        "47324": "AB888X",
+        "47325": "AB888X",
+        "47326": "AB888X",
+        "47327": "AB888X",
+        "47330": "AB888X",
+        "47331": "AB888X",
+        "47334": "AB888X",
+        "47335": "AB888X",
+        "47336": "AB888X",
+        "47337": "AB888X",
+        "47338": "AB888X",
+        "47339": "AB888X",
+        "47340": "AB888X",
+        "47341": "AB888X",
+        "47342": "AB888X",
+        "47344": "AB888X",
+        "47345": "AB888X",
+        "47346": "AB888X",
+        "47348": "AB888X",
+        "47351": "AB888X",
+        "47352": "AB888X",
+        "47353": "AB888X",
+        "47354": "AB888X",
+        "47355": "AB888X",
+        "47356": "AB888X",
+        "47357": "AB888X",
+        "47358": "AB888X",
+        "47359": "AB888X",
+        "47360": "AB888X",
+        "47361": "AB888X",
+        "47362": "AB888X",
+        "47366": "AB888X",
+        "47367": "AB888X",
+        "47368": "AB888X",
+        "47369": "AB888X",
+        "47370": "AB888X",
+        "47371": "AB888X",
+        "47373": "AB888X",
+        "47374": "AB888X",
+        "47375": "AB888X",
+        "47380": "AB888X",
+        "47381": "AB888X",
+        "47382": "AB888X",
+        "47383": "AB888X",
+        "47384": "AB888X",
+        "47385": "AB888X",
+        "47386": "AB888X",
+        "47387": "AB888X",
+        "47388": "AB888X",
+        "47390": "AB888X",
+        "47392": "AB888X",
+        "47393": "AB888X",
+        "47394": "AB888X",
+        "47396": "AB888X",
+        "47401": "AB888X",
+        "47402": "AB888X",
+        "47403": "AB888X",
+        "47404": "AB888X",
+        "47405": "AB888X",
+        "47406": "AB888X",
+        "47407": "AB888X",
+        "47408": "AB888X",
+        "47420": "AB888X",
+        "47421": "AB888X",
+        "47424": "AB888X",
+        "47426": "AB888X",
+        "47427": "AB888X",
+        "47429": "AB888X",
+        "47430": "AB888X",
+        "47431": "AB888X",
+        "47432": "AB888X",
+        "47433": "AB888X",
+        "47434": "AB888X",
+        "47435": "AB888X",
+        "47436": "AB888X",
+        "47437": "AB888X",
+        "47438": "AB888X",
+        "47439": "AB888X",
+        "47441": "AB888X",
+        "47443": "AB888X",
+        "47445": "AB888X",
+        "47446": "AB888X",
+        "47448": "AB888X",
+        "47449": "AB888X",
+        "47451": "AB888X",
+        "47452": "AB888X",
+        "47453": "AB888X",
+        "47454": "AB888X",
+        "47455": "AB888X",
+        "47456": "AB888X",
+        "47457": "AB888X",
+        "47458": "AB888X",
+        "47459": "AB888X",
+        "47460": "AB888X",
+        "47462": "AB888X",
+        "47463": "AB888X",
+        "47464": "AB888X",
+        "47465": "AB888X",
+        "47467": "AB888X",
+        "47468": "AB888X",
+        "47469": "AB888X",
+        "47470": "AB888X",
+        "47471": "AB888X",
+        "47472": "AB888X",
+        "47490": "AB888X",
+        "47501": "AB888X",
+        "47512": "AB888X",
+        "47513": "AB888X",
+        "47514": "AB888X",
+        "47515": "AB888X",
+        "47516": "AB888X",
+        "47519": "AB888X",
+        "47520": "AB888X",
+        "47521": "AB888X",
+        "47522": "AB888X",
+        "47523": "AB888X",
+        "47524": "AB888X",
+        "47525": "AB888X",
+        "47527": "AB888X",
+        "47528": "AB888X",
+        "47529": "AB888X",
+        "47531": "AB888X",
+        "47532": "AB888X",
+        "47535": "AB888X",
+        "47536": "AB888X",
+        "47537": "AB888X",
+        "47541": "AB888X",
+        "47542": "AB888X",
+        "47545": "AB888X",
+        "47546": "AB888X",
+        "47547": "AB888X",
+        "47549": "AB888X",
+        "47550": "AB888X",
+        "47551": "AB888X",
+        "47552": "AB888X",
+        "47553": "AB888X",
+        "47556": "AB888X",
+        "47557": "AB888X",
+        "47558": "AB888X",
+        "47561": "AB888X",
+        "47562": "AB888X",
+        "47564": "AB888X",
+        "47567": "AB888X",
+        "47568": "AB888X",
+        "47573": "AB888X",
+        "47574": "AB888X",
+        "47575": "AB888X",
+        "47576": "AB888X",
+        "47577": "AB888X",
+        "47578": "AB888X",
+        "47579": "AB888X",
+        "47580": "AB888X",
+        "47581": "AB888X",
+        "47584": "AB888X",
+        "47585": "AB888X",
+        "47586": "AB888X",
+        "47588": "AB888X",
+        "47590": "AB888X",
+        "47591": "AB888X",
+        "47596": "AB888X",
+        "47597": "AB888X",
+        "47598": "AB888X",
+        "47601": "AB888X",
+        "47610": "AB888X",
+        "47611": "AB888X",
+        "47612": "AB888X",
+        "47613": "AB888X",
+        "47614": "AB888X",
+        "47615": "AB888X",
+        "47616": "AB888X",
+        "47617": "AB888X",
+        "47618": "AB888X",
+        "47619": "AB888X",
+        "47620": "AB888X",
+        "47629": "AB888X",
+        "47630": "AB888X",
+        "47631": "AB888X",
+        "47633": "AB888X",
+        "47634": "AB888X",
+        "47635": "AB888X",
+        "47637": "AB888X",
+        "47638": "AB888X",
+        "47639": "AB888X",
+        "47640": "AB888X",
+        "47647": "AB888X",
+        "47648": "AB888X",
+        "47649": "AB888X",
+        "47654": "AB888X",
+        "47660": "AB888X",
+        "47665": "AB888X",
+        "47666": "AB888X",
+        "47670": "AB888X",
+        "47683": "AB888X",
+        "47701": "AB888X",
+        "47702": "AB888X",
+        "47703": "AB888X",
+        "47704": "AB888X",
+        "47705": "AB888X",
+        "47706": "AB888X",
+        "47708": "AB888X",
+        "47710": "AB888X",
+        "47711": "AB888X",
+        "47712": "AB888X",
+        "47713": "AB888X",
+        "47714": "AB888X",
+        "47715": "AB888X",
+        "47716": "AB888X",
+        "47719": "AB888X",
+        "47720": "AB888X",
+        "47721": "AB888X",
+        "47722": "AB888X",
+        "47724": "AB888X",
+        "47725": "AB888X",
+        "47727": "AB888X",
+        "47728": "AB888X",
+        "47730": "AB888X",
+        "47731": "AB888X",
+        "47732": "AB888X",
+        "47733": "AB888X",
+        "47734": "AB888X",
+        "47735": "AB888X",
+        "47736": "AB888X",
+        "47737": "AB888X",
+        "47739": "AB888X",
+        "47740": "AB888X",
+        "47741": "AB888X",
+        "47744": "AB888X",
+        "47747": "AB888X",
+        "47750": "AB888X",
+        "47801": "AB888X",
+        "47802": "AB888X",
+        "47803": "AB888X",
+        "47804": "AB888X",
+        "47805": "AB888X",
+        "47807": "AB888X",
+        "47808": "AB888X",
+        "47809": "AB888X",
+        "47811": "AB888X",
+        "47812": "AB888X",
+        "47813": "AB888X",
+        "47814": "AB888X",
+        "47830": "AB888X",
+        "47831": "AB888X",
+        "47832": "AB888X",
+        "47833": "AB888X",
+        "47834": "AB888X",
+        "47836": "AB888X",
+        "47837": "AB888X",
+        "47838": "AB888X",
+        "47840": "AB888X",
+        "47841": "AB888X",
+        "47842": "AB888X",
+        "47845": "AB888X",
+        "47846": "AB888X",
+        "47847": "AB888X",
+        "47848": "AB888X",
+        "47849": "AB888X",
+        "47850": "AB888X",
+        "47851": "AB888X",
+        "47852": "AB888X",
+        "47853": "AB888X",
+        "47854": "AB888X",
+        "47855": "AB888X",
+        "47856": "AB888X",
+        "47857": "AB888X",
+        "47858": "AB888X",
+        "47859": "AB888X",
+        "47860": "AB888X",
+        "47861": "AB888X",
+        "47862": "AB888X",
+        "47863": "AB888X",
+        "47864": "AB888X",
+        "47865": "AB888X",
+        "47866": "AB888X",
+        "47868": "AB888X",
+        "47869": "AB888X",
+        "47870": "AB888X",
+        "47871": "AB888X",
+        "47872": "AB888X",
+        "47874": "AB888X",
+        "47875": "AB888X",
+        "47876": "AB888X",
+        "47878": "AB888X",
+        "47879": "AB888X",
+        "47880": "AB888X",
+        "47881": "AB888X",
+        "47882": "AB888X",
+        "47884": "AB888X",
+        "47885": "AB888X",
+        "47901": "AB888X",
+        "47902": "AB888X",
+        "47903": "AB888X",
+        "47904": "AB888X",
+        "47905": "AB888X",
+        "47906": "AB888X",
+        "47907": "AB888X",
+        "47909": "AB888X",
+        "47916": "AB888X",
+        "47917": "AB888X",
+        "47918": "AB888X",
+        "47920": "AB888X",
+        "47921": "AB888X",
+        "47922": "AB888X",
+        "47923": "AB888X",
+        "47924": "AB888X",
+        "47925": "AB888X",
+        "47926": "AB888X",
+        "47928": "AB888X",
+        "47929": "AB888X",
+        "47930": "AB888X",
+        "47932": "AB888X",
+        "47933": "AB888X",
+        "47934": "AB888X",
+        "47935": "AB888X",
+        "47936": "AB888X",
+        "47937": "AB888X",
+        "47938": "AB888X",
+        "47939": "AB888X",
+        "47940": "AB888X",
+        "47941": "AB888X",
+        "47942": "AB888X",
+        "47943": "AB887X",
+        "47944": "AB888X",
+        "47946": "AB888X",
+        "47948": "AB888X",
+        "47949": "AB888X",
+        "47950": "AB888X",
+        "47951": "AB888X",
+        "47952": "AB888X",
+        "47954": "AB888X",
+        "47955": "AB888X",
+        "47957": "AB887X",
+        "47958": "AB888X",
+        "47959": "AB888X",
+        "47960": "AB888X",
+        "47962": "AB888X",
+        "47963": "AB888X",
+        "47964": "AB888X",
+        "47965": "AB888X",
+        "47966": "AB888X",
+        "47967": "AB888X",
+        "47968": "AB888X",
+        "47969": "AB888X",
+        "47970": "AB888X",
+        "47971": "AB888X",
+        "47974": "AB888X",
+        "47975": "AB888X",
+        "47977": "AB888X",
+        "47978": "AB887X",
+        "47980": "AB888X",
+        "47981": "AB888X",
+        "47982": "AB888X",
+        "47983": "AB888X",
+        "47984": "AB888X",
+        "47986": "AB888X",
+        "47987": "AB888X",
+        "47988": "AB888X",
+        "47989": "AB888X",
+        "47990": "AB888X",
+        "47991": "AB888X",
+        "47992": "AB888X",
+        "47993": "AB888X",
+        "47994": "AB888X",
+        "47995": "AB888X",
+        "47996": "AB888X",
+        "47997": "AB888X",
+        "48001": "AB889X",
+        "48002": "AB889X",
+        "48003": "AB889X",
+        "48004": "AB889X",
+        "48005": "AB889X",
+        "48006": "AB889X",
+        "48007": "AB889X",
+        "48009": "AB889X",
+        "48012": "AB889X",
+        "48014": "AB889X",
+        "48015": "AB889X",
+        "48017": "AB889X",
+        "48021": "AB889X",
+        "48022": "AB889X",
+        "48023": "AB889X",
+        "48025": "AB889X",
+        "48026": "AB889X",
+        "48027": "AB889X",
+        "48028": "AB889X",
+        "48030": "AB889X",
+        "48032": "AB889X",
+        "48033": "AB889X",
+        "48034": "AB889X",
+        "48035": "AB889X",
+        "48036": "AB889X",
+        "48037": "AB889X",
+        "48038": "AB889X",
+        "48039": "AB889X",
+        "48040": "AB889X",
+        "48041": "AB889X",
+        "48042": "AB889X",
+        "48043": "AB889X",
+        "48044": "AB889X",
+        "48045": "AB889X",
+        "48046": "AB889X",
+        "48047": "AB889X",
+        "48048": "AB889X",
+        "48049": "AB889X",
+        "48050": "AB889X",
+        "48051": "AB889X",
+        "48054": "AB889X",
+        "48059": "AB889X",
+        "48060": "AB889X",
+        "48061": "AB889X",
+        "48062": "AB889X",
+        "48063": "AB889X",
+        "48064": "AB889X",
+        "48065": "AB889X",
+        "48066": "AB889X",
+        "48067": "AB889X",
+        "48068": "AB889X",
+        "48069": "AB889X",
+        "48070": "AB889X",
+        "48071": "AB889X",
+        "48072": "AB889X",
+        "48073": "AB889X",
+        "48074": "AB889X",
+        "48075": "AB889X",
+        "48076": "AB889X",
+        "48079": "AB889X",
+        "48080": "AB889X",
+        "48081": "AB889X",
+        "48082": "AB889X",
+        "48083": "AB889X",
+        "48084": "AB889X",
+        "48085": "AB889X",
+        "48086": "AB889X",
+        "48088": "AB889X",
+        "48089": "AB889X",
+        "48090": "AB889X",
+        "48091": "AB889X",
+        "48092": "AB889X",
+        "48093": "AB889X",
+        "48094": "AB889X",
+        "48095": "AB889X",
+        "48096": "AB889X",
+        "48097": "AB889X",
+        "48098": "AB889X",
+        "48099": "AB889X",
+        "48101": "AB889X",
+        "48103": "AB889X",
+        "48104": "AB889X",
+        "48105": "AB889X",
+        "48106": "AB889X",
+        "48107": "AB889X",
+        "48108": "AB889X",
+        "48109": "AB889X",
+        "48110": "AB889X",
+        "48111": "AB889X",
+        "48112": "AB889X",
+        "48113": "AB889X",
+        "48114": "AB889X",
+        "48115": "AB889X",
+        "48116": "AB889X",
+        "48117": "AB889X",
+        "48118": "AB889X",
+        "48120": "AB889X",
+        "48121": "AB889X",
+        "48122": "AB889X",
+        "48123": "AB889X",
+        "48124": "AB889X",
+        "48125": "AB889X",
+        "48126": "AB889X",
+        "48127": "AB889X",
+        "48128": "AB889X",
+        "48130": "AB889X",
+        "48131": "AB889X",
+        "48133": "AB889X",
+        "48134": "AB889X",
+        "48135": "AB889X",
+        "48136": "AB889X",
+        "48137": "AB889X",
+        "48138": "AB889X",
+        "48139": "AB889X",
+        "48140": "AB889X",
+        "48141": "AB889X",
+        "48143": "AB889X",
+        "48144": "AB889X",
+        "48145": "AB889X",
+        "48146": "AB889X",
+        "48150": "AB889X",
+        "48151": "AB889X",
+        "48152": "AB889X",
+        "48153": "AB889X",
+        "48154": "AB889X",
+        "48157": "AB889X",
+        "48158": "AB889X",
+        "48159": "AB889X",
+        "48160": "AB889X",
+        "48161": "AB889X",
+        "48162": "AB889X",
+        "48164": "AB889X",
+        "48165": "AB889X",
+        "48166": "AB889X",
+        "48167": "AB889X",
+        "48168": "AB889X",
+        "48169": "AB889X",
+        "48170": "AB889X",
+        "48173": "AB889X",
+        "48174": "AB889X",
+        "48175": "AB889X",
+        "48176": "AB889X",
+        "48177": "AB889X",
+        "48178": "AB889X",
+        "48179": "AB889X",
+        "48180": "AB889X",
+        "48182": "AB889X",
+        "48183": "AB889X",
+        "48184": "AB889X",
+        "48185": "AB889X",
+        "48186": "AB889X",
+        "48187": "AB889X",
+        "48188": "AB889X",
+        "48189": "AB889X",
+        "48190": "AB889X",
+        "48191": "AB889X",
+        "48192": "AB889X",
+        "48193": "AB889X",
+        "48195": "AB889X",
+        "48197": "AB889X",
+        "48198": "AB889X",
+        "48201": "AB889X",
+        "48202": "AB889X",
+        "48203": "AB889X",
+        "48204": "AB889X",
+        "48205": "AB889X",
+        "48206": "AB889X",
+        "48207": "AB889X",
+        "48208": "AB889X",
+        "48209": "AB889X",
+        "48210": "AB889X",
+        "48211": "AB889X",
+        "48212": "AB889X",
+        "48213": "AB889X",
+        "48214": "AB889X",
+        "48215": "AB889X",
+        "48216": "AB889X",
+        "48217": "AB889X",
+        "48218": "AB889X",
+        "48219": "AB889X",
+        "48220": "AB889X",
+        "48221": "AB889X",
+        "48222": "AB889X",
+        "48223": "AB889X",
+        "48224": "AB889X",
+        "48225": "AB889X",
+        "48226": "AB889X",
+        "48227": "AB889X",
+        "48228": "AB889X",
+        "48229": "AB889X",
+        "48230": "AB889X",
+        "48231": "AB889X",
+        "48232": "AB889X",
+        "48233": "AB889X",
+        "48234": "AB889X",
+        "48235": "AB889X",
+        "48236": "AB889X",
+        "48237": "AB889X",
+        "48238": "AB889X",
+        "48239": "AB889X",
+        "48240": "AB889X",
+        "48242": "AB889X",
+        "48243": "AB889X",
+        "48244": "AB889X",
+        "48255": "AB889X",
+        "48260": "AB889X",
+        "48264": "AB889X",
+        "48265": "AB889X",
+        "48266": "AB889X",
+        "48267": "AB889X",
+        "48268": "AB889X",
+        "48269": "AB889X",
+        "48272": "AB889X",
+        "48275": "AB889X",
+        "48277": "AB889X",
+        "48278": "AB889X",
+        "48279": "AB889X",
+        "48283": "AB888X",
+        "48288": "AB889X",
+        "48301": "AB889X",
+        "48302": "AB889X",
+        "48303": "AB889X",
+        "48304": "AB889X",
+        "48306": "AB889X",
+        "48307": "AB889X",
+        "48308": "AB889X",
+        "48309": "AB889X",
+        "48310": "AB889X",
+        "48311": "AB889X",
+        "48312": "AB889X",
+        "48313": "AB889X",
+        "48314": "AB889X",
+        "48315": "AB889X",
+        "48316": "AB889X",
+        "48317": "AB889X",
+        "48318": "AB889X",
+        "48320": "AB889X",
+        "48321": "AB889X",
+        "48322": "AB889X",
+        "48323": "AB889X",
+        "48324": "AB889X",
+        "48325": "AB889X",
+        "48326": "AB889X",
+        "48327": "AB889X",
+        "48328": "AB889X",
+        "48329": "AB889X",
+        "48330": "AB889X",
+        "48331": "AB889X",
+        "48332": "AB889X",
+        "48333": "AB889X",
+        "48334": "AB889X",
+        "48335": "AB889X",
+        "48336": "AB889X",
+        "48340": "AB889X",
+        "48341": "AB889X",
+        "48342": "AB889X",
+        "48343": "AB889X",
+        "48346": "AB889X",
+        "48347": "AB889X",
+        "48348": "AB889X",
+        "48350": "AB889X",
+        "48353": "AB889X",
+        "48356": "AB889X",
+        "48357": "AB889X",
+        "48359": "AB889X",
+        "48360": "AB889X",
+        "48361": "AB889X",
+        "48362": "AB889X",
+        "48363": "AB889X",
+        "48366": "AB889X",
+        "48367": "AB889X",
+        "48370": "AB889X",
+        "48371": "AB889X",
+        "48374": "AB889X",
+        "48375": "AB889X",
+        "48376": "AB889X",
+        "48377": "AB889X",
+        "48380": "AB889X",
+        "48381": "AB889X",
+        "48382": "AB889X",
+        "48383": "AB889X",
+        "48386": "AB889X",
+        "48387": "AB889X",
+        "48390": "AB889X",
+        "48391": "AB889X",
+        "48393": "AB889X",
+        "48397": "AB889X",
+        "48401": "AB889X",
+        "48410": "AB889X",
+        "48411": "AB889X",
+        "48412": "AB889X",
+        "48413": "AB889X",
+        "48414": "AB889X",
+        "48415": "AB889X",
+        "48416": "AB889X",
+        "48417": "AB889X",
+        "48418": "AB889X",
+        "48419": "AB889X",
+        "48420": "AB889X",
+        "48421": "AB889X",
+        "48422": "AB889X",
+        "48423": "AB889X",
+        "48426": "AB889X",
+        "48427": "AB889X",
+        "48428": "AB889X",
+        "48429": "AB889X",
+        "48430": "AB889X",
+        "48432": "AB889X",
+        "48433": "AB889X",
+        "48434": "AB889X",
+        "48435": "AB889X",
+        "48436": "AB889X",
+        "48437": "AB889X",
+        "48438": "AB889X",
+        "48439": "AB889X",
+        "48440": "AB889X",
+        "48441": "AB889X",
+        "48442": "AB889X",
+        "48444": "AB889X",
+        "48445": "AB889X",
+        "48446": "AB889X",
+        "48449": "AB889X",
+        "48450": "AB889X",
+        "48451": "AB889X",
+        "48453": "AB889X",
+        "48454": "AB889X",
+        "48455": "AB889X",
+        "48456": "AB889X",
+        "48457": "AB889X",
+        "48458": "AB889X",
+        "48460": "AB889X",
+        "48461": "AB889X",
+        "48462": "AB889X",
+        "48463": "AB889X",
+        "48464": "AB889X",
+        "48465": "AB888X",
+        "48466": "AB889X",
+        "48467": "AB889X",
+        "48468": "AB889X",
+        "48469": "AB889X",
+        "48470": "AB889X",
+        "48471": "AB889X",
+        "48472": "AB889X",
+        "48473": "AB889X",
+        "48475": "AB889X",
+        "48476": "AB889X",
+        "48480": "AB889X",
+        "48501": "AB889X",
+        "48502": "AB889X",
+        "48503": "AB887X",
+        "48504": "AB889X",
+        "48505": "AB889X",
+        "48506": "AB889X",
+        "48507": "AB889X",
+        "48509": "AB889X",
+        "48519": "AB889X",
+        "48529": "AB889X",
+        "48531": "AB889X",
+        "48532": "AB889X",
+        "48550": "AB889X",
+        "48551": "AB889X",
+        "48552": "AB889X",
+        "48553": "AB889X",
+        "48554": "AB889X",
+        "48555": "AB889X",
+        "48556": "AB889X",
+        "48557": "AB889X",
+        "48559": "AB889X",
+        "48601": "AB889X",
+        "48602": "AB889X",
+        "48603": "AB889X",
+        "48604": "AB889X",
+        "48605": "AB889X",
+        "48606": "AB889X",
+        "48607": "AB889X",
+        "48608": "AB889X",
+        "48609": "AB889X",
+        "48610": "AB889X",
+        "48611": "AB889X",
+        "48612": "AB889X",
+        "48613": "AB889X",
+        "48614": "AB889X",
+        "48615": "AB889X",
+        "48616": "AB889X",
+        "48617": "AB889X",
+        "48618": "AB889X",
+        "48619": "AB889X",
+        "48620": "AB889X",
+        "48621": "AB889X",
+        "48622": "AB889X",
+        "48623": "AB889X",
+        "48624": "AB889X",
+        "48625": "AB889X",
+        "48626": "AB889X",
+        "48627": "AB889X",
+        "48628": "AB889X",
+        "48629": "AB889X",
+        "48630": "AB889X",
+        "48631": "AB889X",
+        "48632": "AB889X",
+        "48633": "AB889X",
+        "48634": "AB889X",
+        "48635": "AB889X",
+        "48636": "AB889X",
+        "48637": "AB889X",
+        "48638": "AB889X",
+        "48640": "AB889X",
+        "48641": "AB889X",
+        "48642": "AB889X",
+        "48647": "AB889X",
+        "48649": "AB889X",
+        "48650": "AB889X",
+        "48651": "AB889X",
+        "48652": "AB889X",
+        "48653": "AB889X",
+        "48654": "AB889X",
+        "48655": "AB889X",
+        "48656": "AB889X",
+        "48657": "AB889X",
+        "48658": "AB889X",
+        "48659": "AB889X",
+        "48661": "AB889X",
+        "48662": "AB889X",
+        "48663": "AB889X",
+        "48667": "AB889X",
+        "48670": "AB889X",
+        "48674": "AB889X",
+        "48686": "AB889X",
+        "48701": "AB889X",
+        "48703": "AB889X",
+        "48705": "AB889X",
+        "48706": "AB889X",
+        "48707": "AB889X",
+        "48708": "AB889X",
+        "48710": "AB889X",
+        "48720": "AB889X",
+        "48721": "AB889X",
+        "48722": "AB889X",
+        "48723": "AB889X",
+        "48724": "AB889X",
+        "48725": "AB889X",
+        "48726": "AB889X",
+        "48727": "AB889X",
+        "48728": "AB889X",
+        "48729": "AB889X",
+        "48730": "AB889X",
+        "48731": "AB889X",
+        "48732": "AB889X",
+        "48733": "AB889X",
+        "48734": "AB889X",
+        "48735": "AB889X",
+        "48736": "AB889X",
+        "48737": "AB889X",
+        "48738": "AB889X",
+        "48739": "AB889X",
+        "48740": "AB889X",
+        "48741": "AB889X",
+        "48742": "AB889X",
+        "48743": "AB889X",
+        "48744": "AB889X",
+        "48745": "AB889X",
+        "48746": "AB889X",
+        "48747": "AB889X",
+        "48748": "AB889X",
+        "48749": "AB889X",
+        "48750": "AB889X",
+        "48754": "AB889X",
+        "48755": "AB889X",
+        "48756": "AB889X",
+        "48757": "AB889X",
+        "48758": "AB889X",
+        "48759": "AB889X",
+        "48760": "AB889X",
+        "48761": "AB889X",
+        "48762": "AB889X",
+        "48763": "AB889X",
+        "48764": "AB889X",
+        "48765": "AB889X",
+        "48766": "AB889X",
+        "48767": "AB889X",
+        "48768": "AB889X",
+        "48769": "AB889X",
+        "48770": "AB889X",
+        "48787": "AB889X",
+        "48801": "AB889X",
+        "48802": "AB889X",
+        "48804": "AB889X",
+        "48805": "AB889X",
+        "48806": "AB889X",
+        "48807": "AB889X",
+        "48808": "AB889X",
+        "48809": "AB889X",
+        "48811": "AB889X",
+        "48812": "AB889X",
+        "48813": "AB889X",
+        "48815": "AB889X",
+        "48816": "AB889X",
+        "48817": "AB889X",
+        "48818": "AB889X",
+        "48819": "AB889X",
+        "48820": "AB889X",
+        "48821": "AB889X",
+        "48822": "AB889X",
+        "48823": "AB889X",
+        "48824": "AB889X",
+        "48825": "AB889X",
+        "48826": "AB889X",
+        "48827": "AB887X",
+        "48829": "AB889X",
+        "48830": "AB889X",
+        "48831": "AB889X",
+        "48832": "AB889X",
+        "48833": "AB889X",
+        "48834": "AB889X",
+        "48835": "AB889X",
+        "48836": "AB889X",
+        "48837": "AB889X",
+        "48838": "AB889X",
+        "48839": "AB889X",
+        "48840": "AB889X",
+        "48841": "AB889X",
+        "48842": "AB889X",
+        "48843": "AB889X",
+        "48844": "AB889X",
+        "48845": "AB889X",
+        "48846": "AB889X",
+        "48847": "AB889X",
+        "48848": "AB889X",
+        "48849": "AB889X",
+        "48850": "AB889X",
+        "48851": "AB889X",
+        "48852": "AB889X",
+        "48853": "AB889X",
+        "48854": "AB889X",
+        "48855": "AB889X",
+        "48856": "AB889X",
+        "48857": "AB889X",
+        "48858": "AB889X",
+        "48859": "AB889X",
+        "48860": "AB889X",
+        "48861": "AB889X",
+        "48862": "AB889X",
+        "48863": "AB889X",
+        "48864": "AB889X",
+        "48865": "AB889X",
+        "48866": "AB889X",
+        "48867": "AB889X",
+        "48870": "AB889X",
+        "48871": "AB889X",
+        "48872": "AB889X",
+        "48873": "AB889X",
+        "48874": "AB889X",
+        "48875": "AB889X",
+        "48876": "AB889X",
+        "48877": "AB889X",
+        "48878": "AB889X",
+        "48879": "AB889X",
+        "48880": "AB889X",
+        "48881": "AB889X",
+        "48882": "AB889X",
+        "48883": "AB889X",
+        "48884": "AB889X",
+        "48885": "AB889X",
+        "48886": "AB889X",
+        "48887": "AB889X",
+        "48888": "AB889X",
+        "48889": "AB889X",
+        "48890": "AB889X",
+        "48891": "AB889X",
+        "48892": "AB889X",
+        "48893": "AB889X",
+        "48894": "AB889X",
+        "48895": "AB889X",
+        "48896": "AB889X",
+        "48897": "AB889X",
+        "48901": "AB889X",
+        "48906": "AB889X",
+        "48907": "AB889X",
+        "48908": "AB889X",
+        "48909": "AB889X",
+        "48910": "AB889X",
+        "48911": "AB889X",
+        "48912": "AB889X",
+        "48913": "AB889X",
+        "48915": "AB889X",
+        "48916": "AB889X",
+        "48917": "AB889X",
+        "48918": "AB889X",
+        "48919": "AB889X",
+        "48921": "AB889X",
+        "48922": "AB889X",
+        "48924": "AB889X",
+        "48929": "AB889X",
+        "48930": "AB889X",
+        "48933": "AB889X",
+        "48937": "AB889X",
+        "48950": "AB889X",
+        "48951": "AB889X",
+        "48956": "AB889X",
+        "48980": "AB889X",
+        "49001": "AB889X",
+        "49002": "AB889X",
+        "49003": "AB889X",
+        "49004": "AB889X",
+        "49005": "AB889X",
+        "49006": "AB889X",
+        "49007": "AB889X",
+        "49008": "AB889X",
+        "49009": "AB889X",
+        "49010": "AB889X",
+        "49011": "AB889X",
+        "49012": "AB889X",
+        "49013": "AB889X",
+        "49014": "AB889X",
+        "49015": "AB889X",
+        "49016": "AB889X",
+        "49017": "AB889X",
+        "49018": "AB889X",
+        "49019": "AB889X",
+        "49020": "AB889X",
+        "49021": "AB889X",
+        "49022": "AB887X",
+        "49023": "AB889X",
+        "49024": "AB889X",
+        "49026": "AB889X",
+        "49027": "AB889X",
+        "49028": "AB889X",
+        "49029": "AB889X",
+        "49030": "AB889X",
+        "49031": "AB887X",
+        "49032": "AB889X",
+        "49033": "AB889X",
+        "49034": "AB889X",
+        "49035": "AB889X",
+        "49036": "AB889X",
+        "49038": "AB887X",
+        "49039": "AB887X",
+        "49040": "AB889X",
+        "49041": "AB889X",
+        "49042": "AB889X",
+        "49043": "AB889X",
+        "49045": "AB889X",
+        "49046": "AB889X",
+        "49047": "AB887X",
+        "49048": "AB889X",
+        "49050": "AB889X",
+        "49051": "AB889X",
+        "49052": "AB889X",
+        "49053": "AB889X",
+        "49055": "AB889X",
+        "49056": "AB889X",
+        "49057": "AB887X",
+        "49058": "AB889X",
+        "49060": "AB889X",
+        "49061": "AB887X",
+        "49062": "AB889X",
+        "49063": "AB889X",
+        "49064": "AB889X",
+        "49065": "AB889X",
+        "49066": "AB889X",
+        "49067": "AB889X",
+        "49068": "AB889X",
+        "49069": "AB889X",
+        "49070": "AB889X",
+        "49071": "AB889X",
+        "49072": "AB889X",
+        "49073": "AB889X",
+        "49074": "AB889X",
+        "49075": "AB889X",
+        "49076": "AB889X",
+        "49077": "AB889X",
+        "49078": "AB889X",
+        "49079": "AB889X",
+        "49080": "AB889X",
+        "49081": "AB889X",
+        "49082": "AB889X",
+        "49083": "AB889X",
+        "49084": "AB887X",
+        "49085": "AB887X",
+        "49087": "AB889X",
+        "49088": "AB889X",
+        "49089": "AB889X",
+        "49090": "AB889X",
+        "49091": "AB889X",
+        "49092": "AB889X",
+        "49093": "AB889X",
+        "49094": "AB889X",
+        "49095": "AB887X",
+        "49096": "AB889X",
+        "49097": "AB889X",
+        "49098": "AB887X",
+        "49099": "AB889X",
+        "49101": "AB887X",
+        "49102": "AB887X",
+        "49103": "AB887X",
+        "49104": "AB887X",
+        "49106": "AB887X",
+        "49107": "AB887X",
+        "49111": "AB887X",
+        "49112": "AB887X",
+        "49113": "AB887X",
+        "49115": "AB887X",
+        "49116": "AB887X",
+        "49117": "AB887X",
+        "49119": "AB887X",
+        "49120": "AB887X",
+        "49121": "AB887X",
+        "49125": "AB887X",
+        "49126": "AB887X",
+        "49127": "AB887X",
+        "49128": "AB887X",
+        "49129": "AB887X",
+        "49130": "AB887X",
+        "49201": "AB889X",
+        "49202": "AB889X",
+        "49203": "AB889X",
+        "49204": "AB889X",
+        "49220": "AB890X",
+        "49221": "AB890X",
+        "49224": "AB889X",
+        "49227": "AB889X",
+        "49228": "AB890X",
+        "49229": "AB890X",
+        "49230": "AB890X",
+        "49232": "AB889X",
+        "49233": "AB890X",
+        "49234": "AB889X",
+        "49235": "AB890X",
+        "49236": "AB890X",
+        "49237": "AB889X",
+        "49238": "AB890X",
+        "49239": "AB889X",
+        "49240": "AB889X",
+        "49241": "AB889X",
+        "49242": "AB889X",
+        "49245": "AB889X",
+        "49246": "AB889X",
+        "49247": "AB890X",
+        "49248": "AB890X",
+        "49249": "AB889X",
+        "49250": "AB889X",
+        "49251": "AB889X",
+        "49252": "AB889X",
+        "49253": "AB890X",
+        "49254": "AB889X",
+        "49255": "AB889X",
+        "49256": "AB890X",
+        "49257": "AB889X",
+        "49258": "AB889X",
+        "49259": "AB889X",
+        "49261": "AB889X",
+        "49262": "AB889X",
+        "49263": "AB889X",
+        "49264": "AB889X",
+        "49265": "AB890X",
+        "49266": "AB889X",
+        "49267": "AB889X",
+        "49268": "AB890X",
+        "49269": "AB889X",
+        "49270": "AB889X",
+        "49271": "AB889X",
+        "49272": "AB889X",
+        "49274": "AB889X",
+        "49276": "AB890X",
+        "49277": "AB889X",
+        "49279": "AB890X",
+        "49281": "AB889X",
+        "49282": "AB889X",
+        "49283": "AB889X",
+        "49284": "AB889X",
+        "49285": "AB889X",
+        "49286": "AB890X",
+        "49287": "AB890X",
+        "49288": "AB889X",
+        "49289": "AB890X",
+        "49301": "AB889X",
+        "49302": "AB889X",
+        "49303": "AB889X",
+        "49304": "AB889X",
+        "49305": "AB889X",
+        "49306": "AB889X",
+        "49307": "AB889X",
+        "49309": "AB889X",
+        "49310": "AB889X",
+        "49311": "AB889X",
+        "49312": "AB889X",
+        "49314": "AB889X",
+        "49315": "AB889X",
+        "49316": "AB889X",
+        "49317": "AB889X",
+        "49318": "AB889X",
+        "49319": "AB889X",
+        "49320": "AB889X",
+        "49321": "AB889X",
+        "49322": "AB889X",
+        "49323": "AB889X",
+        "49325": "AB889X",
+        "49326": "AB889X",
+        "49327": "AB889X",
+        "49328": "AB889X",
+        "49329": "AB889X",
+        "49330": "AB889X",
+        "49331": "AB889X",
+        "49332": "AB889X",
+        "49333": "AB889X",
+        "49335": "AB889X",
+        "49336": "AB889X",
+        "49337": "AB889X",
+        "49338": "AB889X",
+        "49339": "AB889X",
+        "49340": "AB889X",
+        "49341": "AB889X",
+        "49342": "AB889X",
+        "49343": "AB889X",
+        "49344": "AB889X",
+        "49345": "AB889X",
+        "49346": "AB889X",
+        "49347": "AB889X",
+        "49348": "AB889X",
+        "49349": "AB889X",
+        "49351": "AB889X",
+        "49355": "AB889X",
+        "49356": "AB889X",
+        "49357": "AB889X",
+        "49401": "AB889X",
+        "49402": "AB889X",
+        "49403": "AB889X",
+        "49404": "AB889X",
+        "49405": "AB889X",
+        "49406": "AB889X",
+        "49408": "AB889X",
+        "49409": "AB889X",
+        "49410": "AB889X",
+        "49411": "AB889X",
+        "49412": "AB889X",
+        "49413": "AB889X",
+        "49415": "AB889X",
+        "49416": "AB889X",
+        "49417": "AB889X",
+        "49418": "AB889X",
+        "49419": "AB889X",
+        "49420": "AB889X",
+        "49421": "AB889X",
+        "49422": "AB889X",
+        "49423": "AB889X",
+        "49424": "AB889X",
+        "49425": "AB889X",
+        "49426": "AB889X",
+        "49427": "AB889X",
+        "49428": "AB889X",
+        "49429": "AB889X",
+        "49430": "AB889X",
+        "49431": "AB889X",
+        "49434": "AB889X",
+        "49435": "AB889X",
+        "49436": "AB889X",
+        "49437": "AB889X",
+        "49440": "AB889X",
+        "49441": "AB889X",
+        "49442": "AB889X",
+        "49443": "AB889X",
+        "49444": "AB889X",
+        "49445": "AB889X",
+        "49446": "AB889X",
+        "49448": "AB889X",
+        "49449": "AB889X",
+        "49450": "AB889X",
+        "49451": "AB889X",
+        "49452": "AB889X",
+        "49453": "AB889X",
+        "49454": "AB889X",
+        "49455": "AB889X",
+        "49456": "AB889X",
+        "49457": "AB889X",
+        "49458": "AB889X",
+        "49459": "AB889X",
+        "49460": "AB889X",
+        "49461": "AB889X",
+        "49463": "AB889X",
+        "49464": "AB889X",
+        "49468": "AB889X",
+        "49501": "AB889X",
+        "49502": "AB889X",
+        "49503": "AB889X",
+        "49504": "AB889X",
+        "49505": "AB889X",
+        "49506": "AB889X",
+        "49507": "AB889X",
+        "49508": "AB889X",
+        "49509": "AB889X",
+        "49510": "AB889X",
+        "49512": "AB889X",
+        "49514": "AB889X",
+        "49515": "AB889X",
+        "49516": "AB889X",
+        "49518": "AB889X",
+        "49519": "AB889X",
+        "49523": "AB889X",
+        "49525": "AB889X",
+        "49528": "AB889X",
+        "49530": "AB889X",
+        "49534": "AB889X",
+        "49544": "AB889X",
+        "49546": "AB889X",
+        "49548": "AB889X",
+        "49550": "AB889X",
+        "49555": "AB889X",
+        "49560": "AB889X",
+        "49588": "AB889X",
+        "49599": "AB889X",
+        "49601": "AB889X",
+        "49610": "AB889X",
+        "49611": "AB889X",
+        "49612": "AB889X",
+        "49613": "AB889X",
+        "49614": "AB889X",
+        "49615": "AB889X",
+        "49616": "AB889X",
+        "49617": "AB889X",
+        "49618": "AB889X",
+        "49619": "AB889X",
+        "49620": "AB889X",
+        "49621": "AB889X",
+        "49622": "AB889X",
+        "49623": "AB889X",
+        "49625": "AB889X",
+        "49626": "AB889X",
+        "49627": "AB889X",
+        "49628": "AB889X",
+        "49629": "AB889X",
+        "49630": "AB889X",
+        "49631": "AB889X",
+        "49632": "AB889X",
+        "49633": "AB889X",
+        "49634": "AB889X",
+        "49635": "AB889X",
+        "49636": "AB889X",
+        "49637": "AB889X",
+        "49638": "AB889X",
+        "49639": "AB889X",
+        "49640": "AB889X",
+        "49642": "AB889X",
+        "49643": "AB889X",
+        "49644": "AB889X",
+        "49645": "AB889X",
+        "49646": "AB889X",
+        "49648": "AB889X",
+        "49649": "AB889X",
+        "49650": "AB889X",
+        "49651": "AB889X",
+        "49653": "AB889X",
+        "49654": "AB889X",
+        "49655": "AB889X",
+        "49656": "AB889X",
+        "49657": "AB889X",
+        "49659": "AB889X",
+        "49660": "AB889X",
+        "49663": "AB889X",
+        "49664": "AB889X",
+        "49665": "AB889X",
+        "49666": "AB889X",
+        "49667": "AB889X",
+        "49668": "AB889X",
+        "49670": "AB889X",
+        "49673": "AB889X",
+        "49674": "AB889X",
+        "49675": "AB889X",
+        "49676": "AB889X",
+        "49677": "AB889X",
+        "49679": "AB889X",
+        "49680": "AB889X",
+        "49682": "AB889X",
+        "49683": "AB889X",
+        "49684": "AB889X",
+        "49685": "AB889X",
+        "49686": "AB889X",
+        "49688": "AB889X",
+        "49689": "AB889X",
+        "49690": "AB889X",
+        "49696": "AB889X",
+        "49701": "AB889X",
+        "49705": "AB889X",
+        "49706": "AB889X",
+        "49707": "AB889X",
+        "49709": "AB889X",
+        "49710": "AB889X",
+        "49711": "AB889X",
+        "49712": "AB889X",
+        "49713": "AB889X",
+        "49715": "AB889X",
+        "49716": "AB889X",
+        "49717": "AB889X",
+        "49718": "AB889X",
+        "49719": "AB887X",
+        "49720": "AB889X",
+        "49721": "AB889X",
+        "49722": "AB889X",
+        "49723": "AB889X",
+        "49724": "AB889X",
+        "49725": "AB889X",
+        "49726": "AB889X",
+        "49727": "AB889X",
+        "49728": "AB889X",
+        "49729": "AB889X",
+        "49730": "AB889X",
+        "49733": "AB889X",
+        "49734": "AB889X",
+        "49735": "AB889X",
+        "49736": "AB889X",
+        "49737": "AB889X",
+        "49738": "AB889X",
+        "49739": "AB889X",
+        "49740": "AB889X",
+        "49743": "AB889X",
+        "49744": "AB889X",
+        "49745": "AB887X",
+        "49746": "AB889X",
+        "49747": "AB889X",
+        "49748": "AB889X",
+        "49749": "AB889X",
+        "49751": "AB889X",
+        "49752": "AB889X",
+        "49753": "AB889X",
+        "49755": "AB889X",
+        "49756": "AB889X",
+        "49757": "AB887X",
+        "49759": "AB889X",
+        "49760": "AB887X",
+        "49761": "AB889X",
+        "49762": "AB887X",
+        "49764": "AB889X",
+        "49765": "AB889X",
+        "49766": "AB889X",
+        "49768": "AB889X",
+        "49769": "AB889X",
+        "49770": "AB889X",
+        "49774": "AB889X",
+        "49775": "AB887X",
+        "49776": "AB889X",
+        "49777": "AB889X",
+        "49779": "AB889X",
+        "49780": "AB889X",
+        "49781": "AB889X",
+        "49782": "AB889X",
+        "49783": "AB889X",
+        "49784": "AB889X",
+        "49785": "AB889X",
+        "49786": "AB889X",
+        "49788": "AB889X",
+        "49790": "AB889X",
+        "49791": "AB889X",
+        "49792": "AB889X",
+        "49793": "AB889X",
+        "49795": "AB889X",
+        "49796": "AB889X",
+        "49797": "AB889X",
+        "49799": "AB889X",
+        "49801": "AB887X",
+        "49802": "AB887X",
+        "49805": "AB887X",
+        "49806": "AB887X",
+        "49807": "AB887X",
+        "49808": "AB887X",
+        "49812": "AB887X",
+        "49814": "AB887X",
+        "49815": "AB887X",
+        "49816": "AB887X",
+        "49817": "AB887X",
+        "49818": "AB887X",
+        "49819": "AB887X",
+        "49820": "AB887X",
+        "49821": "AB887X",
+        "49822": "AB887X",
+        "49825": "AB887X",
+        "49826": "AB887X",
+        "49827": "AB887X",
+        "49829": "AB887X",
+        "49831": "AB887X",
+        "49833": "AB887X",
+        "49834": "AB887X",
+        "49835": "AB887X",
+        "49836": "AB887X",
+        "49837": "AB887X",
+        "49838": "AB887X",
+        "49839": "AB887X",
+        "49840": "AB887X",
+        "49841": "AB887X",
+        "49845": "AB887X",
+        "49847": "AB887X",
+        "49848": "AB887X",
+        "49849": "AB887X",
+        "49852": "AB887X",
+        "49853": "AB887X",
+        "49854": "AB887X",
+        "49855": "AB887X",
+        "49858": "AB887X",
+        "49861": "AB887X",
+        "49862": "AB887X",
+        "49863": "AB887X",
+        "49864": "AB887X",
+        "49865": "AB887X",
+        "49866": "AB887X",
+        "49868": "AB887X",
+        "49870": "AB887X",
+        "49871": "AB887X",
+        "49872": "AB887X",
+        "49873": "AB887X",
+        "49874": "AB887X",
+        "49876": "AB887X",
+        "49877": "AB887X",
+        "49878": "AB887X",
+        "49879": "AB887X",
+        "49880": "AB887X",
+        "49881": "AB887X",
+        "49883": "AB887X",
+        "49884": "AB887X",
+        "49885": "AB887X",
+        "49886": "AB887X",
+        "49887": "AB887X",
+        "49891": "AB887X",
+        "49892": "AB887X",
+        "49893": "AB887X",
+        "49894": "AB887X",
+        "49895": "AB887X",
+        "49896": "AB887X",
+        "49901": "AB887X",
+        "49902": "AB887X",
+        "49903": "AB887X",
+        "49905": "AB887X",
+        "49908": "AB887X",
+        "49910": "AB889X",
+        "49911": "AB889X",
+        "49912": "AB889X",
+        "49913": "AB887X",
+        "49915": "AB887X",
+        "49916": "AB887X",
+        "49917": "AB887X",
+        "49918": "AB887X",
+        "49919": "AB887X",
+        "49920": "AB887X",
+        "49921": "AB887X",
+        "49922": "AB887X",
+        "49925": "AB889X",
+        "49927": "AB887X",
+        "49929": "AB889X",
+        "49930": "AB887X",
+        "49931": "AB887X",
+        "49934": "AB887X",
+        "49935": "AB887X",
+        "49938": "AB889X",
+        "49942": "AB887X",
+        "49945": "AB887X",
+        "49946": "AB887X",
+        "49947": "AB889X",
+        "49948": "AB887X",
+        "49950": "AB887X",
+        "49952": "AB887X",
+        "49953": "AB887X",
+        "49955": "AB887X",
+        "49958": "AB887X",
+        "49959": "AB889X",
+        "49960": "AB889X",
+        "49961": "AB887X",
+        "49962": "AB887X",
+        "49963": "AB887X",
+        "49964": "AB887X",
+        "49965": "AB887X",
+        "49967": "AB889X",
+        "49968": "AB889X",
+        "49969": "AB889X",
+        "49970": "AB887X",
+        "49971": "AB889X",
+        "50001": "AB888X",
+        "50002": "AB888X",
+        "50003": "AB888X",
+        "50005": "AB888X",
+        "50006": "AB888X",
+        "50007": "AB888X",
+        "50008": "AB888X",
+        "50009": "AB888X",
+        "50010": "AB888X",
+        "50011": "AB888X",
+        "50012": "AB888X",
+        "50013": "AB888X",
+        "50014": "AB888X",
+        "50020": "AB888X",
+        "50021": "AB888X",
+        "50022": "AB888X",
+        "50023": "AB888X",
+        "50025": "AB888X",
+        "50026": "AB888X",
+        "50027": "AB888X",
+        "50028": "AB888X",
+        "50029": "AB888X",
+        "50031": "AB888X",
+        "50032": "AB888X",
+        "50033": "AB888X",
+        "50034": "AB888X",
+        "50035": "AB888X",
+        "50036": "AB888X",
+        "50037": "AB888X",
+        "50038": "AB888X",
+        "50039": "AB888X",
+        "50040": "AB888X",
+        "50041": "AB888X",
+        "50042": "AB888X",
+        "50043": "AB888X",
+        "50044": "AB888X",
+        "50046": "AB888X",
+        "50047": "AB888X",
+        "50048": "AB888X",
+        "50049": "AB888X",
+        "50050": "AB888X",
+        "50051": "AB888X",
+        "50052": "AB888X",
+        "50054": "AB888X",
+        "50055": "AB888X",
+        "50056": "AB888X",
+        "50057": "AB888X",
+        "50058": "AB888X",
+        "50059": "AB888X",
+        "50060": "AB888X",
+        "50061": "AB888X",
+        "50062": "AB888X",
+        "50063": "AB888X",
+        "50064": "AB888X",
+        "50065": "AB888X",
+        "50066": "AB888X",
+        "50067": "AB888X",
+        "50068": "AB888X",
+        "50069": "AB888X",
+        "50070": "AB888X",
+        "50071": "AB888X",
+        "50072": "AB888X",
+        "50073": "AB888X",
+        "50074": "AB888X",
+        "50075": "AB888X",
+        "50076": "AB888X",
+        "50078": "AB888X",
+        "50101": "AB888X",
+        "50102": "AB888X",
+        "50103": "AB888X",
+        "50104": "AB888X",
+        "50105": "AB888X",
+        "50106": "AB888X",
+        "50107": "AB888X",
+        "50108": "AB888X",
+        "50109": "AB888X",
+        "50110": "AB888X",
+        "50111": "AB888X",
+        "50112": "AB888X",
+        "50115": "AB888X",
+        "50116": "AB888X",
+        "50117": "AB888X",
+        "50118": "AB888X",
+        "50119": "AB888X",
+        "50120": "AB888X",
+        "50122": "AB888X",
+        "50123": "AB888X",
+        "50124": "AB888X",
+        "50125": "AB888X",
+        "50126": "AB888X",
+        "50127": "AB888X",
+        "50128": "AB888X",
+        "50129": "AB888X",
+        "50130": "AB888X",
+        "50131": "AB888X",
+        "50132": "AB888X",
+        "50133": "AB888X",
+        "50134": "AB888X",
+        "50135": "AB888X",
+        "50136": "AB888X",
+        "50137": "AB888X",
+        "50138": "AB888X",
+        "50139": "AB888X",
+        "50140": "AB888X",
+        "50141": "AB888X",
+        "50142": "AB888X",
+        "50143": "AB888X",
+        "50144": "AB888X",
+        "50145": "AB888X",
+        "50146": "AB888X",
+        "50147": "AB888X",
+        "50148": "AB888X",
+        "50149": "AB888X",
+        "50150": "AB888X",
+        "50151": "AB888X",
+        "50152": "AB888X",
+        "50153": "AB888X",
+        "50154": "AB888X",
+        "50155": "AB888X",
+        "50156": "AB888X",
+        "50157": "AB888X",
+        "50158": "AB888X",
+        "50160": "AB888X",
+        "50161": "AB888X",
+        "50162": "AB888X",
+        "50163": "AB888X",
+        "50164": "AB888X",
+        "50165": "AB888X",
+        "50166": "AB888X",
+        "50167": "AB888X",
+        "50168": "AB888X",
+        "50169": "AB888X",
+        "50170": "AB888X",
+        "50171": "AB888X",
+        "50173": "AB888X",
+        "50174": "AB888X",
+        "50201": "AB888X",
+        "50206": "AB888X",
+        "50207": "AB888X",
+        "50208": "AB888X",
+        "50210": "AB888X",
+        "50211": "AB888X",
+        "50212": "AB888X",
+        "50213": "AB888X",
+        "50214": "AB888X",
+        "50216": "AB888X",
+        "50217": "AB888X",
+        "50218": "AB888X",
+        "50219": "AB888X",
+        "50220": "AB888X",
+        "50222": "AB888X",
+        "50223": "AB888X",
+        "50225": "AB888X",
+        "50226": "AB888X",
+        "50227": "AB888X",
+        "50228": "AB888X",
+        "50229": "AB888X",
+        "50230": "AB888X",
+        "50231": "AB888X",
+        "50232": "AB888X",
+        "50233": "AB888X",
+        "50234": "AB888X",
+        "50235": "AB888X",
+        "50236": "AB888X",
+        "50237": "AB888X",
+        "50238": "AB888X",
+        "50239": "AB888X",
+        "50240": "AB888X",
+        "50241": "AB888X",
+        "50242": "AB888X",
+        "50243": "AB888X",
+        "50244": "AB888X",
+        "50246": "AB888X",
+        "50247": "AB888X",
+        "50248": "AB888X",
+        "50249": "AB888X",
+        "50250": "AB888X",
+        "50251": "AB888X",
+        "50252": "AB888X",
+        "50254": "AB888X",
+        "50255": "AB888X",
+        "50256": "AB888X",
+        "50257": "AB888X",
+        "50258": "AB888X",
+        "50259": "AB888X",
+        "50261": "AB888X",
+        "50262": "AB888X",
+        "50263": "AB888X",
+        "50264": "AB888X",
+        "50265": "AB888X",
+        "50266": "AB888X",
+        "50268": "AB888X",
+        "50269": "AB888X",
+        "50271": "AB888X",
+        "50272": "AB888X",
+        "50273": "AB888X",
+        "50274": "AB888X",
+        "50275": "AB888X",
+        "50276": "AB888X",
+        "50277": "AB888X",
+        "50278": "AB888X",
+        "50301": "AB888X",
+        "50302": "AB888X",
+        "50303": "AB888X",
+        "50304": "AB888X",
+        "50305": "AB888X",
+        "50306": "AB888X",
+        "50307": "AB888X",
+        "50308": "AB888X",
+        "50309": "AB888X",
+        "50310": "AB888X",
+        "50311": "AB888X",
+        "50312": "AB888X",
+        "50313": "AB888X",
+        "50314": "AB888X",
+        "50315": "AB888X",
+        "50316": "AB888X",
+        "50317": "AB888X",
+        "50318": "AB888X",
+        "50319": "AB888X",
+        "50320": "AB888X",
+        "50321": "AB888X",
+        "50322": "AB888X",
+        "50323": "AB888X",
+        "50324": "AB888X",
+        "50325": "AB888X",
+        "50327": "AB888X",
+        "50328": "AB888X",
+        "50329": "AB888X",
+        "50330": "AB888X",
+        "50331": "AB888X",
+        "50332": "AB888X",
+        "50333": "AB888X",
+        "50334": "AB888X",
+        "50335": "AB888X",
+        "50336": "AB888X",
+        "50339": "AB888X",
+        "50340": "AB888X",
+        "50347": "AB888X",
+        "50350": "AB888X",
+        "50359": "AB888X",
+        "50360": "AB888X",
+        "50361": "AB888X",
+        "50362": "AB888X",
+        "50363": "AB888X",
+        "50364": "AB888X",
+        "50367": "AB888X",
+        "50368": "AB888X",
+        "50369": "AB888X",
+        "50380": "AB888X",
+        "50381": "AB888X",
+        "50391": "AB888X",
+        "50392": "AB888X",
+        "50393": "AB888X",
+        "50394": "AB888X",
+        "50395": "AB888X",
+        "50396": "AB888X",
+        "50397": "AB888X",
+        "50398": "AB888X",
+        "50401": "AB888X",
+        "50402": "AB888X",
+        "50420": "AB888X",
+        "50421": "AB888X",
+        "50423": "AB888X",
+        "50424": "AB889X",
+        "50426": "AB889X",
+        "50427": "AB888X",
+        "50428": "AB888X",
+        "50430": "AB888X",
+        "50431": "AB888X",
+        "50432": "AB888X",
+        "50433": "AB888X",
+        "50434": "AB889X",
+        "50435": "AB888X",
+        "50436": "AB889X",
+        "50438": "AB888X",
+        "50439": "AB888X",
+        "50440": "AB889X",
+        "50441": "AB888X",
+        "50444": "AB889X",
+        "50446": "AB889X",
+        "50447": "AB888X",
+        "50448": "AB889X",
+        "50449": "AB888X",
+        "50450": "AB889X",
+        "50451": "AB889X",
+        "50452": "AB888X",
+        "50453": "AB889X",
+        "50454": "AB889X",
+        "50455": "AB889X",
+        "50456": "AB889X",
+        "50457": "AB888X",
+        "50458": "AB888X",
+        "50459": "AB889X",
+        "50460": "AB889X",
+        "50461": "AB889X",
+        "50464": "AB888X",
+        "50465": "AB889X",
+        "50466": "AB889X",
+        "50467": "AB888X",
+        "50468": "AB888X",
+        "50469": "AB888X",
+        "50470": "AB888X",
+        "50471": "AB888X",
+        "50472": "AB889X",
+        "50473": "AB889X",
+        "50475": "AB888X",
+        "50476": "AB889X",
+        "50477": "AB888X",
+        "50478": "AB889X",
+        "50479": "AB888X",
+        "50480": "AB889X",
+        "50481": "AB889X",
+        "50482": "AB888X",
+        "50483": "AB889X",
+        "50484": "AB888X",
+        "50501": "AB888X",
+        "50510": "AB888X",
+        "50511": "AB889X",
+        "50514": "AB889X",
+        "50515": "AB888X",
+        "50516": "AB888X",
+        "50517": "AB889X",
+        "50518": "AB888X",
+        "50519": "AB888X",
+        "50520": "AB888X",
+        "50521": "AB888X",
+        "50522": "AB889X",
+        "50523": "AB888X",
+        "50524": "AB888X",
+        "50525": "AB888X",
+        "50526": "AB888X",
+        "50527": "AB888X",
+        "50528": "AB888X",
+        "50529": "AB888X",
+        "50530": "AB888X",
+        "50531": "AB889X",
+        "50532": "AB888X",
+        "50533": "AB888X",
+        "50535": "AB888X",
+        "50536": "AB888X",
+        "50538": "AB888X",
+        "50539": "AB889X",
+        "50540": "AB888X",
+        "50541": "AB888X",
+        "50542": "AB888X",
+        "50543": "AB888X",
+        "50544": "AB888X",
+        "50545": "AB888X",
+        "50546": "AB888X",
+        "50548": "AB888X",
+        "50551": "AB888X",
+        "50552": "AB888X",
+        "50554": "AB888X",
+        "50556": "AB889X",
+        "50557": "AB888X",
+        "50558": "AB888X",
+        "50559": "AB889X",
+        "50560": "AB889X",
+        "50561": "AB888X",
+        "50562": "AB888X",
+        "50563": "AB888X",
+        "50565": "AB888X",
+        "50566": "AB888X",
+        "50567": "AB888X",
+        "50568": "AB888X",
+        "50569": "AB888X",
+        "50570": "AB888X",
+        "50571": "AB888X",
+        "50573": "AB888X",
+        "50574": "AB888X",
+        "50575": "AB888X",
+        "50576": "AB888X",
+        "50577": "AB888X",
+        "50578": "AB889X",
+        "50579": "AB888X",
+        "50581": "AB888X",
+        "50582": "AB888X",
+        "50583": "AB888X",
+        "50585": "AB888X",
+        "50586": "AB888X",
+        "50588": "AB888X",
+        "50590": "AB889X",
+        "50591": "AB888X",
+        "50592": "AB888X",
+        "50593": "AB888X",
+        "50594": "AB888X",
+        "50595": "AB888X",
+        "50597": "AB888X",
+        "50598": "AB889X",
+        "50599": "AB888X",
+        "50601": "AB888X",
+        "50602": "AB888X",
+        "50603": "AB888X",
+        "50604": "AB888X",
+        "50605": "AB888X",
+        "50606": "AB888X",
+        "50607": "AB888X",
+        "50608": "AB888X",
+        "50609": "AB888X",
+        "50611": "AB888X",
+        "50612": "AB888X",
+        "50613": "AB888X",
+        "50614": "AB888X",
+        "50616": "AB888X",
+        "50619": "AB888X",
+        "50620": "AB888X",
+        "50621": "AB888X",
+        "50622": "AB888X",
+        "50623": "AB888X",
+        "50624": "AB888X",
+        "50625": "AB888X",
+        "50626": "AB888X",
+        "50627": "AB888X",
+        "50628": "AB889X",
+        "50629": "AB888X",
+        "50630": "AB888X",
+        "50631": "AB888X",
+        "50632": "AB888X",
+        "50633": "AB888X",
+        "50634": "AB888X",
+        "50635": "AB888X",
+        "50636": "AB888X",
+        "50638": "AB888X",
+        "50641": "AB888X",
+        "50642": "AB888X",
+        "50643": "AB888X",
+        "50644": "AB888X",
+        "50645": "AB888X",
+        "50647": "AB888X",
+        "50648": "AB888X",
+        "50649": "AB888X",
+        "50650": "AB888X",
+        "50651": "AB888X",
+        "50652": "AB888X",
+        "50653": "AB888X",
+        "50654": "AB888X",
+        "50655": "AB888X",
+        "50657": "AB888X",
+        "50658": "AB888X",
+        "50659": "AB888X",
+        "50660": "AB888X",
+        "50661": "AB888X",
+        "50662": "AB888X",
+        "50664": "AB888X",
+        "50665": "AB888X",
+        "50666": "AB888X",
+        "50667": "AB888X",
+        "50668": "AB888X",
+        "50669": "AB888X",
+        "50670": "AB888X",
+        "50671": "AB888X",
+        "50672": "AB888X",
+        "50673": "AB888X",
+        "50674": "AB888X",
+        "50675": "AB888X",
+        "50676": "AB888X",
+        "50677": "AB888X",
+        "50680": "AB888X",
+        "50681": "AB888X",
+        "50682": "AB888X",
+        "50701": "AB888X",
+        "50702": "AB888X",
+        "50703": "AB888X",
+        "50704": "AB888X",
+        "50706": "AB888X",
+        "50707": "AB888X",
+        "50801": "AB888X",
+        "50830": "AB888X",
+        "50831": "AB888X",
+        "50833": "AB888X",
+        "50835": "AB888X",
+        "50836": "AB888X",
+        "50837": "AB888X",
+        "50839": "AB888X",
+        "50840": "AB888X",
+        "50841": "AB888X",
+        "50842": "AB888X",
+        "50843": "AB888X",
+        "50845": "AB888X",
+        "50846": "AB888X",
+        "50847": "AB888X",
+        "50848": "AB888X",
+        "50849": "AB888X",
+        "50851": "AB888X",
+        "50853": "AB888X",
+        "50854": "AB888X",
+        "50857": "AB888X",
+        "50858": "AB888X",
+        "50859": "AB888X",
+        "50860": "AB888X",
+        "50861": "AB888X",
+        "50862": "AB888X",
+        "50863": "AB888X",
+        "50864": "AB888X",
+        "50936": "AB888X",
+        "50940": "AB888X",
+        "50947": "AB888X",
+        "50950": "AB888X",
+        "50980": "AB888X",
+        "50981": "AB888X",
+        "51001": "AB891X",
+        "51002": "AB888X",
+        "51003": "AB891X",
+        "51004": "AB891X",
+        "51005": "AB888X",
+        "51006": "AB888X",
+        "51007": "AB891X",
+        "51008": "AB891X",
+        "51009": "AB888X",
+        "51010": "AB891X",
+        "51011": "AB891X",
+        "51012": "AB888X",
+        "51014": "AB888X",
+        "51015": "AB891X",
+        "51016": "AB891X",
+        "51018": "AB891X",
+        "51019": "AB891X",
+        "51020": "AB888X",
+        "51022": "AB891X",
+        "51023": "AB891X",
+        "51024": "AB891X",
+        "51025": "AB888X",
+        "51026": "AB891X",
+        "51027": "AB891X",
+        "51028": "AB891X",
+        "51029": "AB888X",
+        "51030": "AB891X",
+        "51031": "AB891X",
+        "51033": "AB888X",
+        "51034": "AB891X",
+        "51035": "AB888X",
+        "51036": "AB891X",
+        "51037": "AB888X",
+        "51038": "AB891X",
+        "51039": "AB891X",
+        "51040": "AB891X",
+        "51041": "AB891X",
+        "51044": "AB891X",
+        "51045": "AB891X",
+        "51046": "AB888X",
+        "51047": "AB888X",
+        "51048": "AB891X",
+        "51049": "AB888X",
+        "51050": "AB891X",
+        "51051": "AB891X",
+        "51052": "AB891X",
+        "51053": "AB888X",
+        "51054": "AB891X",
+        "51055": "AB891X",
+        "51056": "AB891X",
+        "51058": "AB888X",
+        "51060": "AB891X",
+        "51061": "AB888X",
+        "51062": "AB891X",
+        "51063": "AB891X",
+        "51101": "AB891X",
+        "51102": "AB891X",
+        "51103": "AB891X",
+        "51104": "AB891X",
+        "51105": "AB891X",
+        "51106": "AB891X",
+        "51108": "AB891X",
+        "51109": "AB891X",
+        "51111": "AB891X",
+        "51201": "AB888X",
+        "51230": "AB891X",
+        "51231": "AB888X",
+        "51232": "AB889X",
+        "51234": "AB891X",
+        "51235": "AB891X",
+        "51237": "AB891X",
+        "51238": "AB891X",
+        "51239": "AB891X",
+        "51240": "AB891X",
+        "51241": "AB891X",
+        "51242": "AB891X",
+        "51243": "AB891X",
+        "51244": "AB891X",
+        "51245": "AB888X",
+        "51246": "AB891X",
+        "51247": "AB891X",
+        "51248": "AB888X",
+        "51249": "AB889X",
+        "51250": "AB891X",
+        "51301": "AB888X",
+        "51331": "AB889X",
+        "51333": "AB888X",
+        "51334": "AB889X",
+        "51338": "AB888X",
+        "51340": "AB888X",
+        "51341": "AB888X",
+        "51342": "AB888X",
+        "51343": "AB888X",
+        "51344": "AB889X",
+        "51345": "AB889X",
+        "51346": "AB888X",
+        "51347": "AB889X",
+        "51350": "AB889X",
+        "51351": "AB889X",
+        "51354": "AB889X",
+        "51355": "AB889X",
+        "51357": "AB888X",
+        "51358": "AB888X",
+        "51360": "AB889X",
+        "51363": "AB889X",
+        "51364": "AB889X",
+        "51365": "AB889X",
+        "51366": "AB888X",
+        "51401": "AB888X",
+        "51430": "AB888X",
+        "51431": "AB888X",
+        "51432": "AB888X",
+        "51433": "AB888X",
+        "51436": "AB888X",
+        "51439": "AB888X",
+        "51440": "AB888X",
+        "51441": "AB888X",
+        "51442": "AB888X",
+        "51443": "AB888X",
+        "51444": "AB888X",
+        "51445": "AB888X",
+        "51446": "AB888X",
+        "51447": "AB888X",
+        "51448": "AB888X",
+        "51449": "AB888X",
+        "51450": "AB888X",
+        "51451": "AB888X",
+        "51452": "AB888X",
+        "51453": "AB888X",
+        "51454": "AB888X",
+        "51455": "AB888X",
+        "51458": "AB888X",
+        "51459": "AB888X",
+        "51460": "AB888X",
+        "51461": "AB888X",
+        "51462": "AB888X",
+        "51463": "AB888X",
+        "51465": "AB888X",
+        "51466": "AB888X",
+        "51467": "AB888X",
+        "51501": "AB889X",
+        "51502": "AB889X",
+        "51503": "AB889X",
+        "51510": "AB889X",
+        "51520": "AB888X",
+        "51521": "AB889X",
+        "51523": "AB891X",
+        "51525": "AB889X",
+        "51526": "AB889X",
+        "51527": "AB888X",
+        "51528": "AB888X",
+        "51529": "AB889X",
+        "51530": "AB888X",
+        "51531": "AB888X",
+        "51532": "AB888X",
+        "51533": "AB889X",
+        "51534": "AB889X",
+        "51535": "AB888X",
+        "51536": "AB889X",
+        "51537": "AB888X",
+        "51540": "AB889X",
+        "51541": "AB889X",
+        "51542": "AB889X",
+        "51543": "AB888X",
+        "51544": "AB888X",
+        "51545": "AB889X",
+        "51546": "AB889X",
+        "51548": "AB889X",
+        "51549": "AB889X",
+        "51550": "AB889X",
+        "51551": "AB889X",
+        "51552": "AB888X",
+        "51553": "AB889X",
+        "51554": "AB889X",
+        "51555": "AB889X",
+        "51556": "AB889X",
+        "51557": "AB889X",
+        "51558": "AB891X",
+        "51559": "AB889X",
+        "51560": "AB889X",
+        "51561": "AB889X",
+        "51562": "AB888X",
+        "51563": "AB889X",
+        "51564": "AB889X",
+        "51565": "AB888X",
+        "51566": "AB888X",
+        "51570": "AB889X",
+        "51571": "AB889X",
+        "51572": "AB891X",
+        "51573": "AB888X",
+        "51575": "AB889X",
+        "51576": "AB889X",
+        "51577": "AB889X",
+        "51578": "AB888X",
+        "51579": "AB889X",
+        "51591": "AB888X",
+        "51593": "AB888X",
+        "51601": "AB888X",
+        "51602": "AB888X",
+        "51603": "AB888X",
+        "51630": "AB888X",
+        "51631": "AB888X",
+        "51632": "AB888X",
+        "51636": "AB888X",
+        "51637": "AB888X",
+        "51638": "AB888X",
+        "51639": "AB889X",
+        "51640": "AB889X",
+        "51645": "AB889X",
+        "51646": "AB888X",
+        "51647": "AB888X",
+        "51648": "AB889X",
+        "51649": "AB889X",
+        "51650": "AB889X",
+        "51651": "AB888X",
+        "51652": "AB889X",
+        "51653": "AB889X",
+        "51654": "AB889X",
+        "51656": "AB888X",
+        "52001": "AB888X",
+        "52002": "AB888X",
+        "52003": "AB888X",
+        "52004": "AB888X",
+        "52030": "AB888X",
+        "52031": "AB888X",
+        "52032": "AB888X",
+        "52033": "AB888X",
+        "52035": "AB888X",
+        "52036": "AB888X",
+        "52037": "AB888X",
+        "52038": "AB888X",
+        "52039": "AB888X",
+        "52040": "AB888X",
+        "52041": "AB888X",
+        "52042": "AB888X",
+        "52043": "AB888X",
+        "52044": "AB888X",
+        "52045": "AB888X",
+        "52046": "AB888X",
+        "52047": "AB888X",
+        "52048": "AB888X",
+        "52049": "AB888X",
+        "52050": "AB888X",
+        "52052": "AB888X",
+        "52053": "AB888X",
+        "52054": "AB888X",
+        "52056": "AB888X",
+        "52057": "AB888X",
+        "52060": "AB888X",
+        "52064": "AB888X",
+        "52065": "AB888X",
+        "52066": "AB888X",
+        "52068": "AB888X",
+        "52069": "AB888X",
+        "52070": "AB888X",
+        "52071": "AB888X",
+        "52072": "AB888X",
+        "52073": "AB888X",
+        "52074": "AB888X",
+        "52075": "AB888X",
+        "52076": "AB888X",
+        "52077": "AB888X",
+        "52078": "AB888X",
+        "52079": "AB888X",
+        "52099": "AB888X",
+        "52101": "AB888X",
+        "52132": "AB888X",
+        "52133": "AB888X",
+        "52134": "AB889X",
+        "52135": "AB888X",
+        "52136": "AB889X",
+        "52140": "AB889X",
+        "52141": "AB888X",
+        "52142": "AB888X",
+        "52144": "AB888X",
+        "52146": "AB889X",
+        "52147": "AB888X",
+        "52149": "AB888X",
+        "52151": "AB889X",
+        "52154": "AB888X",
+        "52155": "AB889X",
+        "52156": "AB888X",
+        "52157": "AB888X",
+        "52158": "AB888X",
+        "52159": "AB888X",
+        "52160": "AB889X",
+        "52161": "AB888X",
+        "52162": "AB889X",
+        "52163": "AB889X",
+        "52164": "AB888X",
+        "52165": "AB888X",
+        "52166": "AB888X",
+        "52168": "AB888X",
+        "52169": "AB888X",
+        "52170": "AB889X",
+        "52171": "AB888X",
+        "52172": "AB889X",
+        "52175": "AB888X",
+        "52201": "AB888X",
+        "52202": "AB888X",
+        "52203": "AB888X",
+        "52204": "AB888X",
+        "52205": "AB888X",
+        "52206": "AB888X",
+        "52207": "AB888X",
+        "52208": "AB888X",
+        "52209": "AB888X",
+        "52210": "AB888X",
+        "52211": "AB888X",
+        "52212": "AB888X",
+        "52213": "AB888X",
+        "52214": "AB888X",
+        "52215": "AB888X",
+        "52216": "AB888X",
+        "52217": "AB888X",
+        "52218": "AB888X",
+        "52219": "AB888X",
+        "52220": "AB888X",
+        "52221": "AB888X",
+        "52222": "AB888X",
+        "52223": "AB888X",
+        "52224": "AB888X",
+        "52225": "AB888X",
+        "52227": "AB888X",
+        "52228": "AB888X",
+        "52229": "AB888X",
+        "52231": "AB888X",
+        "52232": "AB888X",
+        "52233": "AB888X",
+        "52235": "AB888X",
+        "52236": "AB888X",
+        "52237": "AB888X",
+        "52240": "AB888X",
+        "52241": "AB888X",
+        "52242": "AB888X",
+        "52243": "AB888X",
+        "52244": "AB888X",
+        "52245": "AB888X",
+        "52246": "AB888X",
+        "52247": "AB888X",
+        "52248": "AB888X",
+        "52249": "AB888X",
+        "52251": "AB888X",
+        "52252": "AB888X",
+        "52253": "AB888X",
+        "52254": "AB888X",
+        "52255": "AB888X",
+        "52257": "AB888X",
+        "52301": "AB888X",
+        "52302": "AB888X",
+        "52305": "AB888X",
+        "52306": "AB888X",
+        "52307": "AB888X",
+        "52308": "AB888X",
+        "52309": "AB888X",
+        "52310": "AB888X",
+        "52312": "AB888X",
+        "52313": "AB888X",
+        "52314": "AB888X",
+        "52315": "AB888X",
+        "52316": "AB888X",
+        "52317": "AB888X",
+        "52318": "AB888X",
+        "52319": "AB888X",
+        "52320": "AB888X",
+        "52321": "AB888X",
+        "52322": "AB888X",
+        "52323": "AB888X",
+        "52324": "AB888X",
+        "52325": "AB888X",
+        "52326": "AB888X",
+        "52327": "AB888X",
+        "52328": "AB888X",
+        "52329": "AB888X",
+        "52330": "AB888X",
+        "52332": "AB888X",
+        "52333": "AB888X",
+        "52334": "AB888X",
+        "52335": "AB888X",
+        "52336": "AB888X",
+        "52337": "AB888X",
+        "52338": "AB888X",
+        "52339": "AB888X",
+        "52340": "AB888X",
+        "52341": "AB888X",
+        "52342": "AB888X",
+        "52344": "AB888X",
+        "52345": "AB888X",
+        "52346": "AB888X",
+        "52347": "AB888X",
+        "52348": "AB888X",
+        "52349": "AB888X",
+        "52350": "AB888X",
+        "52351": "AB888X",
+        "52352": "AB888X",
+        "52353": "AB888X",
+        "52354": "AB888X",
+        "52355": "AB888X",
+        "52356": "AB888X",
+        "52358": "AB888X",
+        "52359": "AB888X",
+        "52361": "AB888X",
+        "52362": "AB888X",
+        "52401": "AB888X",
+        "52402": "AB888X",
+        "52403": "AB888X",
+        "52404": "AB888X",
+        "52405": "AB888X",
+        "52406": "AB888X",
+        "52407": "AB888X",
+        "52408": "AB888X",
+        "52409": "AB888X",
+        "52410": "AB888X",
+        "52411": "AB888X",
+        "52497": "AB888X",
+        "52498": "AB888X",
+        "52499": "AB888X",
+        "52501": "AB888X",
+        "52530": "AB888X",
+        "52531": "AB888X",
+        "52533": "AB888X",
+        "52534": "AB888X",
+        "52535": "AB888X",
+        "52536": "AB888X",
+        "52537": "AB888X",
+        "52538": "AB888X",
+        "52540": "AB888X",
+        "52542": "AB888X",
+        "52543": "AB888X",
+        "52544": "AB888X",
+        "52548": "AB888X",
+        "52549": "AB888X",
+        "52550": "AB888X",
+        "52551": "AB888X",
+        "52552": "AB888X",
+        "52553": "AB888X",
+        "52554": "AB888X",
+        "52555": "AB888X",
+        "52556": "AB888X",
+        "52557": "AB888X",
+        "52560": "AB888X",
+        "52561": "AB888X",
+        "52562": "AB888X",
+        "52563": "AB888X",
+        "52565": "AB888X",
+        "52566": "AB888X",
+        "52567": "AB888X",
+        "52568": "AB888X",
+        "52569": "AB888X",
+        "52570": "AB888X",
+        "52571": "AB888X",
+        "52572": "AB888X",
+        "52573": "AB888X",
+        "52574": "AB888X",
+        "52576": "AB888X",
+        "52577": "AB888X",
+        "52580": "AB888X",
+        "52581": "AB888X",
+        "52583": "AB888X",
+        "52584": "AB888X",
+        "52585": "AB888X",
+        "52586": "AB888X",
+        "52588": "AB888X",
+        "52590": "AB888X",
+        "52591": "AB888X",
+        "52593": "AB888X",
+        "52594": "AB888X",
+        "52595": "AB888X",
+        "52601": "AB888X",
+        "52619": "AB888X",
+        "52620": "AB888X",
+        "52621": "AB888X",
+        "52623": "AB888X",
+        "52624": "AB888X",
+        "52625": "AB888X",
+        "52626": "AB888X",
+        "52627": "AB888X",
+        "52630": "AB888X",
+        "52631": "AB888X",
+        "52632": "AB888X",
+        "52635": "AB888X",
+        "52637": "AB888X",
+        "52638": "AB888X",
+        "52639": "AB888X",
+        "52640": "AB888X",
+        "52641": "AB888X",
+        "52642": "AB888X",
+        "52644": "AB888X",
+        "52645": "AB888X",
+        "52646": "AB888X",
+        "52647": "AB888X",
+        "52648": "AB888X",
+        "52649": "AB888X",
+        "52650": "AB888X",
+        "52651": "AB888X",
+        "52652": "AB888X",
+        "52653": "AB888X",
+        "52654": "AB888X",
+        "52655": "AB888X",
+        "52656": "AB888X",
+        "52657": "AB888X",
+        "52658": "AB888X",
+        "52659": "AB888X",
+        "52660": "AB888X",
+        "52701": "AB888X",
+        "52720": "AB888X",
+        "52721": "AB888X",
+        "52722": "AB888X",
+        "52726": "AB888X",
+        "52727": "AB888X",
+        "52728": "AB888X",
+        "52729": "AB888X",
+        "52730": "AB888X",
+        "52731": "AB888X",
+        "52732": "AB888X",
+        "52733": "AB888X",
+        "52734": "AB888X",
+        "52736": "AB888X",
+        "52737": "AB888X",
+        "52738": "AB888X",
+        "52739": "AB888X",
+        "52742": "AB888X",
+        "52745": "AB888X",
+        "52746": "AB888X",
+        "52747": "AB888X",
+        "52748": "AB888X",
+        "52749": "AB888X",
+        "52750": "AB888X",
+        "52751": "AB888X",
+        "52752": "AB888X",
+        "52753": "AB888X",
+        "52754": "AB888X",
+        "52755": "AB888X",
+        "52756": "AB888X",
+        "52757": "AB888X",
+        "52758": "AB888X",
+        "52759": "AB888X",
+        "52760": "AB888X",
+        "52761": "AB888X",
+        "52765": "AB888X",
+        "52766": "AB888X",
+        "52767": "AB888X",
+        "52768": "AB888X",
+        "52769": "AB888X",
+        "52771": "AB888X",
+        "52772": "AB888X",
+        "52773": "AB888X",
+        "52774": "AB888X",
+        "52776": "AB888X",
+        "52777": "AB888X",
+        "52778": "AB888X",
+        "52801": "AB888X",
+        "52802": "AB888X",
+        "52803": "AB888X",
+        "52804": "AB888X",
+        "52805": "AB888X",
+        "52806": "AB888X",
+        "52807": "AB888X",
+        "52808": "AB888X",
+        "52809": "AB888X",
+        "53001": "AB887X",
+        "53002": "AB887X",
+        "53003": "AB887X",
+        "53004": "AB887X",
+        "53005": "AB887X",
+        "53006": "AB887X",
+        "53007": "AB887X",
+        "53008": "AB887X",
+        "53010": "AB887X",
+        "53011": "AB887X",
+        "53012": "AB887X",
+        "53013": "AB887X",
+        "53014": "AB887X",
+        "53015": "AB887X",
+        "53016": "AB887X",
+        "53017": "AB887X",
+        "53018": "AB887X",
+        "53019": "AB887X",
+        "53020": "AB887X",
+        "53021": "AB887X",
+        "53022": "AB887X",
+        "53023": "AB887X",
+        "53024": "AB887X",
+        "53026": "AB887X",
+        "53027": "AB887X",
+        "53029": "AB887X",
+        "53031": "AB887X",
+        "53032": "AB887X",
+        "53033": "AB887X",
+        "53034": "AB887X",
+        "53035": "AB887X",
+        "53036": "AB887X",
+        "53037": "AB887X",
+        "53038": "AB887X",
+        "53039": "AB887X",
+        "53040": "AB887X",
+        "53042": "AB887X",
+        "53044": "AB887X",
+        "53045": "AB887X",
+        "53046": "AB887X",
+        "53047": "AB887X",
+        "53048": "AB887X",
+        "53049": "AB887X",
+        "53050": "AB887X",
+        "53051": "AB887X",
+        "53052": "AB887X",
+        "53056": "AB887X",
+        "53057": "AB887X",
+        "53058": "AB887X",
+        "53059": "AB887X",
+        "53060": "AB887X",
+        "53061": "AB887X",
+        "53062": "AB887X",
+        "53063": "AB887X",
+        "53064": "AB887X",
+        "53065": "AB887X",
+        "53066": "AB887X",
+        "53069": "AB887X",
+        "53070": "AB887X",
+        "53072": "AB887X",
+        "53073": "AB887X",
+        "53074": "AB887X",
+        "53075": "AB887X",
+        "53076": "AB887X",
+        "53078": "AB887X",
+        "53079": "AB887X",
+        "53080": "AB887X",
+        "53081": "AB887X",
+        "53082": "AB887X",
+        "53083": "AB887X",
+        "53085": "AB887X",
+        "53086": "AB887X",
+        "53088": "AB887X",
+        "53089": "AB887X",
+        "53090": "AB887X",
+        "53091": "AB887X",
+        "53092": "AB887X",
+        "53093": "AB887X",
+        "53094": "AB887X",
+        "53095": "AB887X",
+        "53097": "AB887X",
+        "53098": "AB887X",
+        "53099": "AB887X",
+        "53101": "AB887X",
+        "53102": "AB887X",
+        "53103": "AB887X",
+        "53104": "AB887X",
+        "53105": "AB887X",
+        "53108": "AB887X",
+        "53109": "AB887X",
+        "53110": "AB887X",
+        "53114": "AB887X",
+        "53115": "AB887X",
+        "53118": "AB887X",
+        "53119": "AB887X",
+        "53120": "AB887X",
+        "53121": "AB887X",
+        "53122": "AB887X",
+        "53125": "AB887X",
+        "53126": "AB887X",
+        "53127": "AB887X",
+        "53128": "AB887X",
+        "53129": "AB887X",
+        "53130": "AB887X",
+        "53132": "AB887X",
+        "53137": "AB887X",
+        "53138": "AB887X",
+        "53139": "AB887X",
+        "53140": "AB887X",
+        "53141": "AB887X",
+        "53142": "AB887X",
+        "53143": "AB887X",
+        "53144": "AB887X",
+        "53146": "AB887X",
+        "53147": "AB887X",
+        "53148": "AB887X",
+        "53149": "AB887X",
+        "53150": "AB887X",
+        "53151": "AB887X",
+        "53152": "AB887X",
+        "53153": "AB887X",
+        "53154": "AB887X",
+        "53156": "AB887X",
+        "53157": "AB887X",
+        "53158": "AB887X",
+        "53159": "AB887X",
+        "53167": "AB887X",
+        "53168": "AB887X",
+        "53170": "AB887X",
+        "53171": "AB887X",
+        "53172": "AB887X",
+        "53176": "AB887X",
+        "53177": "AB887X",
+        "53178": "AB887X",
+        "53179": "AB887X",
+        "53181": "AB887X",
+        "53182": "AB887X",
+        "53183": "AB887X",
+        "53184": "AB887X",
+        "53185": "AB887X",
+        "53186": "AB887X",
+        "53187": "AB887X",
+        "53188": "AB887X",
+        "53189": "AB887X",
+        "53190": "AB887X",
+        "53191": "AB887X",
+        "53192": "AB887X",
+        "53194": "AB887X",
+        "53195": "AB887X",
+        "53199": "AB887X",
+        "53201": "AB887X",
+        "53202": "AB887X",
+        "53203": "AB887X",
+        "53204": "AB887X",
+        "53205": "AB887X",
+        "53206": "AB887X",
+        "53207": "AB887X",
+        "53208": "AB887X",
+        "53209": "AB887X",
+        "53210": "AB887X",
+        "53211": "AB887X",
+        "53212": "AB887X",
+        "53213": "AB887X",
+        "53214": "AB887X",
+        "53215": "AB887X",
+        "53216": "AB887X",
+        "53217": "AB889X",
+        "53218": "AB887X",
+        "53219": "AB887X",
+        "53220": "AB887X",
+        "53221": "AB887X",
+        "53222": "AB887X",
+        "53223": "AB887X",
+        "53224": "AB887X",
+        "53225": "AB887X",
+        "53226": "AB887X",
+        "53227": "AB887X",
+        "53228": "AB887X",
+        "53233": "AB887X",
+        "53234": "AB887X",
+        "53235": "AB887X",
+        "53237": "AB887X",
+        "53244": "AB887X",
+        "53259": "AB887X",
+        "53263": "AB887X",
+        "53267": "AB887X",
+        "53268": "AB887X",
+        "53274": "AB887X",
+        "53278": "AB887X",
+        "53288": "AB887X",
+        "53290": "AB887X",
+        "53293": "AB887X",
+        "53295": "AB887X",
+        "53401": "AB887X",
+        "53402": "AB887X",
+        "53403": "AB887X",
+        "53404": "AB887X",
+        "53405": "AB887X",
+        "53406": "AB887X",
+        "53407": "AB887X",
+        "53408": "AB887X",
+        "53490": "AB887X",
+        "53501": "AB887X",
+        "53502": "AB887X",
+        "53503": "AB887X",
+        "53504": "AB887X",
+        "53505": "AB887X",
+        "53506": "AB887X",
+        "53507": "AB887X",
+        "53508": "AB887X",
+        "53510": "AB887X",
+        "53511": "AB887X",
+        "53512": "AB887X",
+        "53515": "AB887X",
+        "53516": "AB887X",
+        "53517": "AB887X",
+        "53518": "AB887X",
+        "53520": "AB887X",
+        "53521": "AB887X",
+        "53522": "AB887X",
+        "53523": "AB887X",
+        "53525": "AB887X",
+        "53526": "AB887X",
+        "53527": "AB887X",
+        "53528": "AB887X",
+        "53529": "AB887X",
+        "53530": "AB888X",
+        "53531": "AB887X",
+        "53532": "AB887X",
+        "53533": "AB887X",
+        "53534": "AB887X",
+        "53535": "AB887X",
+        "53536": "AB887X",
+        "53537": "AB887X",
+        "53538": "AB887X",
+        "53540": "AB887X",
+        "53541": "AB887X",
+        "53542": "AB887X",
+        "53543": "AB887X",
+        "53544": "AB887X",
+        "53545": "AB887X",
+        "53546": "AB887X",
+        "53547": "AB887X",
+        "53548": "AB887X",
+        "53549": "AB887X",
+        "53550": "AB887X",
+        "53551": "AB887X",
+        "53553": "AB887X",
+        "53554": "AB887X",
+        "53555": "AB887X",
+        "53556": "AB887X",
+        "53557": "AB887X",
+        "53558": "AB887X",
+        "53559": "AB887X",
+        "53560": "AB887X",
+        "53561": "AB887X",
+        "53562": "AB887X",
+        "53563": "AB887X",
+        "53565": "AB887X",
+        "53566": "AB887X",
+        "53569": "AB887X",
+        "53570": "AB887X",
+        "53571": "AB887X",
+        "53572": "AB887X",
+        "53573": "AB887X",
+        "53574": "AB887X",
+        "53575": "AB887X",
+        "53576": "AB887X",
+        "53577": "AB887X",
+        "53578": "AB887X",
+        "53579": "AB887X",
+        "53580": "AB887X",
+        "53581": "AB887X",
+        "53582": "AB887X",
+        "53583": "AB887X",
+        "53584": "AB887X",
+        "53585": "AB887X",
+        "53586": "AB888X",
+        "53587": "AB887X",
+        "53588": "AB887X",
+        "53589": "AB887X",
+        "53590": "AB887X",
+        "53593": "AB887X",
+        "53594": "AB887X",
+        "53595": "AB887X",
+        "53596": "AB887X",
+        "53597": "AB887X",
+        "53598": "AB887X",
+        "53599": "AB887X",
+        "53701": "AB887X",
+        "53702": "AB887X",
+        "53703": "AB887X",
+        "53704": "AB887X",
+        "53705": "AB887X",
+        "53706": "AB887X",
+        "53707": "AB887X",
+        "53708": "AB887X",
+        "53711": "AB887X",
+        "53713": "AB887X",
+        "53714": "AB887X",
+        "53715": "AB887X",
+        "53716": "AB887X",
+        "53717": "AB887X",
+        "53718": "AB887X",
+        "53719": "AB887X",
+        "53725": "AB887X",
+        "53726": "AB887X",
+        "53744": "AB887X",
+        "53774": "AB887X",
+        "53777": "AB887X",
+        "53778": "AB887X",
+        "53779": "AB887X",
+        "53782": "AB887X",
+        "53783": "AB887X",
+        "53784": "AB887X",
+        "53785": "AB887X",
+        "53786": "AB887X",
+        "53788": "AB887X",
+        "53789": "AB887X",
+        "53790": "AB887X",
+        "53791": "AB887X",
+        "53792": "AB887X",
+        "53793": "AB887X",
+        "53794": "AB887X",
+        "53801": "AB887X",
+        "53802": "AB887X",
+        "53803": "AB888X",
+        "53804": "AB888X",
+        "53805": "AB887X",
+        "53806": "AB888X",
+        "53807": "AB888X",
+        "53808": "AB888X",
+        "53809": "AB887X",
+        "53810": "AB888X",
+        "53811": "AB888X",
+        "53812": "AB888X",
+        "53813": "AB888X",
+        "53816": "AB887X",
+        "53817": "AB887X",
+        "53818": "AB887X",
+        "53820": "AB888X",
+        "53821": "AB889X",
+        "53824": "AB887X",
+        "53825": "AB887X",
+        "53826": "AB887X",
+        "53827": "AB887X",
+        "53901": "AB887X",
+        "53910": "AB887X",
+        "53911": "AB887X",
+        "53913": "AB887X",
+        "53916": "AB887X",
+        "53919": "AB887X",
+        "53920": "AB887X",
+        "53922": "AB887X",
+        "53923": "AB887X",
+        "53924": "AB887X",
+        "53925": "AB887X",
+        "53926": "AB887X",
+        "53927": "AB887X",
+        "53928": "AB887X",
+        "53929": "AB889X",
+        "53930": "AB887X",
+        "53931": "AB887X",
+        "53932": "AB887X",
+        "53933": "AB887X",
+        "53934": "AB887X",
+        "53935": "AB887X",
+        "53936": "AB887X",
+        "53937": "AB887X",
+        "53939": "AB887X",
+        "53940": "AB887X",
+        "53941": "AB887X",
+        "53942": "AB887X",
+        "53943": "AB887X",
+        "53944": "AB889X",
+        "53946": "AB887X",
+        "53947": "AB887X",
+        "53948": "AB889X",
+        "53949": "AB887X",
+        "53950": "AB889X",
+        "53951": "AB887X",
+        "53952": "AB889X",
+        "53953": "AB887X",
+        "53954": "AB887X",
+        "53955": "AB887X",
+        "53956": "AB887X",
+        "53957": "AB887X",
+        "53958": "AB887X",
+        "53959": "AB887X",
+        "53960": "AB887X",
+        "53961": "AB887X",
+        "53962": "AB889X",
+        "53963": "AB887X",
+        "53964": "AB887X",
+        "53965": "AB887X",
+        "53968": "AB889X",
+        "53969": "AB887X",
+        "54001": "AB889X",
+        "54002": "AB889X",
+        "54003": "AB889X",
+        "54004": "AB889X",
+        "54005": "AB889X",
+        "54006": "AB889X",
+        "54007": "AB889X",
+        "54009": "AB889X",
+        "54010": "AB889X",
+        "54011": "AB889X",
+        "54013": "AB889X",
+        "54014": "AB889X",
+        "54015": "AB889X",
+        "54016": "AB889X",
+        "54017": "AB889X",
+        "54020": "AB889X",
+        "54021": "AB889X",
+        "54022": "AB889X",
+        "54023": "AB889X",
+        "54024": "AB889X",
+        "54025": "AB889X",
+        "54026": "AB889X",
+        "54027": "AB889X",
+        "54028": "AB889X",
+        "54035": "AB887X",
+        "54074": "AB888X",
+        "54082": "AB889X",
+        "54101": "AB887X",
+        "54102": "AB887X",
+        "54103": "AB887X",
+        "54104": "AB887X",
+        "54106": "AB887X",
+        "54107": "AB887X",
+        "54110": "AB887X",
+        "54111": "AB887X",
+        "54112": "AB887X",
+        "54113": "AB887X",
+        "54114": "AB887X",
+        "54115": "AB887X",
+        "54119": "AB887X",
+        "54120": "AB887X",
+        "54121": "AB887X",
+        "54123": "AB887X",
+        "54124": "AB887X",
+        "54125": "AB887X",
+        "54126": "AB887X",
+        "54127": "AB887X",
+        "54128": "AB887X",
+        "54129": "AB887X",
+        "54130": "AB887X",
+        "54131": "AB887X",
+        "54135": "AB887X",
+        "54136": "AB887X",
+        "54137": "AB887X",
+        "54138": "AB887X",
+        "54139": "AB887X",
+        "54140": "AB887X",
+        "54141": "AB887X",
+        "54143": "AB887X",
+        "54149": "AB887X",
+        "54150": "AB887X",
+        "54151": "AB887X",
+        "54152": "AB887X",
+        "54153": "AB887X",
+        "54154": "AB887X",
+        "54155": "AB887X",
+        "54156": "AB887X",
+        "54157": "AB887X",
+        "54159": "AB887X",
+        "54160": "AB887X",
+        "54161": "AB887X",
+        "54162": "AB887X",
+        "54165": "AB887X",
+        "54166": "AB887X",
+        "54169": "AB887X",
+        "54170": "AB887X",
+        "54171": "AB887X",
+        "54173": "AB887X",
+        "54174": "AB887X",
+        "54175": "AB887X",
+        "54177": "AB887X",
+        "54180": "AB887X",
+        "54182": "AB887X",
+        "54201": "AB887X",
+        "54202": "AB887X",
+        "54204": "AB887X",
+        "54205": "AB887X",
+        "54207": "AB887X",
+        "54208": "AB887X",
+        "54209": "AB887X",
+        "54210": "AB887X",
+        "54211": "AB887X",
+        "54212": "AB887X",
+        "54213": "AB887X",
+        "54214": "AB887X",
+        "54215": "AB887X",
+        "54216": "AB887X",
+        "54217": "AB887X",
+        "54220": "AB887X",
+        "54221": "AB887X",
+        "54226": "AB887X",
+        "54227": "AB887X",
+        "54228": "AB887X",
+        "54229": "AB887X",
+        "54230": "AB887X",
+        "54232": "AB887X",
+        "54234": "AB887X",
+        "54235": "AB887X",
+        "54240": "AB887X",
+        "54241": "AB887X",
+        "54245": "AB887X",
+        "54246": "AB887X",
+        "54247": "AB887X",
+        "54301": "AB887X",
+        "54302": "AB887X",
+        "54303": "AB887X",
+        "54304": "AB887X",
+        "54305": "AB887X",
+        "54306": "AB887X",
+        "54307": "AB887X",
+        "54308": "AB887X",
+        "54311": "AB887X",
+        "54313": "AB887X",
+        "54324": "AB887X",
+        "54344": "AB887X",
+        "54401": "AB887X",
+        "54402": "AB887X",
+        "54403": "AB887X",
+        "54404": "AB887X",
+        "54405": "AB887X",
+        "54406": "AB887X",
+        "54407": "AB887X",
+        "54408": "AB887X",
+        "54409": "AB887X",
+        "54410": "AB887X",
+        "54411": "AB887X",
+        "54412": "AB887X",
+        "54413": "AB887X",
+        "54414": "AB887X",
+        "54415": "AB887X",
+        "54416": "AB887X",
+        "54417": "AB887X",
+        "54418": "AB887X",
+        "54420": "AB887X",
+        "54421": "AB887X",
+        "54422": "AB887X",
+        "54423": "AB887X",
+        "54424": "AB887X",
+        "54425": "AB887X",
+        "54426": "AB887X",
+        "54427": "AB887X",
+        "54428": "AB887X",
+        "54429": "AB887X",
+        "54430": "AB887X",
+        "54432": "AB887X",
+        "54433": "AB887X",
+        "54434": "AB887X",
+        "54435": "AB887X",
+        "54436": "AB887X",
+        "54437": "AB887X",
+        "54439": "AB887X",
+        "54440": "AB887X",
+        "54441": "AB887X",
+        "54442": "AB887X",
+        "54443": "AB887X",
+        "54446": "AB887X",
+        "54447": "AB887X",
+        "54448": "AB887X",
+        "54449": "AB887X",
+        "54450": "AB887X",
+        "54451": "AB887X",
+        "54452": "AB887X",
+        "54454": "AB887X",
+        "54455": "AB887X",
+        "54456": "AB887X",
+        "54457": "AB887X",
+        "54458": "AB887X",
+        "54459": "AB887X",
+        "54460": "AB887X",
+        "54462": "AB887X",
+        "54463": "AB887X",
+        "54464": "AB887X",
+        "54465": "AB889X",
+        "54466": "AB887X",
+        "54467": "AB887X",
+        "54469": "AB887X",
+        "54470": "AB887X",
+        "54471": "AB887X",
+        "54472": "AB887X",
+        "54473": "AB887X",
+        "54474": "AB887X",
+        "54475": "AB887X",
+        "54476": "AB887X",
+        "54479": "AB887X",
+        "54480": "AB887X",
+        "54481": "AB887X",
+        "54482": "AB887X",
+        "54484": "AB887X",
+        "54485": "AB887X",
+        "54486": "AB887X",
+        "54487": "AB887X",
+        "54488": "AB887X",
+        "54489": "AB887X",
+        "54490": "AB887X",
+        "54491": "AB887X",
+        "54492": "AB887X",
+        "54493": "AB889X",
+        "54494": "AB887X",
+        "54495": "AB887X",
+        "54498": "AB887X",
+        "54499": "AB887X",
+        "54501": "AB887X",
+        "54510": "AB889X",
+        "54511": "AB887X",
+        "54512": "AB887X",
+        "54513": "AB887X",
+        "54514": "AB889X",
+        "54515": "AB889X",
+        "54517": "AB889X",
+        "54519": "AB887X",
+        "54520": "AB887X",
+        "54521": "AB887X",
+        "54524": "AB887X",
+        "54525": "AB889X",
+        "54526": "AB889X",
+        "54527": "AB889X",
+        "54529": "AB887X",
+        "54530": "AB889X",
+        "54531": "AB887X",
+        "54532": "AB887X",
+        "54534": "AB889X",
+        "54536": "AB889X",
+        "54537": "AB889X",
+        "54538": "AB887X",
+        "54539": "AB887X",
+        "54540": "AB889X",
+        "54541": "AB887X",
+        "54542": "AB887X",
+        "54543": "AB887X",
+        "54545": "AB887X",
+        "54546": "AB889X",
+        "54547": "AB889X",
+        "54548": "AB887X",
+        "54550": "AB889X",
+        "54552": "AB889X",
+        "54553": "AB889X",
+        "54554": "AB889X",
+        "54555": "AB889X",
+        "54556": "AB887X",
+        "54557": "AB887X",
+        "54558": "AB887X",
+        "54559": "AB889X",
+        "54560": "AB887X",
+        "54561": "AB887X",
+        "54562": "AB887X",
+        "54563": "AB889X",
+        "54564": "AB887X",
+        "54565": "AB889X",
+        "54566": "AB887X",
+        "54568": "AB887X",
+        "54601": "AB889X",
+        "54602": "AB889X",
+        "54603": "AB889X",
+        "54610": "AB889X",
+        "54611": "AB889X",
+        "54612": "AB889X",
+        "54613": "AB887X",
+        "54614": "AB889X",
+        "54615": "AB889X",
+        "54616": "AB889X",
+        "54618": "AB889X",
+        "54619": "AB889X",
+        "54620": "AB889X",
+        "54621": "AB889X",
+        "54622": "AB889X",
+        "54623": "AB889X",
+        "54624": "AB889X",
+        "54625": "AB889X",
+        "54626": "AB887X",
+        "54627": "AB889X",
+        "54628": "AB889X",
+        "54629": "AB889X",
+        "54630": "AB889X",
+        "54631": "AB887X",
+        "54632": "AB889X",
+        "54634": "AB887X",
+        "54635": "AB889X",
+        "54636": "AB889X",
+        "54637": "AB889X",
+        "54638": "AB889X",
+        "54639": "AB889X",
+        "54640": "AB887X",
+        "54641": "AB889X",
+        "54642": "AB889X",
+        "54643": "AB889X",
+        "54644": "AB889X",
+        "54645": "AB887X",
+        "54646": "AB889X",
+        "54648": "AB889X",
+        "54649": "AB889X",
+        "54650": "AB889X",
+        "54651": "AB889X",
+        "54652": "AB889X",
+        "54653": "AB889X",
+        "54654": "AB887X",
+        "54655": "AB887X",
+        "54656": "AB889X",
+        "54657": "AB887X",
+        "54658": "AB889X",
+        "54659": "AB889X",
+        "54660": "AB889X",
+        "54661": "AB889X",
+        "54662": "AB889X",
+        "54664": "AB887X",
+        "54665": "AB889X",
+        "54666": "AB889X",
+        "54667": "AB889X",
+        "54669": "AB889X",
+        "54670": "AB889X",
+        "54678": "AB887X",
+        "54701": "AB889X",
+        "54702": "AB889X",
+        "54703": "AB889X",
+        "54720": "AB889X",
+        "54721": "AB889X",
+        "54722": "AB889X",
+        "54723": "AB889X",
+        "54724": "AB889X",
+        "54725": "AB889X",
+        "54726": "AB889X",
+        "54727": "AB889X",
+        "54728": "AB889X",
+        "54729": "AB889X",
+        "54730": "AB889X",
+        "54731": "AB889X",
+        "54732": "AB889X",
+        "54733": "AB889X",
+        "54734": "AB889X",
+        "54735": "AB889X",
+        "54736": "AB889X",
+        "54737": "AB889X",
+        "54738": "AB889X",
+        "54739": "AB889X",
+        "54740": "AB889X",
+        "54741": "AB889X",
+        "54742": "AB889X",
+        "54743": "AB889X",
+        "54745": "AB889X",
+        "54746": "AB887X",
+        "54747": "AB889X",
+        "54748": "AB889X",
+        "54749": "AB889X",
+        "54750": "AB889X",
+        "54751": "AB889X",
+        "54754": "AB889X",
+        "54755": "AB889X",
+        "54756": "AB889X",
+        "54757": "AB889X",
+        "54758": "AB889X",
+        "54759": "AB889X",
+        "54760": "AB889X",
+        "54761": "AB889X",
+        "54762": "AB889X",
+        "54763": "AB889X",
+        "54764": "AB889X",
+        "54765": "AB889X",
+        "54766": "AB889X",
+        "54767": "AB889X",
+        "54768": "AB889X",
+        "54769": "AB889X",
+        "54770": "AB889X",
+        "54771": "AB889X",
+        "54772": "AB889X",
+        "54773": "AB889X",
+        "54774": "AB889X",
+        "54801": "AB889X",
+        "54805": "AB889X",
+        "54806": "AB889X",
+        "54810": "AB889X",
+        "54812": "AB889X",
+        "54813": "AB889X",
+        "54814": "AB889X",
+        "54816": "AB889X",
+        "54817": "AB889X",
+        "54818": "AB889X",
+        "54819": "AB889X",
+        "54820": "AB889X",
+        "54821": "AB889X",
+        "54822": "AB889X",
+        "54824": "AB889X",
+        "54826": "AB889X",
+        "54827": "AB889X",
+        "54828": "AB889X",
+        "54829": "AB889X",
+        "54830": "AB889X",
+        "54832": "AB889X",
+        "54834": "AB889X",
+        "54835": "AB889X",
+        "54836": "AB889X",
+        "54837": "AB889X",
+        "54838": "AB889X",
+        "54839": "AB889X",
+        "54840": "AB889X",
+        "54841": "AB889X",
+        "54842": "AB889X",
+        "54843": "AB889X",
+        "54844": "AB889X",
+        "54845": "AB889X",
+        "54846": "AB889X",
+        "54847": "AB889X",
+        "54848": "AB889X",
+        "54849": "AB889X",
+        "54850": "AB889X",
+        "54853": "AB889X",
+        "54854": "AB889X",
+        "54855": "AB889X",
+        "54856": "AB889X",
+        "54857": "AB889X",
+        "54858": "AB889X",
+        "54859": "AB889X",
+        "54861": "AB889X",
+        "54862": "AB889X",
+        "54864": "AB889X",
+        "54865": "AB889X",
+        "54867": "AB889X",
+        "54868": "AB889X",
+        "54870": "AB889X",
+        "54871": "AB889X",
+        "54872": "AB889X",
+        "54873": "AB889X",
+        "54874": "AB889X",
+        "54875": "AB889X",
+        "54876": "AB889X",
+        "54880": "AB889X",
+        "54888": "AB889X",
+        "54889": "AB889X",
+        "54890": "AB889X",
+        "54891": "AB889X",
+        "54893": "AB889X",
+        "54895": "AB889X",
+        "54896": "AB889X",
+        "54901": "AB889X",
+        "54902": "AB887X",
+        "54903": "AB887X",
+        "54904": "AB887X",
+        "54906": "AB887X",
+        "54909": "AB887X",
+        "54911": "AB887X",
+        "54912": "AB887X",
+        "54913": "AB887X",
+        "54914": "AB887X",
+        "54915": "AB887X",
+        "54919": "AB887X",
+        "54921": "AB887X",
+        "54922": "AB887X",
+        "54923": "AB887X",
+        "54926": "AB887X",
+        "54927": "AB887X",
+        "54928": "AB887X",
+        "54929": "AB887X",
+        "54930": "AB887X",
+        "54931": "AB887X",
+        "54932": "AB887X",
+        "54933": "AB887X",
+        "54934": "AB887X",
+        "54935": "AB887X",
+        "54936": "AB887X",
+        "54937": "AB887X",
+        "54940": "AB887X",
+        "54941": "AB887X",
+        "54942": "AB887X",
+        "54943": "AB887X",
+        "54944": "AB887X",
+        "54945": "AB887X",
+        "54946": "AB887X",
+        "54947": "AB887X",
+        "54948": "AB887X",
+        "54949": "AB887X",
+        "54950": "AB887X",
+        "54952": "AB887X",
+        "54956": "AB887X",
+        "54957": "AB887X",
+        "54960": "AB887X",
+        "54961": "AB887X",
+        "54962": "AB887X",
+        "54963": "AB887X",
+        "54964": "AB887X",
+        "54965": "AB887X",
+        "54966": "AB887X",
+        "54967": "AB887X",
+        "54968": "AB887X",
+        "54969": "AB887X",
+        "54970": "AB887X",
+        "54971": "AB887X",
+        "54974": "AB887X",
+        "54976": "AB887X",
+        "54977": "AB887X",
+        "54978": "AB887X",
+        "54979": "AB887X",
+        "54980": "AB887X",
+        "54981": "AB889X",
+        "54982": "AB887X",
+        "54983": "AB887X",
+        "54984": "AB887X",
+        "54985": "AB887X",
+        "54986": "AB887X",
+        "54990": "AB887X",
+        "55001": "AB889X",
+        "55002": "AB889X",
+        "55003": "AB889X",
+        "55005": "AB889X",
+        "55006": "AB889X",
+        "55007": "AB889X",
+        "55008": "AB889X",
+        "55009": "AB889X",
+        "55010": "AB889X",
+        "55011": "AB889X",
+        "55012": "AB889X",
+        "55013": "AB889X",
+        "55014": "AB889X",
+        "55016": "AB889X",
+        "55017": "AB889X",
+        "55018": "AB889X",
+        "55019": "AB889X",
+        "55020": "AB889X",
+        "55021": "AB889X",
+        "55024": "AB889X",
+        "55025": "AB889X",
+        "55026": "AB889X",
+        "55027": "AB889X",
+        "55029": "AB889X",
+        "55030": "AB889X",
+        "55031": "AB889X",
+        "55032": "AB889X",
+        "55033": "AB889X",
+        "55036": "AB889X",
+        "55037": "AB889X",
+        "55038": "AB889X",
+        "55040": "AB889X",
+        "55041": "AB889X",
+        "55042": "AB889X",
+        "55043": "AB889X",
+        "55044": "AB889X",
+        "55045": "AB889X",
+        "55046": "AB889X",
+        "55047": "AB889X",
+        "55049": "AB889X",
+        "55051": "AB889X",
+        "55052": "AB889X",
+        "55053": "AB889X",
+        "55054": "AB889X",
+        "55055": "AB889X",
+        "55056": "AB889X",
+        "55057": "AB889X",
+        "55060": "AB889X",
+        "55063": "AB889X",
+        "55065": "AB889X",
+        "55066": "AB889X",
+        "55067": "AB889X",
+        "55068": "AB889X",
+        "55069": "AB889X",
+        "55070": "AB889X",
+        "55071": "AB889X",
+        "55072": "AB889X",
+        "55073": "AB889X",
+        "55074": "AB889X",
+        "55075": "AB889X",
+        "55076": "AB889X",
+        "55077": "AB889X",
+        "55078": "AB889X",
+        "55079": "AB889X",
+        "55080": "AB889X",
+        "55082": "AB889X",
+        "55083": "AB889X",
+        "55084": "AB889X",
+        "55085": "AB889X",
+        "55087": "AB889X",
+        "55088": "AB889X",
+        "55089": "AB889X",
+        "55090": "AB889X",
+        "55092": "AB889X",
+        "55101": "AB889X",
+        "55102": "AB889X",
+        "55103": "AB889X",
+        "55104": "AB889X",
+        "55105": "AB889X",
+        "55106": "AB889X",
+        "55107": "AB889X",
+        "55108": "AB889X",
+        "55109": "AB889X",
+        "55110": "AB889X",
+        "55111": "AB889X",
+        "55112": "AB889X",
+        "55113": "AB889X",
+        "55114": "AB889X",
+        "55115": "AB889X",
+        "55116": "AB889X",
+        "55117": "AB889X",
+        "55118": "AB889X",
+        "55119": "AB889X",
+        "55120": "AB889X",
+        "55121": "AB889X",
+        "55122": "AB889X",
+        "55123": "AB889X",
+        "55124": "AB889X",
+        "55125": "AB889X",
+        "55126": "AB889X",
+        "55127": "AB889X",
+        "55128": "AB889X",
+        "55129": "AB889X",
+        "55130": "AB889X",
+        "55133": "AB889X",
+        "55144": "AB889X",
+        "55145": "AB889X",
+        "55146": "AB889X",
+        "55150": "AB889X",
+        "55155": "AB889X",
+        "55161": "AB889X",
+        "55164": "AB889X",
+        "55165": "AB889X",
+        "55166": "AB889X",
+        "55168": "AB889X",
+        "55169": "AB889X",
+        "55170": "AB889X",
+        "55171": "AB889X",
+        "55172": "AB889X",
+        "55175": "AB889X",
+        "55177": "AB889X",
+        "55187": "AB889X",
+        "55188": "AB889X",
+        "55191": "AB889X",
+        "55301": "AB889X",
+        "55302": "AB889X",
+        "55303": "AB889X",
+        "55304": "AB889X",
+        "55305": "AB889X",
+        "55306": "AB889X",
+        "55307": "AB889X",
+        "55308": "AB889X",
+        "55309": "AB889X",
+        "55310": "AB889X",
+        "55311": "AB889X",
+        "55312": "AB889X",
+        "55313": "AB889X",
+        "55314": "AB889X",
+        "55315": "AB889X",
+        "55316": "AB889X",
+        "55317": "AB889X",
+        "55318": "AB889X",
+        "55319": "AB889X",
+        "55320": "AB889X",
+        "55321": "AB889X",
+        "55322": "AB889X",
+        "55323": "AB889X",
+        "55324": "AB889X",
+        "55325": "AB889X",
+        "55327": "AB889X",
+        "55328": "AB889X",
+        "55329": "AB889X",
+        "55330": "AB889X",
+        "55331": "AB889X",
+        "55332": "AB889X",
+        "55333": "AB889X",
+        "55334": "AB889X",
+        "55335": "AB889X",
+        "55336": "AB889X",
+        "55337": "AB889X",
+        "55338": "AB889X",
+        "55339": "AB889X",
+        "55340": "AB889X",
+        "55341": "AB889X",
+        "55342": "AB889X",
+        "55343": "AB889X",
+        "55344": "AB889X",
+        "55345": "AB889X",
+        "55346": "AB889X",
+        "55347": "AB889X",
+        "55348": "AB889X",
+        "55349": "AB889X",
+        "55350": "AB889X",
+        "55352": "AB889X",
+        "55353": "AB889X",
+        "55354": "AB889X",
+        "55355": "AB889X",
+        "55356": "AB889X",
+        "55357": "AB889X",
+        "55358": "AB889X",
+        "55359": "AB889X",
+        "55360": "AB889X",
+        "55361": "AB889X",
+        "55362": "AB889X",
+        "55363": "AB889X",
+        "55364": "AB889X",
+        "55365": "AB889X",
+        "55366": "AB889X",
+        "55367": "AB889X",
+        "55368": "AB889X",
+        "55369": "AB889X",
+        "55370": "AB889X",
+        "55371": "AB889X",
+        "55372": "AB889X",
+        "55373": "AB889X",
+        "55374": "AB889X",
+        "55375": "AB889X",
+        "55376": "AB889X",
+        "55377": "AB889X",
+        "55378": "AB889X",
+        "55379": "AB889X",
+        "55380": "AB889X",
+        "55381": "AB889X",
+        "55382": "AB889X",
+        "55383": "AB889X",
+        "55384": "AB889X",
+        "55385": "AB889X",
+        "55386": "AB889X",
+        "55387": "AB889X",
+        "55388": "AB889X",
+        "55389": "AB889X",
+        "55390": "AB889X",
+        "55391": "AB889X",
+        "55392": "AB889X",
+        "55393": "AB889X",
+        "55394": "AB889X",
+        "55395": "AB889X",
+        "55396": "AB889X",
+        "55397": "AB889X",
+        "55398": "AB889X",
+        "55399": "AB889X",
+        "55401": "AB889X",
+        "55402": "AB889X",
+        "55403": "AB889X",
+        "55404": "AB889X",
+        "55405": "AB889X",
+        "55406": "AB889X",
+        "55407": "AB889X",
+        "55408": "AB889X",
+        "55409": "AB889X",
+        "55410": "AB889X",
+        "55411": "AB889X",
+        "55412": "AB889X",
+        "55413": "AB889X",
+        "55414": "AB889X",
+        "55415": "AB889X",
+        "55416": "AB889X",
+        "55417": "AB889X",
+        "55418": "AB889X",
+        "55419": "AB889X",
+        "55420": "AB889X",
+        "55421": "AB889X",
+        "55422": "AB889X",
+        "55423": "AB889X",
+        "55424": "AB889X",
+        "55425": "AB889X",
+        "55426": "AB889X",
+        "55427": "AB889X",
+        "55428": "AB889X",
+        "55429": "AB889X",
+        "55430": "AB889X",
+        "55431": "AB889X",
+        "55432": "AB889X",
+        "55433": "AB889X",
+        "55434": "AB889X",
+        "55435": "AB889X",
+        "55436": "AB889X",
+        "55437": "AB889X",
+        "55438": "AB889X",
+        "55439": "AB889X",
+        "55440": "AB889X",
+        "55441": "AB889X",
+        "55442": "AB889X",
+        "55443": "AB889X",
+        "55444": "AB889X",
+        "55445": "AB889X",
+        "55446": "AB889X",
+        "55447": "AB889X",
+        "55448": "AB889X",
+        "55449": "AB889X",
+        "55450": "AB889X",
+        "55454": "AB889X",
+        "55455": "AB889X",
+        "55458": "AB889X",
+        "55459": "AB889X",
+        "55460": "AB889X",
+        "55467": "AB889X",
+        "55468": "AB889X",
+        "55470": "AB889X",
+        "55472": "AB889X",
+        "55473": "AB889X",
+        "55474": "AB889X",
+        "55478": "AB889X",
+        "55479": "AB889X",
+        "55480": "AB889X",
+        "55483": "AB889X",
+        "55484": "AB889X",
+        "55485": "AB889X",
+        "55486": "AB889X",
+        "55487": "AB889X",
+        "55488": "AB889X",
+        "55550": "AB889X",
+        "55551": "AB889X",
+        "55552": "AB889X",
+        "55553": "AB889X",
+        "55554": "AB889X",
+        "55555": "AB889X",
+        "55556": "AB889X",
+        "55557": "AB889X",
+        "55558": "AB889X",
+        "55559": "AB889X",
+        "55560": "AB889X",
+        "55561": "AB889X",
+        "55562": "AB889X",
+        "55563": "AB889X",
+        "55564": "AB889X",
+        "55565": "AB889X",
+        "55566": "AB889X",
+        "55567": "AB889X",
+        "55568": "AB889X",
+        "55569": "AB889X",
+        "55570": "AB889X",
+        "55571": "AB889X",
+        "55572": "AB889X",
+        "55573": "AB889X",
+        "55574": "AB889X",
+        "55575": "AB889X",
+        "55576": "AB889X",
+        "55577": "AB889X",
+        "55578": "AB889X",
+        "55579": "AB889X",
+        "55580": "AB889X",
+        "55581": "AB889X",
+        "55582": "AB889X",
+        "55583": "AB889X",
+        "55584": "AB889X",
+        "55585": "AB889X",
+        "55586": "AB889X",
+        "55587": "AB889X",
+        "55588": "AB889X",
+        "55589": "AB889X",
+        "55590": "AB889X",
+        "55591": "AB889X",
+        "55592": "AB889X",
+        "55593": "AB889X",
+        "55594": "AB889X",
+        "55595": "AB889X",
+        "55596": "AB889X",
+        "55597": "AB889X",
+        "55598": "AB889X",
+        "55599": "AB889X",
+        "55601": "AB889X",
+        "55602": "AB889X",
+        "55603": "AB889X",
+        "55604": "AB889X",
+        "55605": "AB889X",
+        "55606": "AB889X",
+        "55607": "AB889X",
+        "55609": "AB889X",
+        "55612": "AB889X",
+        "55613": "AB889X",
+        "55614": "AB889X",
+        "55615": "AB889X",
+        "55616": "AB889X",
+        "55659": "AB889X",
+        "55701": "AB889X",
+        "55702": "AB889X",
+        "55703": "AB889X",
+        "55704": "AB889X",
+        "55705": "AB889X",
+        "55706": "AB889X",
+        "55707": "AB889X",
+        "55708": "AB889X",
+        "55709": "AB889X",
+        "55710": "AB889X",
+        "55711": "AB889X",
+        "55712": "AB889X",
+        "55713": "AB889X",
+        "55716": "AB889X",
+        "55717": "AB889X",
+        "55718": "AB889X",
+        "55719": "AB889X",
+        "55720": "AB889X",
+        "55721": "AB889X",
+        "55722": "AB889X",
+        "55723": "AB889X",
+        "55724": "AB889X",
+        "55725": "AB889X",
+        "55726": "AB889X",
+        "55729": "AB889X",
+        "55730": "AB889X",
+        "55731": "AB889X",
+        "55732": "AB889X",
+        "55733": "AB889X",
+        "55734": "AB889X",
+        "55735": "AB889X",
+        "55736": "AB889X",
+        "55738": "AB889X",
+        "55741": "AB889X",
+        "55742": "AB889X",
+        "55744": "AB889X",
+        "55745": "AB889X",
+        "55746": "AB889X",
+        "55747": "AB889X",
+        "55748": "AB889X",
+        "55749": "AB889X",
+        "55750": "AB889X",
+        "55751": "AB889X",
+        "55752": "AB889X",
+        "55753": "AB889X",
+        "55756": "AB889X",
+        "55757": "AB889X",
+        "55758": "AB889X",
+        "55760": "AB889X",
+        "55763": "AB889X",
+        "55764": "AB889X",
+        "55765": "AB889X",
+        "55766": "AB889X",
+        "55767": "AB889X",
+        "55768": "AB889X",
+        "55769": "AB889X",
+        "55771": "AB889X",
+        "55772": "AB889X",
+        "55773": "AB889X",
+        "55775": "AB889X",
+        "55777": "AB889X",
+        "55779": "AB889X",
+        "55780": "AB889X",
+        "55781": "AB889X",
+        "55782": "AB889X",
+        "55783": "AB889X",
+        "55784": "AB889X",
+        "55785": "AB889X",
+        "55786": "AB889X",
+        "55787": "AB889X",
+        "55790": "AB889X",
+        "55791": "AB889X",
+        "55792": "AB889X",
+        "55793": "AB889X",
+        "55795": "AB889X",
+        "55796": "AB889X",
+        "55797": "AB889X",
+        "55798": "AB889X",
+        "55801": "AB889X",
+        "55802": "AB889X",
+        "55803": "AB889X",
+        "55804": "AB889X",
+        "55805": "AB889X",
+        "55806": "AB889X",
+        "55807": "AB889X",
+        "55808": "AB889X",
+        "55810": "AB889X",
+        "55811": "AB889X",
+        "55812": "AB889X",
+        "55814": "AB889X",
+        "55815": "AB889X",
+        "55816": "AB889X",
+        "55880": "AB889X",
+        "55901": "AB889X",
+        "55902": "AB889X",
+        "55903": "AB889X",
+        "55904": "AB889X",
+        "55905": "AB889X",
+        "55906": "AB889X",
+        "55909": "AB889X",
+        "55910": "AB889X",
+        "55912": "AB889X",
+        "55917": "AB889X",
+        "55918": "AB889X",
+        "55919": "AB889X",
+        "55920": "AB889X",
+        "55921": "AB889X",
+        "55922": "AB889X",
+        "55923": "AB889X",
+        "55924": "AB889X",
+        "55925": "AB889X",
+        "55926": "AB889X",
+        "55927": "AB889X",
+        "55929": "AB889X",
+        "55931": "AB889X",
+        "55932": "AB889X",
+        "55933": "AB889X",
+        "55934": "AB889X",
+        "55935": "AB889X",
+        "55936": "AB889X",
+        "55939": "AB889X",
+        "55940": "AB889X",
+        "55941": "AB889X",
+        "55942": "AB889X",
+        "55943": "AB889X",
+        "55944": "AB889X",
+        "55945": "AB889X",
+        "55946": "AB889X",
+        "55947": "AB889X",
+        "55949": "AB889X",
+        "55950": "AB889X",
+        "55951": "AB889X",
+        "55952": "AB889X",
+        "55953": "AB889X",
+        "55954": "AB889X",
+        "55955": "AB889X",
+        "55956": "AB889X",
+        "55957": "AB889X",
+        "55959": "AB889X",
+        "55960": "AB889X",
+        "55961": "AB889X",
+        "55962": "AB889X",
+        "55963": "AB889X",
+        "55964": "AB889X",
+        "55965": "AB889X",
+        "55967": "AB889X",
+        "55968": "AB889X",
+        "55969": "AB889X",
+        "55970": "AB889X",
+        "55971": "AB889X",
+        "55972": "AB889X",
+        "55973": "AB889X",
+        "55974": "AB889X",
+        "55975": "AB889X",
+        "55976": "AB889X",
+        "55977": "AB889X",
+        "55979": "AB889X",
+        "55981": "AB889X",
+        "55982": "AB889X",
+        "55983": "AB889X",
+        "55985": "AB889X",
+        "55987": "AB889X",
+        "55988": "AB889X",
+        "55990": "AB889X",
+        "55991": "AB889X",
+        "55992": "AB889X",
+        "56001": "AB889X",
+        "56002": "AB889X",
+        "56003": "AB889X",
+        "56006": "AB889X",
+        "56007": "AB889X",
+        "56009": "AB889X",
+        "56010": "AB889X",
+        "56011": "AB889X",
+        "56013": "AB889X",
+        "56014": "AB889X",
+        "56016": "AB889X",
+        "56017": "AB889X",
+        "56019": "AB889X",
+        "56020": "AB889X",
+        "56021": "AB889X",
+        "56022": "AB889X",
+        "56023": "AB889X",
+        "56024": "AB889X",
+        "56025": "AB889X",
+        "56026": "AB889X",
+        "56027": "AB889X",
+        "56028": "AB889X",
+        "56029": "AB889X",
+        "56030": "AB889X",
+        "56031": "AB889X",
+        "56032": "AB889X",
+        "56033": "AB889X",
+        "56034": "AB889X",
+        "56035": "AB889X",
+        "56036": "AB889X",
+        "56037": "AB889X",
+        "56039": "AB889X",
+        "56041": "AB889X",
+        "56042": "AB889X",
+        "56043": "AB889X",
+        "56044": "AB889X",
+        "56045": "AB889X",
+        "56046": "AB889X",
+        "56047": "AB889X",
+        "56048": "AB889X",
+        "56050": "AB889X",
+        "56051": "AB889X",
+        "56052": "AB889X",
+        "56054": "AB889X",
+        "56055": "AB889X",
+        "56056": "AB889X",
+        "56057": "AB889X",
+        "56058": "AB889X",
+        "56060": "AB889X",
+        "56062": "AB889X",
+        "56063": "AB889X",
+        "56065": "AB889X",
+        "56068": "AB889X",
+        "56069": "AB889X",
+        "56071": "AB889X",
+        "56072": "AB889X",
+        "56073": "AB889X",
+        "56074": "AB889X",
+        "56075": "AB889X",
+        "56078": "AB889X",
+        "56080": "AB889X",
+        "56081": "AB889X",
+        "56082": "AB889X",
+        "56083": "AB889X",
+        "56084": "AB889X",
+        "56085": "AB889X",
+        "56087": "AB889X",
+        "56088": "AB889X",
+        "56089": "AB889X",
+        "56090": "AB889X",
+        "56091": "AB889X",
+        "56093": "AB889X",
+        "56096": "AB889X",
+        "56097": "AB889X",
+        "56098": "AB889X",
+        "56101": "AB889X",
+        "56110": "AB891X",
+        "56111": "AB889X",
+        "56113": "AB889X",
+        "56114": "AB889X",
+        "56115": "AB889X",
+        "56116": "AB889X",
+        "56117": "AB891X",
+        "56118": "AB889X",
+        "56119": "AB891X",
+        "56120": "AB889X",
+        "56121": "AB889X",
+        "56122": "AB889X",
+        "56123": "AB889X",
+        "56125": "AB889X",
+        "56127": "AB889X",
+        "56128": "AB889X",
+        "56129": "AB891X",
+        "56131": "AB889X",
+        "56132": "AB889X",
+        "56134": "AB889X",
+        "56136": "AB891X",
+        "56137": "AB889X",
+        "56138": "AB889X",
+        "56139": "AB889X",
+        "56140": "AB889X",
+        "56141": "AB889X",
+        "56142": "AB891X",
+        "56143": "AB889X",
+        "56144": "AB889X",
+        "56145": "AB889X",
+        "56146": "AB891X",
+        "56147": "AB889X",
+        "56149": "AB891X",
+        "56150": "AB889X",
+        "56151": "AB889X",
+        "56152": "AB889X",
+        "56153": "AB891X",
+        "56155": "AB891X",
+        "56156": "AB889X",
+        "56157": "AB889X",
+        "56158": "AB889X",
+        "56159": "AB889X",
+        "56160": "AB889X",
+        "56161": "AB889X",
+        "56162": "AB889X",
+        "56164": "AB889X",
+        "56165": "AB891X",
+        "56166": "AB889X",
+        "56167": "AB891X",
+        "56168": "AB891X",
+        "56169": "AB891X",
+        "56170": "AB889X",
+        "56171": "AB889X",
+        "56172": "AB889X",
+        "56173": "AB889X",
+        "56174": "AB889X",
+        "56175": "AB889X",
+        "56176": "AB889X",
+        "56177": "AB889X",
+        "56178": "AB891X",
+        "56180": "AB889X",
+        "56181": "AB889X",
+        "56183": "AB889X",
+        "56185": "AB891X",
+        "56186": "AB889X",
+        "56187": "AB891X",
+        "56201": "AB889X",
+        "56207": "AB889X",
+        "56208": "AB889X",
+        "56209": "AB889X",
+        "56210": "AB889X",
+        "56211": "AB889X",
+        "56212": "AB889X",
+        "56214": "AB889X",
+        "56215": "AB889X",
+        "56216": "AB889X",
+        "56218": "AB889X",
+        "56219": "AB889X",
+        "56220": "AB889X",
+        "56221": "AB889X",
+        "56222": "AB889X",
+        "56223": "AB889X",
+        "56224": "AB889X",
+        "56225": "AB889X",
+        "56226": "AB889X",
+        "56227": "AB889X",
+        "56228": "AB889X",
+        "56229": "AB889X",
+        "56230": "AB889X",
+        "56231": "AB889X",
+        "56232": "AB889X",
+        "56235": "AB889X",
+        "56236": "AB889X",
+        "56237": "AB889X",
+        "56239": "AB889X",
+        "56240": "AB889X",
+        "56241": "AB889X",
+        "56243": "AB889X",
+        "56244": "AB889X",
+        "56245": "AB889X",
+        "56248": "AB889X",
+        "56249": "AB889X",
+        "56251": "AB889X",
+        "56252": "AB889X",
+        "56253": "AB889X",
+        "56254": "AB889X",
+        "56255": "AB889X",
+        "56256": "AB889X",
+        "56257": "AB889X",
+        "56258": "AB889X",
+        "56260": "AB889X",
+        "56262": "AB889X",
+        "56263": "AB889X",
+        "56264": "AB889X",
+        "56265": "AB889X",
+        "56266": "AB889X",
+        "56267": "AB889X",
+        "56268": "AB889X",
+        "56270": "AB889X",
+        "56271": "AB889X",
+        "56272": "AB889X",
+        "56273": "AB889X",
+        "56274": "AB889X",
+        "56276": "AB889X",
+        "56277": "AB889X",
+        "56278": "AB889X",
+        "56279": "AB889X",
+        "56280": "AB889X",
+        "56281": "AB889X",
+        "56282": "AB889X",
+        "56283": "AB889X",
+        "56284": "AB889X",
+        "56285": "AB889X",
+        "56287": "AB889X",
+        "56288": "AB889X",
+        "56289": "AB889X",
+        "56291": "AB889X",
+        "56292": "AB889X",
+        "56293": "AB889X",
+        "56294": "AB889X",
+        "56295": "AB889X",
+        "56296": "AB889X",
+        "56297": "AB889X",
+        "56301": "AB889X",
+        "56302": "AB889X",
+        "56303": "AB889X",
+        "56304": "AB889X",
+        "56307": "AB889X",
+        "56308": "AB889X",
+        "56309": "AB889X",
+        "56310": "AB889X",
+        "56311": "AB889X",
+        "56312": "AB889X",
+        "56313": "AB889X",
+        "56314": "AB889X",
+        "56315": "AB889X",
+        "56316": "AB889X",
+        "56317": "AB889X",
+        "56318": "AB889X",
+        "56319": "AB889X",
+        "56320": "AB889X",
+        "56321": "AB889X",
+        "56323": "AB889X",
+        "56324": "AB889X",
+        "56325": "AB889X",
+        "56326": "AB889X",
+        "56327": "AB889X",
+        "56328": "AB889X",
+        "56329": "AB889X",
+        "56330": "AB889X",
+        "56331": "AB889X",
+        "56332": "AB889X",
+        "56333": "AB889X",
+        "56334": "AB889X",
+        "56335": "AB889X",
+        "56336": "AB889X",
+        "56338": "AB889X",
+        "56339": "AB889X",
+        "56340": "AB889X",
+        "56341": "AB889X",
+        "56342": "AB889X",
+        "56343": "AB889X",
+        "56344": "AB889X",
+        "56345": "AB889X",
+        "56347": "AB889X",
+        "56349": "AB889X",
+        "56350": "AB889X",
+        "56352": "AB889X",
+        "56353": "AB889X",
+        "56354": "AB889X",
+        "56355": "AB889X",
+        "56356": "AB889X",
+        "56357": "AB889X",
+        "56358": "AB889X",
+        "56359": "AB889X",
+        "56360": "AB889X",
+        "56361": "AB889X",
+        "56362": "AB889X",
+        "56363": "AB889X",
+        "56364": "AB889X",
+        "56367": "AB889X",
+        "56368": "AB889X",
+        "56369": "AB889X",
+        "56371": "AB889X",
+        "56372": "AB889X",
+        "56373": "AB889X",
+        "56374": "AB889X",
+        "56375": "AB889X",
+        "56376": "AB889X",
+        "56377": "AB889X",
+        "56378": "AB889X",
+        "56379": "AB889X",
+        "56381": "AB889X",
+        "56382": "AB889X",
+        "56384": "AB889X",
+        "56385": "AB889X",
+        "56386": "AB889X",
+        "56387": "AB889X",
+        "56388": "AB889X",
+        "56389": "AB889X",
+        "56393": "AB889X",
+        "56395": "AB889X",
+        "56396": "AB889X",
+        "56397": "AB889X",
+        "56398": "AB889X",
+        "56399": "AB889X",
+        "56401": "AB889X",
+        "56425": "AB889X",
+        "56430": "AB889X",
+        "56431": "AB889X",
+        "56433": "AB889X",
+        "56434": "AB889X",
+        "56435": "AB889X",
+        "56436": "AB889X",
+        "56437": "AB889X",
+        "56438": "AB889X",
+        "56440": "AB889X",
+        "56441": "AB889X",
+        "56442": "AB889X",
+        "56443": "AB889X",
+        "56444": "AB889X",
+        "56446": "AB889X",
+        "56447": "AB889X",
+        "56448": "AB889X",
+        "56449": "AB889X",
+        "56450": "AB889X",
+        "56452": "AB889X",
+        "56453": "AB889X",
+        "56455": "AB889X",
+        "56456": "AB889X",
+        "56458": "AB889X",
+        "56459": "AB889X",
+        "56461": "AB889X",
+        "56464": "AB889X",
+        "56465": "AB889X",
+        "56466": "AB889X",
+        "56467": "AB889X",
+        "56468": "AB889X",
+        "56469": "AB889X",
+        "56470": "AB889X",
+        "56472": "AB889X",
+        "56473": "AB889X",
+        "56474": "AB889X",
+        "56475": "AB889X",
+        "56477": "AB889X",
+        "56478": "AB889X",
+        "56479": "AB889X",
+        "56481": "AB889X",
+        "56482": "AB889X",
+        "56484": "AB889X",
+        "56501": "AB889X",
+        "56502": "AB889X",
+        "56510": "AB889X",
+        "56511": "AB889X",
+        "56514": "AB889X",
+        "56515": "AB889X",
+        "56516": "AB889X",
+        "56517": "AB889X",
+        "56518": "AB889X",
+        "56519": "AB889X",
+        "56520": "AB889X",
+        "56521": "AB889X",
+        "56522": "AB889X",
+        "56523": "AB889X",
+        "56524": "AB889X",
+        "56525": "AB889X",
+        "56527": "AB889X",
+        "56528": "AB889X",
+        "56529": "AB889X",
+        "56531": "AB889X",
+        "56533": "AB889X",
+        "56534": "AB889X",
+        "56535": "AB889X",
+        "56536": "AB889X",
+        "56537": "AB889X",
+        "56538": "AB889X",
+        "56540": "AB889X",
+        "56541": "AB889X",
+        "56542": "AB889X",
+        "56543": "AB889X",
+        "56544": "AB889X",
+        "56545": "AB889X",
+        "56546": "AB889X",
+        "56547": "AB889X",
+        "56548": "AB889X",
+        "56549": "AB889X",
+        "56550": "AB889X",
+        "56551": "AB889X",
+        "56552": "AB889X",
+        "56553": "AB889X",
+        "56554": "AB889X",
+        "56556": "AB889X",
+        "56557": "AB889X",
+        "56560": "AB889X",
+        "56561": "AB889X",
+        "56562": "AB889X",
+        "56563": "AB889X",
+        "56565": "AB889X",
+        "56566": "AB889X",
+        "56567": "AB889X",
+        "56568": "AB889X",
+        "56569": "AB889X",
+        "56570": "AB889X",
+        "56571": "AB889X",
+        "56572": "AB889X",
+        "56573": "AB889X",
+        "56574": "AB889X",
+        "56575": "AB889X",
+        "56576": "AB889X",
+        "56577": "AB889X",
+        "56578": "AB889X",
+        "56579": "AB889X",
+        "56580": "AB889X",
+        "56581": "AB889X",
+        "56583": "AB889X",
+        "56584": "AB889X",
+        "56585": "AB889X",
+        "56586": "AB889X",
+        "56587": "AB889X",
+        "56588": "AB889X",
+        "56589": "AB889X",
+        "56590": "AB889X",
+        "56591": "AB889X",
+        "56592": "AB889X",
+        "56593": "AB889X",
+        "56594": "AB889X",
+        "56601": "AB889X",
+        "56619": "AB889X",
+        "56621": "AB889X",
+        "56623": "AB889X",
+        "56626": "AB889X",
+        "56627": "AB889X",
+        "56628": "AB889X",
+        "56629": "AB889X",
+        "56630": "AB889X",
+        "56631": "AB889X",
+        "56633": "AB889X",
+        "56634": "AB889X",
+        "56636": "AB889X",
+        "56637": "AB889X",
+        "56639": "AB889X",
+        "56641": "AB889X",
+        "56644": "AB889X",
+        "56646": "AB889X",
+        "56647": "AB889X",
+        "56649": "AB889X",
+        "56650": "AB889X",
+        "56651": "AB889X",
+        "56652": "AB889X",
+        "56653": "AB889X",
+        "56654": "AB889X",
+        "56655": "AB889X",
+        "56657": "AB889X",
+        "56658": "AB889X",
+        "56659": "AB889X",
+        "56660": "AB889X",
+        "56661": "AB889X",
+        "56662": "AB889X",
+        "56663": "AB889X",
+        "56666": "AB889X",
+        "56667": "AB889X",
+        "56668": "AB889X",
+        "56669": "AB889X",
+        "56670": "AB889X",
+        "56671": "AB889X",
+        "56672": "AB889X",
+        "56673": "AB889X",
+        "56676": "AB889X",
+        "56678": "AB889X",
+        "56679": "AB889X",
+        "56680": "AB889X",
+        "56681": "AB889X",
+        "56682": "AB889X",
+        "56683": "AB889X",
+        "56684": "AB889X",
+        "56685": "AB889X",
+        "56686": "AB889X",
+        "56687": "AB889X",
+        "56688": "AB889X",
+        "56701": "AB889X",
+        "56710": "AB889X",
+        "56711": "AB889X",
+        "56712": "AB889X",
+        "56713": "AB889X",
+        "56714": "AB889X",
+        "56715": "AB889X",
+        "56716": "AB889X",
+        "56720": "AB889X",
+        "56721": "AB889X",
+        "56722": "AB889X",
+        "56723": "AB889X",
+        "56724": "AB889X",
+        "56725": "AB889X",
+        "56726": "AB889X",
+        "56727": "AB889X",
+        "56728": "AB889X",
+        "56729": "AB889X",
+        "56731": "AB889X",
+        "56732": "AB889X",
+        "56733": "AB889X",
+        "56734": "AB889X",
+        "56735": "AB889X",
+        "56736": "AB889X",
+        "56737": "AB889X",
+        "56738": "AB889X",
+        "56740": "AB889X",
+        "56741": "AB889X",
+        "56742": "AB889X",
+        "56744": "AB889X",
+        "56748": "AB889X",
+        "56750": "AB889X",
+        "56751": "AB889X",
+        "56754": "AB889X",
+        "56755": "AB889X",
+        "56756": "AB889X",
+        "56757": "AB889X",
+        "56758": "AB889X",
+        "56759": "AB889X",
+        "56760": "AB889X",
+        "56761": "AB889X",
+        "56762": "AB889X",
+        "56763": "AB889X",
+        "57001": "AB891X",
+        "57002": "AB891X",
+        "57003": "AB891X",
+        "57004": "AB891X",
+        "57005": "AB891X",
+        "57006": "AB891X",
+        "57007": "AB891X",
+        "57010": "AB891X",
+        "57012": "AB891X",
+        "57013": "AB891X",
+        "57014": "AB891X",
+        "57015": "AB891X",
+        "57016": "AB891X",
+        "57017": "AB891X",
+        "57018": "AB891X",
+        "57020": "AB891X",
+        "57021": "AB891X",
+        "57022": "AB891X",
+        "57024": "AB891X",
+        "57025": "AB891X",
+        "57026": "AB891X",
+        "57027": "AB891X",
+        "57028": "AB891X",
+        "57029": "AB891X",
+        "57030": "AB891X",
+        "57031": "AB891X",
+        "57032": "AB891X",
+        "57033": "AB891X",
+        "57034": "AB891X",
+        "57035": "AB891X",
+        "57036": "AB891X",
+        "57037": "AB891X",
+        "57038": "AB891X",
+        "57039": "AB891X",
+        "57040": "AB891X",
+        "57041": "AB891X",
+        "57042": "AB891X",
+        "57043": "AB891X",
+        "57045": "AB891X",
+        "57046": "AB891X",
+        "57047": "AB891X",
+        "57048": "AB891X",
+        "57049": "AB891X",
+        "57050": "AB891X",
+        "57051": "AB891X",
+        "57052": "AB891X",
+        "57053": "AB891X",
+        "57054": "AB891X",
+        "57055": "AB891X",
+        "57056": "AB891X",
+        "57057": "AB891X",
+        "57058": "AB891X",
+        "57059": "AB891X",
+        "57061": "AB891X",
+        "57062": "AB891X",
+        "57063": "AB891X",
+        "57064": "AB891X",
+        "57065": "AB891X",
+        "57066": "AB891X",
+        "57067": "AB891X",
+        "57068": "AB891X",
+        "57069": "AB891X",
+        "57070": "AB891X",
+        "57071": "AB891X",
+        "57072": "AB891X",
+        "57073": "AB891X",
+        "57075": "AB891X",
+        "57076": "AB891X",
+        "57077": "AB891X",
+        "57078": "AB891X",
+        "57079": "AB891X",
+        "57101": "AB891X",
+        "57103": "AB891X",
+        "57104": "AB891X",
+        "57105": "AB891X",
+        "57106": "AB891X",
+        "57107": "AB891X",
+        "57108": "AB891X",
+        "57109": "AB891X",
+        "57110": "AB891X",
+        "57117": "AB891X",
+        "57118": "AB891X",
+        "57186": "AB891X",
+        "57188": "AB891X",
+        "57189": "AB891X",
+        "57192": "AB891X",
+        "57193": "AB891X",
+        "57194": "AB891X",
+        "57195": "AB891X",
+        "57196": "AB891X",
+        "57197": "AB891X",
+        "57198": "AB891X",
+        "57201": "AB891X",
+        "57212": "AB891X",
+        "57213": "AB891X",
+        "57214": "AB891X",
+        "57216": "AB891X",
+        "57217": "AB891X",
+        "57218": "AB891X",
+        "57219": "AB891X",
+        "57220": "AB891X",
+        "57221": "AB891X",
+        "57223": "AB891X",
+        "57224": "AB889X",
+        "57225": "AB891X",
+        "57226": "AB891X",
+        "57227": "AB889X",
+        "57231": "AB891X",
+        "57232": "AB891X",
+        "57233": "AB891X",
+        "57234": "AB891X",
+        "57235": "AB891X",
+        "57236": "AB891X",
+        "57237": "AB891X",
+        "57238": "AB891X",
+        "57239": "AB891X",
+        "57241": "AB891X",
+        "57242": "AB891X",
+        "57243": "AB891X",
+        "57245": "AB891X",
+        "57246": "AB891X",
+        "57247": "AB891X",
+        "57248": "AB891X",
+        "57249": "AB891X",
+        "57251": "AB891X",
+        "57252": "AB891X",
+        "57253": "AB891X",
+        "57255": "AB889X",
+        "57256": "AB889X",
+        "57257": "AB889X",
+        "57258": "AB891X",
+        "57259": "AB891X",
+        "57260": "AB889X",
+        "57261": "AB891X",
+        "57262": "AB889X",
+        "57263": "AB891X",
+        "57264": "AB891X",
+        "57265": "AB891X",
+        "57266": "AB889X",
+        "57268": "AB891X",
+        "57269": "AB891X",
+        "57270": "AB891X",
+        "57271": "AB891X",
+        "57272": "AB891X",
+        "57273": "AB891X",
+        "57274": "AB891X",
+        "57276": "AB891X",
+        "57278": "AB891X",
+        "57279": "AB889X",
+        "57301": "AB891X",
+        "57311": "AB891X",
+        "57312": "AB891X",
+        "57313": "AB891X",
+        "57314": "AB891X",
+        "57315": "AB891X",
+        "57317": "AB891X",
+        "57319": "AB891X",
+        "57321": "AB891X",
+        "57322": "AB891X",
+        "57323": "AB891X",
+        "57324": "AB891X",
+        "57325": "AB891X",
+        "57326": "AB891X",
+        "57328": "AB891X",
+        "57329": "AB891X",
+        "57330": "AB891X",
+        "57331": "AB891X",
+        "57332": "AB891X",
+        "57334": "AB891X",
+        "57335": "AB891X",
+        "57337": "AB891X",
+        "57339": "AB891X",
+        "57340": "AB891X",
+        "57341": "AB891X",
+        "57342": "AB891X",
+        "57344": "AB891X",
+        "57345": "AB891X",
+        "57346": "AB891X",
+        "57348": "AB891X",
+        "57349": "AB891X",
+        "57350": "AB891X",
+        "57353": "AB891X",
+        "57354": "AB891X",
+        "57355": "AB891X",
+        "57356": "AB891X",
+        "57358": "AB891X",
+        "57359": "AB891X",
+        "57361": "AB891X",
+        "57362": "AB891X",
+        "57363": "AB891X",
+        "57364": "AB891X",
+        "57365": "AB891X",
+        "57366": "AB891X",
+        "57367": "AB891X",
+        "57368": "AB891X",
+        "57369": "AB891X",
+        "57370": "AB891X",
+        "57371": "AB891X",
+        "57373": "AB891X",
+        "57374": "AB891X",
+        "57375": "AB891X",
+        "57376": "AB891X",
+        "57379": "AB891X",
+        "57380": "AB891X",
+        "57381": "AB891X",
+        "57382": "AB891X",
+        "57383": "AB891X",
+        "57384": "AB891X",
+        "57385": "AB891X",
+        "57386": "AB891X",
+        "57399": "AB891X",
+        "57401": "AB891X",
+        "57402": "AB891X",
+        "57420": "AB891X",
+        "57421": "AB891X",
+        "57422": "AB891X",
+        "57424": "AB891X",
+        "57426": "AB891X",
+        "57427": "AB891X",
+        "57428": "AB891X",
+        "57429": "AB891X",
+        "57430": "AB891X",
+        "57432": "AB891X",
+        "57433": "AB891X",
+        "57434": "AB891X",
+        "57435": "AB891X",
+        "57436": "AB891X",
+        "57437": "AB891X",
+        "57438": "AB891X",
+        "57439": "AB891X",
+        "57440": "AB891X",
+        "57441": "AB891X",
+        "57442": "AB891X",
+        "57445": "AB891X",
+        "57446": "AB891X",
+        "57448": "AB891X",
+        "57449": "AB891X",
+        "57450": "AB891X",
+        "57451": "AB891X",
+        "57452": "AB891X",
+        "57454": "AB891X",
+        "57455": "AB891X",
+        "57456": "AB891X",
+        "57457": "AB891X",
+        "57460": "AB891X",
+        "57461": "AB891X",
+        "57465": "AB891X",
+        "57466": "AB891X",
+        "57467": "AB891X",
+        "57468": "AB891X",
+        "57469": "AB891X",
+        "57470": "AB891X",
+        "57471": "AB891X",
+        "57472": "AB891X",
+        "57473": "AB891X",
+        "57474": "AB891X",
+        "57475": "AB891X",
+        "57476": "AB891X",
+        "57477": "AB891X",
+        "57479": "AB891X",
+        "57481": "AB891X",
+        "57501": "AB891X",
+        "57520": "AB891X",
+        "57521": "AB891X",
+        "57522": "AB891X",
+        "57523": "AB891X",
+        "57528": "AB891X",
+        "57529": "AB891X",
+        "57531": "AB891X",
+        "57532": "AB891X",
+        "57533": "AB891X",
+        "57534": "AB891X",
+        "57536": "AB891X",
+        "57537": "AB891X",
+        "57538": "AB891X",
+        "57540": "AB891X",
+        "57541": "AB891X",
+        "57543": "AB891X",
+        "57544": "AB891X",
+        "57547": "AB891X",
+        "57548": "AB891X",
+        "57551": "AB891X",
+        "57552": "AB891X",
+        "57553": "AB891X",
+        "57555": "AB891X",
+        "57559": "AB891X",
+        "57560": "AB891X",
+        "57562": "AB891X",
+        "57563": "AB891X",
+        "57564": "AB891X",
+        "57566": "AB891X",
+        "57567": "AB891X",
+        "57568": "AB891X",
+        "57569": "AB891X",
+        "57570": "AB891X",
+        "57571": "AB891X",
+        "57572": "AB891X",
+        "57574": "AB891X",
+        "57576": "AB891X",
+        "57577": "AB891X",
+        "57579": "AB891X",
+        "57580": "AB891X",
+        "57584": "AB891X",
+        "57585": "AB891X",
+        "57601": "AB891X",
+        "57620": "AB891X",
+        "57621": "AB891X",
+        "57622": "AB891X",
+        "57623": "AB891X",
+        "57625": "AB891X",
+        "57626": "AB891X",
+        "57630": "AB891X",
+        "57631": "AB891X",
+        "57632": "AB891X",
+        "57633": "AB891X",
+        "57634": "AB891X",
+        "57636": "AB891X",
+        "57638": "AB891X",
+        "57639": "AB891X",
+        "57640": "AB891X",
+        "57641": "AB891X",
+        "57642": "AB891X",
+        "57644": "AB891X",
+        "57645": "AB891X",
+        "57646": "AB891X",
+        "57648": "AB891X",
+        "57649": "AB891X",
+        "57650": "AB891X",
+        "57651": "AB891X",
+        "57652": "AB891X",
+        "57656": "AB891X",
+        "57657": "AB891X",
+        "57658": "AB891X",
+        "57659": "AB891X",
+        "57660": "AB891X",
+        "57661": "AB891X",
+        "57701": "AB887X",
+        "57702": "AB887X",
+        "57703": "AB887X",
+        "57706": "AB891X",
+        "57709": "AB887X",
+        "57714": "AB891X",
+        "57716": "AB891X",
+        "57717": "AB887X",
+        "57718": "AB891X",
+        "57719": "AB887X",
+        "57720": "AB891X",
+        "57722": "AB891X",
+        "57724": "AB891X",
+        "57725": "AB887X",
+        "57730": "AB891X",
+        "57732": "AB891X",
+        "57735": "AB891X",
+        "57737": "AB891X",
+        "57738": "AB891X",
+        "57741": "AB891X",
+        "57744": "AB891X",
+        "57745": "AB887X",
+        "57747": "AB891X",
+        "57748": "AB891X",
+        "57750": "AB891X",
+        "57751": "AB887X",
+        "57752": "AB891X",
+        "57754": "AB891X",
+        "57755": "AB891X",
+        "57756": "AB891X",
+        "57758": "AB891X",
+        "57759": "AB891X",
+        "57760": "AB887X",
+        "57761": "AB887X",
+        "57762": "AB887X",
+        "57763": "AB891X",
+        "57764": "AB891X",
+        "57766": "AB891X",
+        "57767": "AB887X",
+        "57769": "AB891X",
+        "57770": "AB891X",
+        "57772": "AB891X",
+        "57773": "AB891X",
+        "57775": "AB887X",
+        "57776": "AB891X",
+        "57779": "AB891X",
+        "57780": "AB887X",
+        "57782": "AB891X",
+        "57783": "AB891X",
+        "57785": "AB891X",
+        "57787": "AB891X",
+        "57788": "AB887X",
+        "57790": "AB887X",
+        "57791": "AB887X",
+        "57792": "AB891X",
+        "57793": "AB891X",
+        "57794": "AB891X",
+        "57799": "AB891X",
+        "58001": "AB889X",
+        "58002": "AB889X",
+        "58004": "AB889X",
+        "58005": "AB889X",
+        "58006": "AB889X",
+        "58007": "AB889X",
+        "58008": "AB889X",
+        "58009": "AB889X",
+        "58011": "AB889X",
+        "58012": "AB889X",
+        "58013": "AB889X",
+        "58015": "AB889X",
+        "58016": "AB889X",
+        "58017": "AB889X",
+        "58018": "AB889X",
+        "58021": "AB889X",
+        "58027": "AB889X",
+        "58029": "AB889X",
+        "58030": "AB889X",
+        "58031": "AB889X",
+        "58032": "AB889X",
+        "58033": "AB889X",
+        "58035": "AB889X",
+        "58036": "AB889X",
+        "58038": "AB889X",
+        "58040": "AB889X",
+        "58041": "AB889X",
+        "58042": "AB889X",
+        "58043": "AB889X",
+        "58045": "AB889X",
+        "58046": "AB889X",
+        "58047": "AB889X",
+        "58048": "AB889X",
+        "58049": "AB889X",
+        "58051": "AB889X",
+        "58052": "AB889X",
+        "58053": "AB889X",
+        "58054": "AB889X",
+        "58056": "AB889X",
+        "58057": "AB889X",
+        "58058": "AB889X",
+        "58059": "AB889X",
+        "58060": "AB889X",
+        "58061": "AB889X",
+        "58062": "AB889X",
+        "58063": "AB889X",
+        "58064": "AB889X",
+        "58065": "AB889X",
+        "58067": "AB889X",
+        "58068": "AB889X",
+        "58069": "AB889X",
+        "58071": "AB889X",
+        "58072": "AB889X",
+        "58074": "AB889X",
+        "58075": "AB889X",
+        "58076": "AB889X",
+        "58077": "AB889X",
+        "58078": "AB889X",
+        "58079": "AB889X",
+        "58081": "AB889X",
+        "58102": "AB889X",
+        "58103": "AB889X",
+        "58104": "AB889X",
+        "58105": "AB889X",
+        "58106": "AB889X",
+        "58107": "AB889X",
+        "58108": "AB889X",
+        "58109": "AB889X",
+        "58121": "AB889X",
+        "58122": "AB889X",
+        "58124": "AB889X",
+        "58125": "AB889X",
+        "58126": "AB889X",
+        "58201": "AB889X",
+        "58202": "AB889X",
+        "58203": "AB889X",
+        "58204": "AB889X",
+        "58205": "AB889X",
+        "58206": "AB889X",
+        "58207": "AB889X",
+        "58208": "AB889X",
+        "58210": "AB889X",
+        "58212": "AB889X",
+        "58214": "AB889X",
+        "58216": "AB889X",
+        "58218": "AB889X",
+        "58219": "AB889X",
+        "58220": "AB889X",
+        "58222": "AB889X",
+        "58223": "AB889X",
+        "58224": "AB889X",
+        "58225": "AB889X",
+        "58227": "AB889X",
+        "58228": "AB889X",
+        "58229": "AB889X",
+        "58230": "AB889X",
+        "58231": "AB889X",
+        "58233": "AB889X",
+        "58235": "AB889X",
+        "58236": "AB889X",
+        "58237": "AB889X",
+        "58238": "AB889X",
+        "58239": "AB889X",
+        "58240": "AB889X",
+        "58241": "AB889X",
+        "58243": "AB889X",
+        "58244": "AB889X",
+        "58249": "AB889X",
+        "58250": "AB889X",
+        "58251": "AB889X",
+        "58254": "AB889X",
+        "58255": "AB889X",
+        "58256": "AB889X",
+        "58257": "AB889X",
+        "58258": "AB889X",
+        "58259": "AB889X",
+        "58260": "AB889X",
+        "58261": "AB889X",
+        "58262": "AB889X",
+        "58265": "AB889X",
+        "58266": "AB889X",
+        "58267": "AB889X",
+        "58269": "AB889X",
+        "58270": "AB889X",
+        "58271": "AB889X",
+        "58272": "AB889X",
+        "58273": "AB889X",
+        "58274": "AB889X",
+        "58275": "AB889X",
+        "58276": "AB889X",
+        "58277": "AB889X",
+        "58278": "AB889X",
+        "58281": "AB889X",
+        "58282": "AB889X",
+        "58301": "AB889X",
+        "58310": "AB889X",
+        "58311": "AB889X",
+        "58313": "AB889X",
+        "58316": "AB889X",
+        "58317": "AB889X",
+        "58318": "AB889X",
+        "58319": "AB889X",
+        "58321": "AB889X",
+        "58323": "AB889X",
+        "58324": "AB889X",
+        "58325": "AB889X",
+        "58327": "AB889X",
+        "58329": "AB889X",
+        "58330": "AB889X",
+        "58331": "AB889X",
+        "58332": "AB889X",
+        "58335": "AB889X",
+        "58338": "AB889X",
+        "58339": "AB889X",
+        "58341": "AB889X",
+        "58343": "AB889X",
+        "58344": "AB889X",
+        "58345": "AB889X",
+        "58346": "AB889X",
+        "58348": "AB889X",
+        "58351": "AB889X",
+        "58352": "AB889X",
+        "58353": "AB889X",
+        "58355": "AB889X",
+        "58356": "AB889X",
+        "58357": "AB889X",
+        "58361": "AB889X",
+        "58362": "AB889X",
+        "58363": "AB889X",
+        "58365": "AB889X",
+        "58366": "AB889X",
+        "58367": "AB889X",
+        "58368": "AB889X",
+        "58369": "AB889X",
+        "58370": "AB889X",
+        "58372": "AB889X",
+        "58374": "AB889X",
+        "58377": "AB889X",
+        "58379": "AB889X",
+        "58380": "AB889X",
+        "58381": "AB889X",
+        "58382": "AB889X",
+        "58384": "AB889X",
+        "58385": "AB889X",
+        "58386": "AB889X",
+        "58401": "AB889X",
+        "58402": "AB889X",
+        "58405": "AB889X",
+        "58413": "AB889X",
+        "58415": "AB889X",
+        "58416": "AB889X",
+        "58418": "AB889X",
+        "58420": "AB889X",
+        "58421": "AB889X",
+        "58422": "AB889X",
+        "58423": "AB889X",
+        "58424": "AB889X",
+        "58425": "AB889X",
+        "58426": "AB889X",
+        "58428": "AB889X",
+        "58429": "AB889X",
+        "58430": "AB889X",
+        "58431": "AB889X",
+        "58433": "AB889X",
+        "58436": "AB889X",
+        "58438": "AB889X",
+        "58439": "AB889X",
+        "58440": "AB889X",
+        "58441": "AB889X",
+        "58442": "AB889X",
+        "58443": "AB889X",
+        "58444": "AB889X",
+        "58445": "AB889X",
+        "58448": "AB889X",
+        "58451": "AB889X",
+        "58452": "AB889X",
+        "58454": "AB889X",
+        "58455": "AB889X",
+        "58456": "AB889X",
+        "58458": "AB889X",
+        "58460": "AB889X",
+        "58461": "AB889X",
+        "58463": "AB889X",
+        "58464": "AB889X",
+        "58466": "AB889X",
+        "58467": "AB889X",
+        "58472": "AB889X",
+        "58474": "AB889X",
+        "58475": "AB889X",
+        "58476": "AB889X",
+        "58477": "AB889X",
+        "58478": "AB889X",
+        "58479": "AB889X",
+        "58480": "AB889X",
+        "58481": "AB889X",
+        "58482": "AB889X",
+        "58483": "AB889X",
+        "58484": "AB889X",
+        "58486": "AB889X",
+        "58487": "AB889X",
+        "58488": "AB889X",
+        "58490": "AB889X",
+        "58492": "AB889X",
+        "58494": "AB889X",
+        "58495": "AB889X",
+        "58496": "AB889X",
+        "58497": "AB889X",
+        "58501": "AB889X",
+        "58502": "AB889X",
+        "58503": "AB889X",
+        "58504": "AB889X",
+        "58505": "AB889X",
+        "58506": "AB889X",
+        "58507": "AB889X",
+        "58520": "AB889X",
+        "58521": "AB889X",
+        "58523": "AB889X",
+        "58524": "AB889X",
+        "58528": "AB889X",
+        "58529": "AB889X",
+        "58530": "AB889X",
+        "58531": "AB889X",
+        "58532": "AB889X",
+        "58533": "AB889X",
+        "58535": "AB889X",
+        "58538": "AB889X",
+        "58540": "AB889X",
+        "58541": "AB889X",
+        "58542": "AB889X",
+        "58544": "AB889X",
+        "58545": "AB889X",
+        "58549": "AB889X",
+        "58552": "AB889X",
+        "58554": "AB889X",
+        "58558": "AB889X",
+        "58559": "AB889X",
+        "58560": "AB889X",
+        "58561": "AB889X",
+        "58562": "AB889X",
+        "58563": "AB889X",
+        "58564": "AB889X",
+        "58565": "AB889X",
+        "58566": "AB889X",
+        "58568": "AB889X",
+        "58569": "AB889X",
+        "58570": "AB889X",
+        "58571": "AB889X",
+        "58572": "AB889X",
+        "58573": "AB889X",
+        "58575": "AB889X",
+        "58576": "AB889X",
+        "58577": "AB889X",
+        "58579": "AB889X",
+        "58580": "AB889X",
+        "58581": "AB889X",
+        "58601": "AB889X",
+        "58602": "AB889X",
+        "58620": "AB889X",
+        "58621": "AB889X",
+        "58622": "AB889X",
+        "58623": "AB889X",
+        "58625": "AB889X",
+        "58626": "AB889X",
+        "58627": "AB889X",
+        "58630": "AB889X",
+        "58631": "AB889X",
+        "58632": "AB889X",
+        "58634": "AB889X",
+        "58636": "AB889X",
+        "58638": "AB889X",
+        "58639": "AB889X",
+        "58640": "AB889X",
+        "58641": "AB889X",
+        "58642": "AB889X",
+        "58643": "AB889X",
+        "58644": "AB889X",
+        "58645": "AB889X",
+        "58646": "AB889X",
+        "58647": "AB889X",
+        "58649": "AB889X",
+        "58650": "AB889X",
+        "58651": "AB889X",
+        "58652": "AB889X",
+        "58653": "AB889X",
+        "58654": "AB889X",
+        "58655": "AB889X",
+        "58656": "AB889X",
+        "58701": "AB889X",
+        "58702": "AB889X",
+        "58703": "AB889X",
+        "58704": "AB889X",
+        "58705": "AB889X",
+        "58707": "AB889X",
+        "58710": "AB889X",
+        "58711": "AB889X",
+        "58712": "AB889X",
+        "58713": "AB889X",
+        "58716": "AB889X",
+        "58718": "AB889X",
+        "58721": "AB889X",
+        "58722": "AB889X",
+        "58723": "AB889X",
+        "58725": "AB889X",
+        "58727": "AB889X",
+        "58730": "AB889X",
+        "58731": "AB889X",
+        "58733": "AB889X",
+        "58734": "AB889X",
+        "58735": "AB889X",
+        "58736": "AB889X",
+        "58737": "AB889X",
+        "58740": "AB889X",
+        "58741": "AB889X",
+        "58744": "AB889X",
+        "58746": "AB889X",
+        "58748": "AB889X",
+        "58750": "AB889X",
+        "58752": "AB889X",
+        "58755": "AB889X",
+        "58756": "AB889X",
+        "58757": "AB889X",
+        "58758": "AB889X",
+        "58759": "AB889X",
+        "58760": "AB889X",
+        "58761": "AB889X",
+        "58762": "AB889X",
+        "58763": "AB889X",
+        "58765": "AB889X",
+        "58768": "AB889X",
+        "58769": "AB889X",
+        "58770": "AB889X",
+        "58771": "AB889X",
+        "58772": "AB889X",
+        "58773": "AB889X",
+        "58775": "AB889X",
+        "58776": "AB889X",
+        "58778": "AB889X",
+        "58779": "AB889X",
+        "58781": "AB889X",
+        "58782": "AB889X",
+        "58783": "AB889X",
+        "58784": "AB889X",
+        "58785": "AB889X",
+        "58787": "AB889X",
+        "58788": "AB889X",
+        "58789": "AB889X",
+        "58790": "AB889X",
+        "58792": "AB889X",
+        "58793": "AB889X",
+        "58794": "AB889X",
+        "58795": "AB889X",
+        "58801": "AB889X",
+        "58802": "AB889X",
+        "58830": "AB889X",
+        "58831": "AB889X",
+        "58833": "AB889X",
+        "58835": "AB889X",
+        "58838": "AB889X",
+        "58843": "AB889X",
+        "58844": "AB889X",
+        "58845": "AB889X",
+        "58847": "AB889X",
+        "58849": "AB889X",
+        "58852": "AB889X",
+        "58853": "AB889X",
+        "58854": "AB889X",
+        "58856": "AB889X",
+        "59001": "AB887X",
+        "59002": "AB887X",
+        "59003": "AB887X",
+        "59004": "AB887X",
+        "59006": "AB887X",
+        "59007": "AB887X",
+        "59008": "AB887X",
+        "59010": "AB887X",
+        "59011": "AB887X",
+        "59012": "AB887X",
+        "59013": "AB887X",
+        "59014": "AB887X",
+        "59015": "AB887X",
+        "59016": "AB887X",
+        "59018": "AB887X",
+        "59019": "AB887X",
+        "59020": "AB887X",
+        "59022": "AB887X",
+        "59024": "AB887X",
+        "59025": "AB887X",
+        "59026": "AB887X",
+        "59027": "AB887X",
+        "59028": "AB887X",
+        "59029": "AB887X",
+        "59030": "AB887X",
+        "59031": "AB887X",
+        "59032": "AB890X",
+        "59033": "AB887X",
+        "59034": "AB887X",
+        "59035": "AB887X",
+        "59036": "AB887X",
+        "59037": "AB887X",
+        "59038": "AB887X",
+        "59039": "AB887X",
+        "59041": "AB887X",
+        "59043": "AB887X",
+        "59044": "AB887X",
+        "59046": "AB887X",
+        "59047": "AB887X",
+        "59050": "AB887X",
+        "59052": "AB887X",
+        "59053": "AB890X",
+        "59054": "AB887X",
+        "59055": "AB887X",
+        "59057": "AB887X",
+        "59058": "AB887X",
+        "59059": "AB887X",
+        "59061": "AB887X",
+        "59062": "AB887X",
+        "59063": "AB887X",
+        "59064": "AB887X",
+        "59065": "AB887X",
+        "59066": "AB887X",
+        "59067": "AB887X",
+        "59068": "AB887X",
+        "59069": "AB887X",
+        "59070": "AB887X",
+        "59071": "AB887X",
+        "59072": "AB887X",
+        "59073": "AB887X",
+        "59074": "AB887X",
+        "59075": "AB887X",
+        "59076": "AB887X",
+        "59077": "AB887X",
+        "59078": "AB887X",
+        "59079": "AB887X",
+        "59081": "AB887X",
+        "59082": "AB887X",
+        "59083": "AB887X",
+        "59084": "AB887X",
+        "59085": "AB887X",
+        "59086": "AB887X",
+        "59087": "AB887X",
+        "59088": "AB887X",
+        "59089": "AB887X",
+        "59101": "AB887X",
+        "59102": "AB887X",
+        "59103": "AB887X",
+        "59104": "AB887X",
+        "59105": "AB887X",
+        "59106": "AB887X",
+        "59107": "AB887X",
+        "59108": "AB887X",
+        "59111": "AB887X",
+        "59112": "AB887X",
+        "59114": "AB887X",
+        "59115": "AB887X",
+        "59116": "AB887X",
+        "59117": "AB887X",
+        "59201": "AB889X",
+        "59211": "AB889X",
+        "59212": "AB889X",
+        "59213": "AB889X",
+        "59214": "AB889X",
+        "59215": "AB889X",
+        "59217": "AB889X",
+        "59218": "AB889X",
+        "59219": "AB889X",
+        "59221": "AB889X",
+        "59222": "AB890X",
+        "59223": "AB890X",
+        "59225": "AB890X",
+        "59226": "AB889X",
+        "59230": "AB890X",
+        "59231": "AB890X",
+        "59240": "AB890X",
+        "59241": "AB890X",
+        "59242": "AB889X",
+        "59243": "AB889X",
+        "59244": "AB890X",
+        "59247": "AB889X",
+        "59248": "AB890X",
+        "59250": "AB890X",
+        "59252": "AB889X",
+        "59253": "AB890X",
+        "59254": "AB889X",
+        "59255": "AB889X",
+        "59256": "AB889X",
+        "59257": "AB889X",
+        "59258": "AB889X",
+        "59259": "AB887X",
+        "59260": "AB890X",
+        "59261": "AB890X",
+        "59262": "AB889X",
+        "59263": "AB890X",
+        "59270": "AB889X",
+        "59273": "AB890X",
+        "59274": "AB889X",
+        "59275": "AB889X",
+        "59276": "AB890X",
+        "59301": "AB887X",
+        "59311": "AB887X",
+        "59312": "AB887X",
+        "59313": "AB887X",
+        "59314": "AB887X",
+        "59315": "AB887X",
+        "59316": "AB887X",
+        "59317": "AB887X",
+        "59318": "AB887X",
+        "59319": "AB887X",
+        "59322": "AB887X",
+        "59323": "AB887X",
+        "59324": "AB887X",
+        "59326": "AB887X",
+        "59327": "AB887X",
+        "59330": "AB887X",
+        "59332": "AB887X",
+        "59333": "AB887X",
+        "59336": "AB887X",
+        "59337": "AB887X",
+        "59338": "AB887X",
+        "59339": "AB887X",
+        "59341": "AB887X",
+        "59343": "AB887X",
+        "59344": "AB887X",
+        "59345": "AB887X",
+        "59347": "AB887X",
+        "59349": "AB887X",
+        "59351": "AB887X",
+        "59353": "AB887X",
+        "59354": "AB887X",
+        "59401": "AB890X",
+        "59402": "AB890X",
+        "59403": "AB890X",
+        "59404": "AB890X",
+        "59405": "AB890X",
+        "59406": "AB890X",
+        "59410": "AB887X",
+        "59411": "AB890X",
+        "59412": "AB890X",
+        "59414": "AB890X",
+        "59416": "AB890X",
+        "59417": "AB890X",
+        "59418": "AB890X",
+        "59419": "AB890X",
+        "59420": "AB890X",
+        "59421": "AB890X",
+        "59422": "AB890X",
+        "59424": "AB890X",
+        "59425": "AB890X",
+        "59427": "AB890X",
+        "59430": "AB890X",
+        "59432": "AB890X",
+        "59433": "AB890X",
+        "59434": "AB890X",
+        "59435": "AB890X",
+        "59436": "AB890X",
+        "59440": "AB890X",
+        "59441": "AB890X",
+        "59442": "AB890X",
+        "59443": "AB890X",
+        "59444": "AB890X",
+        "59446": "AB890X",
+        "59447": "AB890X",
+        "59448": "AB890X",
+        "59450": "AB890X",
+        "59451": "AB890X",
+        "59452": "AB890X",
+        "59453": "AB887X",
+        "59454": "AB890X",
+        "59456": "AB890X",
+        "59457": "AB890X",
+        "59460": "AB890X",
+        "59461": "AB890X",
+        "59462": "AB890X",
+        "59463": "AB890X",
+        "59464": "AB890X",
+        "59465": "AB890X",
+        "59466": "AB890X",
+        "59467": "AB890X",
+        "59468": "AB890X",
+        "59469": "AB890X",
+        "59471": "AB890X",
+        "59472": "AB890X",
+        "59474": "AB890X",
+        "59477": "AB890X",
+        "59479": "AB890X",
+        "59480": "AB890X",
+        "59482": "AB890X",
+        "59483": "AB890X",
+        "59484": "AB890X",
+        "59485": "AB890X",
+        "59486": "AB890X",
+        "59487": "AB890X",
+        "59489": "AB890X",
+        "59501": "AB890X",
+        "59520": "AB890X",
+        "59521": "AB890X",
+        "59522": "AB890X",
+        "59523": "AB890X",
+        "59524": "AB890X",
+        "59525": "AB890X",
+        "59526": "AB890X",
+        "59527": "AB890X",
+        "59528": "AB890X",
+        "59529": "AB890X",
+        "59530": "AB890X",
+        "59531": "AB890X",
+        "59532": "AB890X",
+        "59535": "AB890X",
+        "59537": "AB890X",
+        "59538": "AB890X",
+        "59540": "AB890X",
+        "59542": "AB890X",
+        "59544": "AB890X",
+        "59545": "AB890X",
+        "59546": "AB890X",
+        "59547": "AB890X",
+        "59601": "AB887X",
+        "59602": "AB887X",
+        "59604": "AB887X",
+        "59620": "AB887X",
+        "59623": "AB887X",
+        "59624": "AB887X",
+        "59625": "AB887X",
+        "59626": "AB887X",
+        "59631": "AB887X",
+        "59632": "AB887X",
+        "59633": "AB887X",
+        "59634": "AB887X",
+        "59635": "AB887X",
+        "59636": "AB887X",
+        "59638": "AB887X",
+        "59639": "AB887X",
+        "59640": "AB887X",
+        "59641": "AB887X",
+        "59642": "AB890X",
+        "59643": "AB887X",
+        "59644": "AB887X",
+        "59645": "AB890X",
+        "59647": "AB887X",
+        "59648": "AB887X",
+        "59701": "AB887X",
+        "59702": "AB887X",
+        "59703": "AB887X",
+        "59707": "AB887X",
+        "59710": "AB887X",
+        "59711": "AB887X",
+        "59713": "AB890X",
+        "59714": "AB887X",
+        "59715": "AB887X",
+        "59716": "AB887X",
+        "59717": "AB887X",
+        "59718": "AB887X",
+        "59719": "AB887X",
+        "59720": "AB887X",
+        "59721": "AB887X",
+        "59722": "AB890X",
+        "59724": "AB890X",
+        "59725": "AB890X",
+        "59727": "AB887X",
+        "59728": "AB890X",
+        "59729": "AB887X",
+        "59730": "AB887X",
+        "59731": "AB890X",
+        "59732": "AB890X",
+        "59733": "AB890X",
+        "59735": "AB887X",
+        "59736": "AB890X",
+        "59739": "AB890X",
+        "59740": "AB887X",
+        "59741": "AB887X",
+        "59743": "AB887X",
+        "59745": "AB887X",
+        "59746": "AB890X",
+        "59747": "AB887X",
+        "59748": "AB887X",
+        "59749": "AB887X",
+        "59750": "AB887X",
+        "59751": "AB887X",
+        "59752": "AB887X",
+        "59754": "AB887X",
+        "59755": "AB887X",
+        "59756": "AB887X",
+        "59758": "AB887X",
+        "59759": "AB887X",
+        "59760": "AB887X",
+        "59761": "AB890X",
+        "59762": "AB890X",
+        "59771": "AB887X",
+        "59772": "AB887X",
+        "59773": "AB887X",
+        "59801": "AB890X",
+        "59802": "AB890X",
+        "59803": "AB890X",
+        "59804": "AB890X",
+        "59806": "AB890X",
+        "59807": "AB890X",
+        "59808": "AB890X",
+        "59812": "AB890X",
+        "59820": "AB890X",
+        "59821": "AB890X",
+        "59823": "AB890X",
+        "59824": "AB890X",
+        "59825": "AB890X",
+        "59826": "AB890X",
+        "59827": "AB890X",
+        "59828": "AB890X",
+        "59829": "AB890X",
+        "59830": "AB890X",
+        "59831": "AB890X",
+        "59832": "AB890X",
+        "59833": "AB890X",
+        "59834": "AB890X",
+        "59835": "AB890X",
+        "59837": "AB890X",
+        "59840": "AB890X",
+        "59841": "AB890X",
+        "59842": "AB890X",
+        "59843": "AB890X",
+        "59844": "AB890X",
+        "59845": "AB890X",
+        "59846": "AB890X",
+        "59847": "AB890X",
+        "59848": "AB890X",
+        "59851": "AB890X",
+        "59853": "AB890X",
+        "59854": "AB890X",
+        "59855": "AB890X",
+        "59856": "AB890X",
+        "59858": "AB890X",
+        "59859": "AB890X",
+        "59860": "AB890X",
+        "59863": "AB890X",
+        "59864": "AB890X",
+        "59865": "AB890X",
+        "59866": "AB890X",
+        "59867": "AB890X",
+        "59868": "AB890X",
+        "59870": "AB890X",
+        "59871": "AB890X",
+        "59872": "AB890X",
+        "59873": "AB890X",
+        "59874": "AB890X",
+        "59875": "AB890X",
+        "59901": "AB890X",
+        "59903": "AB890X",
+        "59904": "AB890X",
+        "59910": "AB890X",
+        "59911": "AB890X",
+        "59912": "AB890X",
+        "59913": "AB890X",
+        "59914": "AB890X",
+        "59915": "AB890X",
+        "59916": "AB890X",
+        "59917": "AB890X",
+        "59918": "AB890X",
+        "59919": "AB890X",
+        "59920": "AB890X",
+        "59921": "AB890X",
+        "59922": "AB890X",
+        "59923": "AB890X",
+        "59925": "AB890X",
+        "59926": "AB890X",
+        "59927": "AB890X",
+        "59928": "AB890X",
+        "59929": "AB890X",
+        "59930": "AB890X",
+        "59931": "AB890X",
+        "59932": "AB890X",
+        "59933": "AB890X",
+        "59934": "AB890X",
+        "59935": "AB890X",
+        "59936": "AB890X",
+        "59937": "AB890X",
+        "60001": "AB887X",
+        "60002": "AB887X",
+        "60004": "AB887X",
+        "60005": "AB887X",
+        "60006": "AB887X",
+        "60007": "AB887X",
+        "60008": "AB887X",
+        "60009": "AB887X",
+        "60010": "AB887X",
+        "60011": "AB887X",
+        "60012": "AB887X",
+        "60013": "AB887X",
+        "60014": "AB887X",
+        "60015": "AB887X",
+        "60016": "AB887X",
+        "60017": "AB887X",
+        "60018": "AB887X",
+        "60019": "AB887X",
+        "60020": "AB887X",
+        "60021": "AB887X",
+        "60022": "AB887X",
+        "60025": "AB887X",
+        "60026": "AB887X",
+        "60029": "AB887X",
+        "60030": "AB887X",
+        "60031": "AB887X",
+        "60033": "AB887X",
+        "60034": "AB887X",
+        "60035": "AB887X",
+        "60037": "AB887X",
+        "60038": "AB887X",
+        "60039": "AB887X",
+        "60040": "AB887X",
+        "60041": "AB887X",
+        "60042": "AB887X",
+        "60043": "AB887X",
+        "60044": "AB887X",
+        "60045": "AB887X",
+        "60046": "AB887X",
+        "60047": "AB887X",
+        "60048": "AB887X",
+        "60049": "AB887X",
+        "60050": "AB887X",
+        "60051": "AB887X",
+        "60053": "AB887X",
+        "60055": "AB887X",
+        "60056": "AB887X",
+        "60060": "AB887X",
+        "60061": "AB887X",
+        "60062": "AB887X",
+        "60064": "AB887X",
+        "60065": "AB887X",
+        "60067": "AB887X",
+        "60068": "AB887X",
+        "60069": "AB887X",
+        "60070": "AB887X",
+        "60071": "AB887X",
+        "60072": "AB887X",
+        "60073": "AB887X",
+        "60074": "AB887X",
+        "60075": "AB887X",
+        "60076": "AB887X",
+        "60077": "AB887X",
+        "60078": "AB887X",
+        "60079": "AB887X",
+        "60081": "AB887X",
+        "60082": "AB887X",
+        "60083": "AB887X",
+        "60084": "AB887X",
+        "60085": "AB887X",
+        "60086": "AB887X",
+        "60087": "AB887X",
+        "60088": "AB887X",
+        "60089": "AB887X",
+        "60090": "AB887X",
+        "60091": "AB887X",
+        "60092": "AB887X",
+        "60093": "AB887X",
+        "60094": "AB887X",
+        "60095": "AB887X",
+        "60096": "AB887X",
+        "60097": "AB887X",
+        "60098": "AB887X",
+        "60099": "AB887X",
+        "60101": "AB887X",
+        "60102": "AB887X",
+        "60103": "AB887X",
+        "60104": "AB887X",
+        "60105": "AB887X",
+        "60106": "AB887X",
+        "60107": "AB887X",
+        "60108": "AB887X",
+        "60109": "AB887X",
+        "60110": "AB887X",
+        "60111": "AB887X",
+        "60112": "AB887X",
+        "60113": "AB887X",
+        "60115": "AB887X",
+        "60116": "AB887X",
+        "60117": "AB887X",
+        "60118": "AB887X",
+        "60119": "AB887X",
+        "60120": "AB887X",
+        "60121": "AB887X",
+        "60122": "AB887X",
+        "60123": "AB887X",
+        "60124": "AB887X",
+        "60125": "AB887X",
+        "60126": "AB887X",
+        "60128": "AB887X",
+        "60129": "AB887X",
+        "60130": "AB887X",
+        "60131": "AB887X",
+        "60132": "AB887X",
+        "60133": "AB887X",
+        "60134": "AB887X",
+        "60135": "AB887X",
+        "60136": "AB887X",
+        "60137": "AB887X",
+        "60138": "AB887X",
+        "60139": "AB887X",
+        "60140": "AB887X",
+        "60141": "AB887X",
+        "60142": "AB887X",
+        "60143": "AB887X",
+        "60144": "AB887X",
+        "60145": "AB887X",
+        "60146": "AB887X",
+        "60147": "AB887X",
+        "60148": "AB887X",
+        "60150": "AB887X",
+        "60151": "AB887X",
+        "60152": "AB887X",
+        "60153": "AB887X",
+        "60154": "AB887X",
+        "60155": "AB887X",
+        "60156": "AB887X",
+        "60157": "AB887X",
+        "60159": "AB887X",
+        "60160": "AB887X",
+        "60161": "AB887X",
+        "60162": "AB887X",
+        "60163": "AB887X",
+        "60164": "AB887X",
+        "60165": "AB887X",
+        "60168": "AB887X",
+        "60169": "AB887X",
+        "60170": "AB887X",
+        "60171": "AB887X",
+        "60172": "AB887X",
+        "60173": "AB887X",
+        "60174": "AB887X",
+        "60175": "AB887X",
+        "60176": "AB887X",
+        "60177": "AB887X",
+        "60178": "AB887X",
+        "60179": "AB887X",
+        "60180": "AB887X",
+        "60181": "AB887X",
+        "60183": "AB887X",
+        "60184": "AB887X",
+        "60185": "AB887X",
+        "60186": "AB887X",
+        "60187": "AB887X",
+        "60188": "AB887X",
+        "60189": "AB887X",
+        "60190": "AB887X",
+        "60191": "AB887X",
+        "60192": "AB887X",
+        "60193": "AB887X",
+        "60194": "AB887X",
+        "60195": "AB887X",
+        "60196": "AB887X",
+        "60197": "AB887X",
+        "60199": "AB887X",
+        "60201": "AB887X",
+        "60202": "AB887X",
+        "60203": "AB887X",
+        "60204": "AB887X",
+        "60208": "AB887X",
+        "60209": "AB887X",
+        "60296": "AB887X",
+        "60297": "AB887X",
+        "60301": "AB887X",
+        "60302": "AB887X",
+        "60303": "AB887X",
+        "60304": "AB887X",
+        "60305": "AB887X",
+        "60399": "AB887X",
+        "60401": "AB887X",
+        "60402": "AB887X",
+        "60403": "AB887X",
+        "60404": "AB887X",
+        "60406": "AB887X",
+        "60407": "AB887X",
+        "60408": "AB887X",
+        "60409": "AB887X",
+        "60410": "AB887X",
+        "60411": "AB887X",
+        "60412": "AB887X",
+        "60415": "AB887X",
+        "60416": "AB887X",
+        "60417": "AB887X",
+        "60419": "AB887X",
+        "60420": "AB888X",
+        "60421": "AB887X",
+        "60422": "AB887X",
+        "60423": "AB887X",
+        "60424": "AB887X",
+        "60425": "AB887X",
+        "60426": "AB887X",
+        "60428": "AB887X",
+        "60429": "AB887X",
+        "60430": "AB887X",
+        "60431": "AB887X",
+        "60432": "AB887X",
+        "60433": "AB887X",
+        "60434": "AB887X",
+        "60435": "AB887X",
+        "60436": "AB887X",
+        "60437": "AB887X",
+        "60438": "AB887X",
+        "60439": "AB887X",
+        "60440": "AB887X",
+        "60441": "AB887X",
+        "60442": "AB887X",
+        "60443": "AB887X",
+        "60444": "AB887X",
+        "60445": "AB887X",
+        "60446": "AB887X",
+        "60447": "AB887X",
+        "60448": "AB887X",
+        "60449": "AB887X",
+        "60450": "AB887X",
+        "60451": "AB887X",
+        "60452": "AB887X",
+        "60453": "AB887X",
+        "60454": "AB887X",
+        "60455": "AB887X",
+        "60456": "AB887X",
+        "60457": "AB887X",
+        "60458": "AB887X",
+        "60459": "AB887X",
+        "60460": "AB888X",
+        "60461": "AB887X",
+        "60462": "AB887X",
+        "60463": "AB887X",
+        "60464": "AB887X",
+        "60465": "AB887X",
+        "60466": "AB887X",
+        "60467": "AB887X",
+        "60468": "AB887X",
+        "60469": "AB887X",
+        "60470": "AB887X",
+        "60471": "AB887X",
+        "60472": "AB887X",
+        "60473": "AB887X",
+        "60474": "AB887X",
+        "60475": "AB887X",
+        "60476": "AB887X",
+        "60477": "AB887X",
+        "60478": "AB887X",
+        "60479": "AB887X",
+        "60480": "AB887X",
+        "60481": "AB887X",
+        "60482": "AB887X",
+        "60483": "AB887X",
+        "60487": "AB887X",
+        "60490": "AB887X",
+        "60491": "AB887X",
+        "60499": "AB887X",
+        "60501": "AB887X",
+        "60502": "AB887X",
+        "60503": "AB887X",
+        "60504": "AB887X",
+        "60505": "AB887X",
+        "60506": "AB887X",
+        "60507": "AB887X",
+        "60510": "AB887X",
+        "60511": "AB887X",
+        "60512": "AB887X",
+        "60513": "AB887X",
+        "60514": "AB887X",
+        "60515": "AB887X",
+        "60516": "AB887X",
+        "60517": "AB887X",
+        "60518": "AB887X",
+        "60519": "AB887X",
+        "60520": "AB887X",
+        "60521": "AB887X",
+        "60522": "AB887X",
+        "60523": "AB887X",
+        "60525": "AB887X",
+        "60526": "AB887X",
+        "60527": "AB887X",
+        "60530": "AB888X",
+        "60531": "AB887X",
+        "60532": "AB887X",
+        "60534": "AB887X",
+        "60536": "AB887X",
+        "60537": "AB887X",
+        "60538": "AB887X",
+        "60539": "AB887X",
+        "60540": "AB887X",
+        "60541": "AB887X",
+        "60542": "AB887X",
+        "60543": "AB887X",
+        "60544": "AB887X",
+        "60545": "AB887X",
+        "60546": "AB887X",
+        "60548": "AB887X",
+        "60549": "AB887X",
+        "60550": "AB887X",
+        "60551": "AB887X",
+        "60552": "AB887X",
+        "60553": "AB887X",
+        "60554": "AB887X",
+        "60555": "AB887X",
+        "60556": "AB887X",
+        "60557": "AB887X",
+        "60558": "AB887X",
+        "60559": "AB887X",
+        "60560": "AB887X",
+        "60561": "AB887X",
+        "60563": "AB887X",
+        "60564": "AB887X",
+        "60565": "AB887X",
+        "60566": "AB887X",
+        "60567": "AB887X",
+        "60568": "AB887X",
+        "60570": "AB887X",
+        "60572": "AB887X",
+        "60585": "AB887X",
+        "60586": "AB887X",
+        "60597": "AB887X",
+        "60598": "AB887X",
+        "60599": "AB887X",
+        "60601": "AB887X",
+        "60602": "AB887X",
+        "60603": "AB887X",
+        "60604": "AB887X",
+        "60605": "AB887X",
+        "60606": "AB887X",
+        "60607": "AB887X",
+        "60608": "AB887X",
+        "60609": "AB887X",
+        "60610": "AB887X",
+        "60611": "AB887X",
+        "60612": "AB887X",
+        "60613": "AB887X",
+        "60614": "AB887X",
+        "60615": "AB887X",
+        "60616": "AB887X",
+        "60617": "AB887X",
+        "60618": "AB887X",
+        "60619": "AB887X",
+        "60620": "AB887X",
+        "60621": "AB887X",
+        "60622": "AB887X",
+        "60623": "AB887X",
+        "60624": "AB887X",
+        "60625": "AB887X",
+        "60626": "AB887X",
+        "60628": "AB887X",
+        "60629": "AB887X",
+        "60630": "AB887X",
+        "60631": "AB887X",
+        "60632": "AB887X",
+        "60633": "AB887X",
+        "60634": "AB887X",
+        "60636": "AB887X",
+        "60637": "AB887X",
+        "60638": "AB887X",
+        "60639": "AB887X",
+        "60640": "AB887X",
+        "60641": "AB887X",
+        "60643": "AB887X",
+        "60644": "AB887X",
+        "60645": "AB887X",
+        "60646": "AB887X",
+        "60647": "AB887X",
+        "60649": "AB887X",
+        "60651": "AB887X",
+        "60652": "AB887X",
+        "60653": "AB887X",
+        "60654": "AB887X",
+        "60655": "AB887X",
+        "60656": "AB887X",
+        "60657": "AB887X",
+        "60659": "AB887X",
+        "60660": "AB887X",
+        "60661": "AB887X",
+        "60663": "AB887X",
+        "60664": "AB887X",
+        "60666": "AB887X",
+        "60668": "AB887X",
+        "60669": "AB887X",
+        "60670": "AB887X",
+        "60673": "AB887X",
+        "60674": "AB887X",
+        "60675": "AB887X",
+        "60677": "AB887X",
+        "60678": "AB887X",
+        "60679": "AB887X",
+        "60680": "AB887X",
+        "60681": "AB887X",
+        "60682": "AB887X",
+        "60684": "AB887X",
+        "60685": "AB887X",
+        "60686": "AB887X",
+        "60687": "AB887X",
+        "60688": "AB887X",
+        "60689": "AB887X",
+        "60690": "AB887X",
+        "60691": "AB887X",
+        "60693": "AB887X",
+        "60694": "AB887X",
+        "60695": "AB887X",
+        "60696": "AB887X",
+        "60697": "AB887X",
+        "60699": "AB887X",
+        "60701": "AB887X",
+        "60706": "AB887X",
+        "60707": "AB887X",
+        "60712": "AB887X",
+        "60714": "AB887X",
+        "60803": "AB887X",
+        "60804": "AB887X",
+        "60805": "AB887X",
+        "60827": "AB887X",
+        "60901": "AB887X",
+        "60910": "AB887X",
+        "60911": "AB888X",
+        "60912": "AB888X",
+        "60913": "AB887X",
+        "60914": "AB887X",
+        "60915": "AB887X",
+        "60917": "AB887X",
+        "60918": "AB888X",
+        "60919": "AB888X",
+        "60920": "AB888X",
+        "60921": "AB888X",
+        "60922": "AB888X",
+        "60924": "AB888X",
+        "60926": "AB888X",
+        "60927": "AB888X",
+        "60928": "AB888X",
+        "60929": "AB888X",
+        "60930": "AB888X",
+        "60931": "AB888X",
+        "60932": "AB888X",
+        "60933": "AB888X",
+        "60934": "AB888X",
+        "60935": "AB887X",
+        "60936": "AB888X",
+        "60938": "AB888X",
+        "60939": "AB888X",
+        "60940": "AB887X",
+        "60941": "AB887X",
+        "60942": "AB888X",
+        "60944": "AB887X",
+        "60945": "AB888X",
+        "60946": "AB888X",
+        "60948": "AB888X",
+        "60949": "AB888X",
+        "60950": "AB887X",
+        "60951": "AB888X",
+        "60952": "AB888X",
+        "60953": "AB888X",
+        "60954": "AB887X",
+        "60955": "AB888X",
+        "60956": "AB888X",
+        "60957": "AB888X",
+        "60959": "AB888X",
+        "60960": "AB888X",
+        "60961": "AB887X",
+        "60962": "AB888X",
+        "60963": "AB888X",
+        "60964": "AB887X",
+        "60966": "AB888X",
+        "60967": "AB888X",
+        "60968": "AB888X",
+        "60969": "AB887X",
+        "60970": "AB888X",
+        "60973": "AB888X",
+        "60974": "AB888X",
+        "61001": "AB888X",
+        "61006": "AB888X",
+        "61007": "AB888X",
+        "61008": "AB887X",
+        "61010": "AB888X",
+        "61011": "AB887X",
+        "61012": "AB887X",
+        "61013": "AB887X",
+        "61014": "AB888X",
+        "61015": "AB888X",
+        "61016": "AB887X",
+        "61018": "AB887X",
+        "61019": "AB887X",
+        "61020": "AB888X",
+        "61021": "AB888X",
+        "61024": "AB887X",
+        "61025": "AB888X",
+        "61027": "AB887X",
+        "61028": "AB888X",
+        "61029": "AB887X",
+        "61030": "AB888X",
+        "61031": "AB888X",
+        "61032": "AB887X",
+        "61036": "AB888X",
+        "61037": "AB888X",
+        "61038": "AB889X",
+        "61039": "AB887X",
+        "61041": "AB888X",
+        "61042": "AB888X",
+        "61043": "AB887X",
+        "61044": "AB888X",
+        "61046": "AB888X",
+        "61047": "AB888X",
+        "61048": "AB888X",
+        "61049": "AB887X",
+        "61050": "AB887X",
+        "61051": "AB888X",
+        "61052": "AB887X",
+        "61053": "AB888X",
+        "61054": "AB888X",
+        "61057": "AB888X",
+        "61058": "AB888X",
+        "61059": "AB888X",
+        "61060": "AB887X",
+        "61061": "AB888X",
+        "61062": "AB888X",
+        "61063": "AB887X",
+        "61064": "AB888X",
+        "61065": "AB887X",
+        "61067": "AB887X",
+        "61068": "AB887X",
+        "61070": "AB887X",
+        "61071": "AB888X",
+        "61072": "AB887X",
+        "61073": "AB887X",
+        "61074": "AB888X",
+        "61075": "AB888X",
+        "61077": "AB887X",
+        "61078": "AB888X",
+        "61079": "AB887X",
+        "61080": "AB887X",
+        "61081": "AB888X",
+        "61084": "AB888X",
+        "61085": "AB888X",
+        "61087": "AB888X",
+        "61088": "AB887X",
+        "61089": "AB888X",
+        "61091": "AB888X",
+        "61101": "AB887X",
+        "61102": "AB887X",
+        "61103": "AB887X",
+        "61104": "AB887X",
+        "61105": "AB887X",
+        "61106": "AB887X",
+        "61107": "AB887X",
+        "61108": "AB887X",
+        "61109": "AB887X",
+        "61110": "AB887X",
+        "61111": "AB887X",
+        "61112": "AB887X",
+        "61114": "AB887X",
+        "61115": "AB887X",
+        "61125": "AB887X",
+        "61126": "AB887X",
+        "61130": "AB887X",
+        "61131": "AB887X",
+        "61132": "AB887X",
+        "61201": "AB888X",
+        "61204": "AB888X",
+        "61230": "AB888X",
+        "61231": "AB888X",
+        "61232": "AB888X",
+        "61233": "AB888X",
+        "61234": "AB888X",
+        "61235": "AB888X",
+        "61236": "AB888X",
+        "61237": "AB888X",
+        "61238": "AB888X",
+        "61239": "AB888X",
+        "61240": "AB888X",
+        "61241": "AB888X",
+        "61242": "AB888X",
+        "61243": "AB888X",
+        "61244": "AB888X",
+        "61250": "AB888X",
+        "61251": "AB888X",
+        "61252": "AB888X",
+        "61254": "AB888X",
+        "61256": "AB888X",
+        "61257": "AB888X",
+        "61258": "AB888X",
+        "61259": "AB888X",
+        "61260": "AB888X",
+        "61261": "AB888X",
+        "61262": "AB888X",
+        "61263": "AB888X",
+        "61264": "AB888X",
+        "61265": "AB888X",
+        "61266": "AB888X",
+        "61270": "AB888X",
+        "61272": "AB888X",
+        "61273": "AB888X",
+        "61274": "AB888X",
+        "61275": "AB888X",
+        "61276": "AB888X",
+        "61277": "AB888X",
+        "61278": "AB888X",
+        "61279": "AB888X",
+        "61281": "AB888X",
+        "61282": "AB888X",
+        "61283": "AB888X",
+        "61284": "AB888X",
+        "61285": "AB888X",
+        "61299": "AB888X",
+        "61301": "AB887X",
+        "61310": "AB888X",
+        "61311": "AB888X",
+        "61312": "AB888X",
+        "61313": "AB888X",
+        "61314": "AB888X",
+        "61315": "AB888X",
+        "61316": "AB887X",
+        "61317": "AB888X",
+        "61318": "AB888X",
+        "61319": "AB888X",
+        "61320": "AB888X",
+        "61321": "AB887X",
+        "61322": "AB888X",
+        "61323": "AB888X",
+        "61324": "AB888X",
+        "61325": "AB887X",
+        "61326": "AB888X",
+        "61327": "AB888X",
+        "61328": "AB888X",
+        "61329": "AB888X",
+        "61330": "AB888X",
+        "61331": "AB888X",
+        "61332": "AB887X",
+        "61333": "AB888X",
+        "61334": "AB887X",
+        "61335": "AB888X",
+        "61336": "AB888X",
+        "61337": "AB888X",
+        "61338": "AB888X",
+        "61340": "AB888X",
+        "61341": "AB887X",
+        "61342": "AB887X",
+        "61344": "AB888X",
+        "61345": "AB888X",
+        "61346": "AB888X",
+        "61348": "AB887X",
+        "61349": "AB888X",
+        "61350": "AB887X",
+        "61353": "AB888X",
+        "61354": "AB887X",
+        "61355": "AB888X",
+        "61356": "AB888X",
+        "61358": "AB887X",
+        "61359": "AB888X",
+        "61360": "AB887X",
+        "61361": "AB888X",
+        "61362": "AB888X",
+        "61363": "AB888X",
+        "61364": "AB887X",
+        "61367": "AB888X",
+        "61368": "AB888X",
+        "61369": "AB888X",
+        "61370": "AB887X",
+        "61371": "AB887X",
+        "61372": "AB887X",
+        "61373": "AB887X",
+        "61374": "AB888X",
+        "61375": "AB888X",
+        "61376": "AB888X",
+        "61377": "AB888X",
+        "61378": "AB888X",
+        "61379": "AB888X",
+        "61401": "AB888X",
+        "61402": "AB888X",
+        "61410": "AB888X",
+        "61411": "AB888X",
+        "61412": "AB888X",
+        "61413": "AB888X",
+        "61414": "AB888X",
+        "61415": "AB888X",
+        "61416": "AB888X",
+        "61417": "AB888X",
+        "61418": "AB888X",
+        "61419": "AB888X",
+        "61420": "AB888X",
+        "61421": "AB888X",
+        "61422": "AB888X",
+        "61423": "AB888X",
+        "61424": "AB888X",
+        "61425": "AB888X",
+        "61426": "AB888X",
+        "61427": "AB888X",
+        "61428": "AB888X",
+        "61430": "AB888X",
+        "61431": "AB888X",
+        "61432": "AB888X",
+        "61433": "AB888X",
+        "61434": "AB888X",
+        "61435": "AB888X",
+        "61436": "AB888X",
+        "61437": "AB888X",
+        "61438": "AB888X",
+        "61439": "AB888X",
+        "61440": "AB888X",
+        "61441": "AB888X",
+        "61442": "AB888X",
+        "61443": "AB888X",
+        "61447": "AB888X",
+        "61448": "AB888X",
+        "61449": "AB888X",
+        "61450": "AB888X",
+        "61451": "AB888X",
+        "61452": "AB888X",
+        "61453": "AB888X",
+        "61454": "AB888X",
+        "61455": "AB888X",
+        "61458": "AB888X",
+        "61459": "AB888X",
+        "61460": "AB888X",
+        "61462": "AB888X",
+        "61465": "AB888X",
+        "61466": "AB888X",
+        "61467": "AB888X",
+        "61468": "AB888X",
+        "61469": "AB888X",
+        "61470": "AB888X",
+        "61471": "AB888X",
+        "61472": "AB888X",
+        "61473": "AB888X",
+        "61474": "AB888X",
+        "61475": "AB888X",
+        "61476": "AB888X",
+        "61477": "AB888X",
+        "61478": "AB888X",
+        "61479": "AB888X",
+        "61480": "AB888X",
+        "61482": "AB888X",
+        "61483": "AB888X",
+        "61484": "AB888X",
+        "61485": "AB888X",
+        "61486": "AB888X",
+        "61488": "AB888X",
+        "61489": "AB888X",
+        "61490": "AB888X",
+        "61491": "AB888X",
+        "61501": "AB888X",
+        "61516": "AB888X",
+        "61517": "AB888X",
+        "61519": "AB888X",
+        "61520": "AB888X",
+        "61523": "AB888X",
+        "61524": "AB888X",
+        "61525": "AB888X",
+        "61526": "AB888X",
+        "61528": "AB888X",
+        "61529": "AB888X",
+        "61530": "AB888X",
+        "61531": "AB888X",
+        "61532": "AB888X",
+        "61533": "AB888X",
+        "61534": "AB888X",
+        "61535": "AB888X",
+        "61536": "AB888X",
+        "61537": "AB888X",
+        "61539": "AB888X",
+        "61540": "AB888X",
+        "61541": "AB888X",
+        "61542": "AB888X",
+        "61543": "AB888X",
+        "61544": "AB888X",
+        "61545": "AB888X",
+        "61546": "AB888X",
+        "61547": "AB888X",
+        "61548": "AB888X",
+        "61550": "AB888X",
+        "61552": "AB888X",
+        "61553": "AB888X",
+        "61554": "AB888X",
+        "61555": "AB888X",
+        "61558": "AB888X",
+        "61559": "AB888X",
+        "61560": "AB888X",
+        "61561": "AB888X",
+        "61562": "AB888X",
+        "61563": "AB888X",
+        "61564": "AB888X",
+        "61565": "AB888X",
+        "61567": "AB888X",
+        "61568": "AB888X",
+        "61569": "AB888X",
+        "61570": "AB888X",
+        "61571": "AB888X",
+        "61572": "AB888X",
+        "61601": "AB888X",
+        "61602": "AB888X",
+        "61603": "AB888X",
+        "61604": "AB888X",
+        "61605": "AB888X",
+        "61606": "AB888X",
+        "61607": "AB888X",
+        "61610": "AB888X",
+        "61611": "AB888X",
+        "61612": "AB888X",
+        "61613": "AB888X",
+        "61614": "AB888X",
+        "61615": "AB888X",
+        "61616": "AB888X",
+        "61619": "AB888X",
+        "61625": "AB888X",
+        "61629": "AB888X",
+        "61630": "AB888X",
+        "61633": "AB888X",
+        "61634": "AB888X",
+        "61635": "AB888X",
+        "61636": "AB888X",
+        "61637": "AB888X",
+        "61638": "AB888X",
+        "61639": "AB888X",
+        "61641": "AB888X",
+        "61643": "AB888X",
+        "61650": "AB888X",
+        "61651": "AB888X",
+        "61652": "AB888X",
+        "61653": "AB888X",
+        "61654": "AB888X",
+        "61655": "AB888X",
+        "61656": "AB888X",
+        "61701": "AB888X",
+        "61702": "AB888X",
+        "61704": "AB888X",
+        "61705": "AB888X",
+        "61709": "AB888X",
+        "61710": "AB888X",
+        "61720": "AB888X",
+        "61721": "AB888X",
+        "61722": "AB888X",
+        "61723": "AB888X",
+        "61724": "AB888X",
+        "61725": "AB888X",
+        "61726": "AB888X",
+        "61727": "AB888X",
+        "61728": "AB888X",
+        "61729": "AB888X",
+        "61730": "AB888X",
+        "61731": "AB888X",
+        "61732": "AB888X",
+        "61733": "AB888X",
+        "61734": "AB888X",
+        "61735": "AB888X",
+        "61736": "AB888X",
+        "61737": "AB888X",
+        "61738": "AB888X",
+        "61739": "AB888X",
+        "61740": "AB888X",
+        "61741": "AB888X",
+        "61742": "AB888X",
+        "61743": "AB888X",
+        "61744": "AB888X",
+        "61745": "AB888X",
+        "61747": "AB888X",
+        "61748": "AB888X",
+        "61749": "AB888X",
+        "61750": "AB888X",
+        "61751": "AB888X",
+        "61752": "AB888X",
+        "61753": "AB888X",
+        "61754": "AB888X",
+        "61755": "AB888X",
+        "61756": "AB888X",
+        "61758": "AB888X",
+        "61759": "AB888X",
+        "61760": "AB888X",
+        "61761": "AB888X",
+        "61764": "AB888X",
+        "61769": "AB888X",
+        "61770": "AB888X",
+        "61771": "AB888X",
+        "61772": "AB888X",
+        "61773": "AB888X",
+        "61774": "AB888X",
+        "61775": "AB888X",
+        "61776": "AB888X",
+        "61777": "AB888X",
+        "61778": "AB888X",
+        "61790": "AB888X",
+        "61791": "AB888X",
+        "61799": "AB888X",
+        "61801": "AB888X",
+        "61802": "AB888X",
+        "61803": "AB888X",
+        "61810": "AB888X",
+        "61811": "AB888X",
+        "61812": "AB888X",
+        "61813": "AB888X",
+        "61814": "AB888X",
+        "61815": "AB888X",
+        "61816": "AB888X",
+        "61817": "AB888X",
+        "61818": "AB888X",
+        "61820": "AB888X",
+        "61821": "AB888X",
+        "61822": "AB888X",
+        "61824": "AB888X",
+        "61825": "AB888X",
+        "61826": "AB888X",
+        "61830": "AB888X",
+        "61831": "AB888X",
+        "61832": "AB888X",
+        "61833": "AB888X",
+        "61834": "AB888X",
+        "61839": "AB888X",
+        "61840": "AB888X",
+        "61841": "AB888X",
+        "61842": "AB888X",
+        "61843": "AB888X",
+        "61844": "AB888X",
+        "61845": "AB888X",
+        "61846": "AB888X",
+        "61847": "AB888X",
+        "61848": "AB888X",
+        "61849": "AB888X",
+        "61850": "AB888X",
+        "61851": "AB888X",
+        "61852": "AB888X",
+        "61853": "AB888X",
+        "61854": "AB888X",
+        "61855": "AB888X",
+        "61856": "AB888X",
+        "61857": "AB888X",
+        "61858": "AB888X",
+        "61859": "AB888X",
+        "61862": "AB888X",
+        "61863": "AB888X",
+        "61864": "AB888X",
+        "61865": "AB888X",
+        "61866": "AB888X",
+        "61870": "AB888X",
+        "61871": "AB888X",
+        "61872": "AB888X",
+        "61873": "AB888X",
+        "61874": "AB888X",
+        "61875": "AB888X",
+        "61876": "AB888X",
+        "61877": "AB888X",
+        "61878": "AB888X",
+        "61880": "AB888X",
+        "61882": "AB888X",
+        "61883": "AB888X",
+        "61884": "AB888X",
+        "61910": "AB888X",
+        "61911": "AB888X",
+        "61912": "AB888X",
+        "61913": "AB888X",
+        "61914": "AB888X",
+        "61917": "AB888X",
+        "61919": "AB888X",
+        "61920": "AB888X",
+        "61924": "AB888X",
+        "61925": "AB888X",
+        "61928": "AB888X",
+        "61929": "AB888X",
+        "61930": "AB888X",
+        "61931": "AB888X",
+        "61932": "AB888X",
+        "61933": "AB888X",
+        "61936": "AB888X",
+        "61937": "AB888X",
+        "61938": "AB888X",
+        "61940": "AB888X",
+        "61941": "AB888X",
+        "61942": "AB888X",
+        "61943": "AB888X",
+        "61944": "AB888X",
+        "61949": "AB888X",
+        "61951": "AB888X",
+        "61953": "AB888X",
+        "61955": "AB888X",
+        "61956": "AB888X",
+        "61957": "AB888X",
+        "62001": "AB888X",
+        "62002": "AB888X",
+        "62006": "AB888X",
+        "62009": "AB888X",
+        "62010": "AB888X",
+        "62011": "AB888X",
+        "62012": "AB888X",
+        "62013": "AB888X",
+        "62014": "AB888X",
+        "62015": "AB888X",
+        "62016": "AB888X",
+        "62017": "AB888X",
+        "62018": "AB888X",
+        "62019": "AB888X",
+        "62021": "AB888X",
+        "62022": "AB888X",
+        "62023": "AB888X",
+        "62024": "AB888X",
+        "62025": "AB888X",
+        "62026": "AB888X",
+        "62027": "AB888X",
+        "62028": "AB888X",
+        "62030": "AB888X",
+        "62031": "AB888X",
+        "62032": "AB888X",
+        "62033": "AB888X",
+        "62034": "AB888X",
+        "62035": "AB888X",
+        "62036": "AB888X",
+        "62037": "AB888X",
+        "62040": "AB888X",
+        "62044": "AB888X",
+        "62045": "AB888X",
+        "62046": "AB888X",
+        "62047": "AB888X",
+        "62048": "AB888X",
+        "62049": "AB888X",
+        "62050": "AB888X",
+        "62051": "AB888X",
+        "62052": "AB888X",
+        "62053": "AB888X",
+        "62054": "AB888X",
+        "62056": "AB888X",
+        "62058": "AB888X",
+        "62059": "AB888X",
+        "62060": "AB888X",
+        "62061": "AB888X",
+        "62062": "AB888X",
+        "62063": "AB888X",
+        "62065": "AB888X",
+        "62067": "AB888X",
+        "62069": "AB888X",
+        "62070": "AB888X",
+        "62071": "AB888X",
+        "62074": "AB888X",
+        "62075": "AB888X",
+        "62076": "AB888X",
+        "62077": "AB888X",
+        "62078": "AB888X",
+        "62079": "AB888X",
+        "62080": "AB888X",
+        "62081": "AB888X",
+        "62082": "AB888X",
+        "62083": "AB888X",
+        "62084": "AB888X",
+        "62085": "AB888X",
+        "62086": "AB888X",
+        "62087": "AB888X",
+        "62088": "AB888X",
+        "62089": "AB888X",
+        "62090": "AB888X",
+        "62091": "AB888X",
+        "62092": "AB888X",
+        "62093": "AB888X",
+        "62094": "AB888X",
+        "62095": "AB888X",
+        "62097": "AB888X",
+        "62098": "AB888X",
+        "62201": "AB888X",
+        "62202": "AB888X",
+        "62203": "AB888X",
+        "62204": "AB888X",
+        "62205": "AB888X",
+        "62206": "AB888X",
+        "62207": "AB888X",
+        "62208": "AB888X",
+        "62214": "AB888X",
+        "62215": "AB888X",
+        "62216": "AB888X",
+        "62217": "AB888X",
+        "62218": "AB888X",
+        "62219": "AB888X",
+        "62220": "AB888X",
+        "62221": "AB888X",
+        "62222": "AB888X",
+        "62223": "AB888X",
+        "62224": "AB888X",
+        "62225": "AB888X",
+        "62226": "AB888X",
+        "62230": "AB888X",
+        "62231": "AB888X",
+        "62232": "AB888X",
+        "62233": "AB888X",
+        "62234": "AB888X",
+        "62236": "AB888X",
+        "62237": "AB888X",
+        "62238": "AB888X",
+        "62239": "AB888X",
+        "62240": "AB888X",
+        "62241": "AB888X",
+        "62242": "AB888X",
+        "62243": "AB888X",
+        "62244": "AB888X",
+        "62245": "AB888X",
+        "62246": "AB888X",
+        "62247": "AB888X",
+        "62248": "AB888X",
+        "62249": "AB888X",
+        "62250": "AB888X",
+        "62252": "AB888X",
+        "62253": "AB888X",
+        "62254": "AB888X",
+        "62255": "AB888X",
+        "62256": "AB888X",
+        "62257": "AB888X",
+        "62258": "AB888X",
+        "62259": "AB888X",
+        "62260": "AB888X",
+        "62261": "AB888X",
+        "62262": "AB888X",
+        "62263": "AB888X",
+        "62264": "AB888X",
+        "62265": "AB888X",
+        "62266": "AB888X",
+        "62268": "AB888X",
+        "62269": "AB888X",
+        "62271": "AB888X",
+        "62272": "AB888X",
+        "62273": "AB888X",
+        "62274": "AB888X",
+        "62275": "AB888X",
+        "62277": "AB888X",
+        "62278": "AB888X",
+        "62279": "AB888X",
+        "62280": "AB888X",
+        "62281": "AB888X",
+        "62282": "AB888X",
+        "62284": "AB888X",
+        "62285": "AB888X",
+        "62286": "AB888X",
+        "62288": "AB888X",
+        "62289": "AB888X",
+        "62292": "AB888X",
+        "62293": "AB888X",
+        "62294": "AB888X",
+        "62295": "AB888X",
+        "62297": "AB888X",
+        "62298": "AB888X",
+        "62301": "AB888X",
+        "62305": "AB888X",
+        "62306": "AB888X",
+        "62311": "AB888X",
+        "62312": "AB888X",
+        "62313": "AB888X",
+        "62314": "AB888X",
+        "62316": "AB888X",
+        "62319": "AB888X",
+        "62320": "AB888X",
+        "62321": "AB888X",
+        "62323": "AB888X",
+        "62324": "AB888X",
+        "62325": "AB888X",
+        "62326": "AB888X",
+        "62329": "AB888X",
+        "62330": "AB888X",
+        "62334": "AB888X",
+        "62336": "AB888X",
+        "62338": "AB888X",
+        "62339": "AB888X",
+        "62340": "AB888X",
+        "62341": "AB888X",
+        "62343": "AB888X",
+        "62344": "AB888X",
+        "62345": "AB888X",
+        "62346": "AB888X",
+        "62347": "AB888X",
+        "62348": "AB888X",
+        "62349": "AB888X",
+        "62351": "AB888X",
+        "62352": "AB888X",
+        "62353": "AB888X",
+        "62354": "AB888X",
+        "62355": "AB888X",
+        "62356": "AB888X",
+        "62357": "AB888X",
+        "62358": "AB888X",
+        "62359": "AB888X",
+        "62360": "AB888X",
+        "62361": "AB888X",
+        "62362": "AB888X",
+        "62363": "AB888X",
+        "62365": "AB888X",
+        "62366": "AB888X",
+        "62367": "AB888X",
+        "62370": "AB888X",
+        "62373": "AB888X",
+        "62374": "AB888X",
+        "62375": "AB888X",
+        "62376": "AB888X",
+        "62378": "AB888X",
+        "62379": "AB888X",
+        "62380": "AB888X",
+        "62401": "AB888X",
+        "62410": "AB888X",
+        "62411": "AB888X",
+        "62413": "AB888X",
+        "62414": "AB888X",
+        "62417": "AB888X",
+        "62418": "AB888X",
+        "62419": "AB888X",
+        "62420": "AB888X",
+        "62421": "AB888X",
+        "62422": "AB888X",
+        "62423": "AB888X",
+        "62424": "AB888X",
+        "62425": "AB888X",
+        "62426": "AB888X",
+        "62427": "AB888X",
+        "62428": "AB888X",
+        "62431": "AB888X",
+        "62432": "AB888X",
+        "62433": "AB888X",
+        "62434": "AB888X",
+        "62435": "AB888X",
+        "62436": "AB888X",
+        "62438": "AB888X",
+        "62439": "AB888X",
+        "62440": "AB888X",
+        "62441": "AB888X",
+        "62442": "AB888X",
+        "62443": "AB888X",
+        "62444": "AB888X",
+        "62445": "AB888X",
+        "62446": "AB888X",
+        "62447": "AB888X",
+        "62448": "AB888X",
+        "62449": "AB888X",
+        "62450": "AB888X",
+        "62451": "AB888X",
+        "62452": "AB888X",
+        "62454": "AB888X",
+        "62458": "AB888X",
+        "62459": "AB888X",
+        "62460": "AB888X",
+        "62461": "AB888X",
+        "62462": "AB888X",
+        "62463": "AB888X",
+        "62464": "AB888X",
+        "62465": "AB888X",
+        "62466": "AB888X",
+        "62467": "AB888X",
+        "62468": "AB888X",
+        "62469": "AB888X",
+        "62471": "AB888X",
+        "62473": "AB888X",
+        "62474": "AB888X",
+        "62475": "AB888X",
+        "62476": "AB888X",
+        "62477": "AB888X",
+        "62478": "AB888X",
+        "62479": "AB888X",
+        "62480": "AB888X",
+        "62481": "AB888X",
+        "62485": "AB888X",
+        "62501": "AB888X",
+        "62510": "AB888X",
+        "62512": "AB888X",
+        "62513": "AB888X",
+        "62514": "AB888X",
+        "62515": "AB888X",
+        "62517": "AB888X",
+        "62518": "AB888X",
+        "62519": "AB888X",
+        "62520": "AB888X",
+        "62521": "AB888X",
+        "62522": "AB888X",
+        "62523": "AB888X",
+        "62524": "AB888X",
+        "62525": "AB888X",
+        "62526": "AB888X",
+        "62530": "AB888X",
+        "62531": "AB888X",
+        "62532": "AB888X",
+        "62533": "AB888X",
+        "62534": "AB888X",
+        "62535": "AB888X",
+        "62536": "AB888X",
+        "62537": "AB888X",
+        "62538": "AB888X",
+        "62539": "AB888X",
+        "62540": "AB888X",
+        "62541": "AB888X",
+        "62543": "AB888X",
+        "62544": "AB888X",
+        "62545": "AB888X",
+        "62546": "AB888X",
+        "62547": "AB888X",
+        "62548": "AB888X",
+        "62549": "AB888X",
+        "62550": "AB888X",
+        "62551": "AB888X",
+        "62553": "AB888X",
+        "62554": "AB888X",
+        "62555": "AB888X",
+        "62556": "AB888X",
+        "62557": "AB888X",
+        "62558": "AB888X",
+        "62560": "AB888X",
+        "62561": "AB888X",
+        "62563": "AB888X",
+        "62565": "AB888X",
+        "62566": "AB888X",
+        "62567": "AB888X",
+        "62568": "AB888X",
+        "62570": "AB888X",
+        "62571": "AB888X",
+        "62572": "AB888X",
+        "62573": "AB888X",
+        "62601": "AB888X",
+        "62610": "AB888X",
+        "62611": "AB888X",
+        "62612": "AB888X",
+        "62613": "AB888X",
+        "62615": "AB888X",
+        "62617": "AB888X",
+        "62618": "AB888X",
+        "62621": "AB888X",
+        "62622": "AB888X",
+        "62624": "AB888X",
+        "62625": "AB888X",
+        "62626": "AB888X",
+        "62627": "AB888X",
+        "62628": "AB888X",
+        "62629": "AB888X",
+        "62630": "AB888X",
+        "62631": "AB888X",
+        "62633": "AB888X",
+        "62634": "AB888X",
+        "62635": "AB888X",
+        "62638": "AB888X",
+        "62639": "AB888X",
+        "62640": "AB888X",
+        "62642": "AB888X",
+        "62643": "AB888X",
+        "62644": "AB888X",
+        "62649": "AB888X",
+        "62650": "AB888X",
+        "62651": "AB888X",
+        "62655": "AB888X",
+        "62656": "AB888X",
+        "62659": "AB888X",
+        "62660": "AB888X",
+        "62661": "AB888X",
+        "62662": "AB888X",
+        "62663": "AB888X",
+        "62664": "AB888X",
+        "62665": "AB888X",
+        "62666": "AB888X",
+        "62667": "AB888X",
+        "62668": "AB888X",
+        "62670": "AB888X",
+        "62671": "AB888X",
+        "62672": "AB888X",
+        "62673": "AB888X",
+        "62674": "AB888X",
+        "62675": "AB888X",
+        "62677": "AB888X",
+        "62681": "AB888X",
+        "62682": "AB888X",
+        "62683": "AB888X",
+        "62684": "AB888X",
+        "62685": "AB888X",
+        "62688": "AB888X",
+        "62689": "AB888X",
+        "62690": "AB888X",
+        "62691": "AB888X",
+        "62692": "AB888X",
+        "62693": "AB888X",
+        "62694": "AB888X",
+        "62695": "AB888X",
+        "62701": "AB888X",
+        "62702": "AB888X",
+        "62703": "AB888X",
+        "62704": "AB888X",
+        "62705": "AB888X",
+        "62706": "AB888X",
+        "62707": "AB888X",
+        "62708": "AB888X",
+        "62711": "AB888X",
+        "62712": "AB888X",
+        "62713": "AB888X",
+        "62715": "AB888X",
+        "62716": "AB888X",
+        "62719": "AB888X",
+        "62721": "AB888X",
+        "62722": "AB888X",
+        "62723": "AB888X",
+        "62726": "AB888X",
+        "62736": "AB888X",
+        "62739": "AB888X",
+        "62746": "AB888X",
+        "62756": "AB888X",
+        "62757": "AB888X",
+        "62761": "AB888X",
+        "62762": "AB888X",
+        "62763": "AB888X",
+        "62764": "AB888X",
+        "62765": "AB888X",
+        "62766": "AB888X",
+        "62767": "AB888X",
+        "62769": "AB888X",
+        "62776": "AB888X",
+        "62777": "AB888X",
+        "62781": "AB888X",
+        "62786": "AB888X",
+        "62791": "AB888X",
+        "62794": "AB888X",
+        "62796": "AB888X",
+        "62801": "AB888X",
+        "62803": "AB888X",
+        "62805": "AB888X",
+        "62806": "AB888X",
+        "62807": "AB888X",
+        "62808": "AB888X",
+        "62809": "AB888X",
+        "62810": "AB888X",
+        "62811": "AB888X",
+        "62812": "AB888X",
+        "62814": "AB888X",
+        "62815": "AB888X",
+        "62816": "AB888X",
+        "62817": "AB888X",
+        "62818": "AB888X",
+        "62819": "AB888X",
+        "62820": "AB888X",
+        "62821": "AB888X",
+        "62822": "AB888X",
+        "62823": "AB888X",
+        "62824": "AB888X",
+        "62825": "AB888X",
+        "62827": "AB888X",
+        "62828": "AB888X",
+        "62829": "AB888X",
+        "62830": "AB888X",
+        "62831": "AB888X",
+        "62832": "AB888X",
+        "62833": "AB888X",
+        "62834": "AB888X",
+        "62835": "AB888X",
+        "62836": "AB888X",
+        "62837": "AB888X",
+        "62838": "AB888X",
+        "62839": "AB888X",
+        "62840": "AB888X",
+        "62841": "AB888X",
+        "62842": "AB888X",
+        "62843": "AB888X",
+        "62844": "AB888X",
+        "62846": "AB888X",
+        "62848": "AB888X",
+        "62849": "AB888X",
+        "62850": "AB888X",
+        "62851": "AB888X",
+        "62852": "AB888X",
+        "62853": "AB888X",
+        "62854": "AB888X",
+        "62855": "AB888X",
+        "62856": "AB888X",
+        "62857": "AB888X",
+        "62858": "AB888X",
+        "62859": "AB888X",
+        "62860": "AB888X",
+        "62861": "AB888X",
+        "62862": "AB888X",
+        "62863": "AB888X",
+        "62864": "AB888X",
+        "62865": "AB888X",
+        "62866": "AB888X",
+        "62867": "AB888X",
+        "62868": "AB888X",
+        "62869": "AB888X",
+        "62870": "AB888X",
+        "62871": "AB888X",
+        "62872": "AB888X",
+        "62874": "AB888X",
+        "62875": "AB888X",
+        "62876": "AB888X",
+        "62877": "AB888X",
+        "62878": "AB888X",
+        "62879": "AB888X",
+        "62880": "AB888X",
+        "62881": "AB888X",
+        "62882": "AB888X",
+        "62883": "AB888X",
+        "62884": "AB888X",
+        "62885": "AB888X",
+        "62886": "AB888X",
+        "62887": "AB888X",
+        "62888": "AB888X",
+        "62889": "AB888X",
+        "62890": "AB888X",
+        "62891": "AB888X",
+        "62892": "AB888X",
+        "62893": "AB888X",
+        "62894": "AB888X",
+        "62895": "AB888X",
+        "62896": "AB888X",
+        "62897": "AB888X",
+        "62898": "AB888X",
+        "62899": "AB888X",
+        "62901": "AB888X",
+        "62902": "AB888X",
+        "62903": "AB888X",
+        "62905": "AB888X",
+        "62906": "AB888X",
+        "62907": "AB888X",
+        "62908": "AB888X",
+        "62909": "AB888X",
+        "62910": "AB888X",
+        "62912": "AB888X",
+        "62914": "AB888X",
+        "62915": "AB888X",
+        "62916": "AB888X",
+        "62917": "AB888X",
+        "62918": "AB888X",
+        "62919": "AB888X",
+        "62920": "AB888X",
+        "62921": "AB888X",
+        "62922": "AB888X",
+        "62923": "AB888X",
+        "62924": "AB888X",
+        "62926": "AB888X",
+        "62927": "AB888X",
+        "62928": "AB888X",
+        "62930": "AB888X",
+        "62931": "AB888X",
+        "62932": "AB888X",
+        "62933": "AB888X",
+        "62934": "AB888X",
+        "62935": "AB888X",
+        "62938": "AB888X",
+        "62939": "AB888X",
+        "62940": "AB888X",
+        "62941": "AB888X",
+        "62942": "AB888X",
+        "62943": "AB888X",
+        "62946": "AB888X",
+        "62947": "AB888X",
+        "62948": "AB888X",
+        "62949": "AB888X",
+        "62950": "AB888X",
+        "62951": "AB888X",
+        "62952": "AB888X",
+        "62953": "AB888X",
+        "62954": "AB888X",
+        "62955": "AB888X",
+        "62956": "AB888X",
+        "62957": "AB888X",
+        "62958": "AB888X",
+        "62959": "AB888X",
+        "62960": "AB888X",
+        "62961": "AB888X",
+        "62962": "AB888X",
+        "62963": "AB888X",
+        "62964": "AB888X",
+        "62965": "AB888X",
+        "62966": "AB888X",
+        "62967": "AB888X",
+        "62969": "AB888X",
+        "62970": "AB888X",
+        "62971": "AB888X",
+        "62972": "AB888X",
+        "62973": "AB888X",
+        "62974": "AB888X",
+        "62975": "AB888X",
+        "62976": "AB888X",
+        "62977": "AB888X",
+        "62979": "AB888X",
+        "62982": "AB888X",
+        "62983": "AB888X",
+        "62984": "AB888X",
+        "62985": "AB888X",
+        "62987": "AB888X",
+        "62988": "AB888X",
+        "62990": "AB888X",
+        "62992": "AB888X",
+        "62993": "AB888X",
+        "62994": "AB888X",
+        "62995": "AB888X",
+        "62996": "AB888X",
+        "62997": "AB888X",
+        "62998": "AB888X",
+        "62999": "AB888X",
+        "63001": "AB888X",
+        "63005": "AB888X",
+        "63006": "AB888X",
+        "63010": "AB888X",
+        "63011": "AB888X",
+        "63012": "AB888X",
+        "63013": "AB888X",
+        "63014": "AB888X",
+        "63015": "AB888X",
+        "63016": "AB888X",
+        "63017": "AB888X",
+        "63019": "AB888X",
+        "63020": "AB888X",
+        "63021": "AB888X",
+        "63022": "AB888X",
+        "63023": "AB888X",
+        "63024": "AB888X",
+        "63025": "AB888X",
+        "63026": "AB888X",
+        "63028": "AB888X",
+        "63030": "AB888X",
+        "63031": "AB888X",
+        "63032": "AB888X",
+        "63033": "AB888X",
+        "63034": "AB888X",
+        "63036": "AB888X",
+        "63037": "AB888X",
+        "63038": "AB888X",
+        "63039": "AB888X",
+        "63040": "AB888X",
+        "63041": "AB888X",
+        "63042": "AB888X",
+        "63043": "AB888X",
+        "63044": "AB888X",
+        "63045": "AB888X",
+        "63047": "AB888X",
+        "63048": "AB888X",
+        "63049": "AB888X",
+        "63050": "AB888X",
+        "63051": "AB888X",
+        "63052": "AB888X",
+        "63053": "AB888X",
+        "63055": "AB888X",
+        "63056": "AB888X",
+        "63057": "AB888X",
+        "63060": "AB888X",
+        "63061": "AB888X",
+        "63065": "AB888X",
+        "63066": "AB888X",
+        "63068": "AB888X",
+        "63069": "AB888X",
+        "63070": "AB888X",
+        "63071": "AB888X",
+        "63072": "AB888X",
+        "63073": "AB888X",
+        "63074": "AB888X",
+        "63077": "AB888X",
+        "63079": "AB888X",
+        "63080": "AB888X",
+        "63084": "AB888X",
+        "63087": "AB888X",
+        "63088": "AB888X",
+        "63089": "AB888X",
+        "63090": "AB888X",
+        "63091": "AB888X",
+        "63099": "AB888X",
+        "63101": "AB888X",
+        "63102": "AB888X",
+        "63103": "AB888X",
+        "63104": "AB888X",
+        "63105": "AB888X",
+        "63106": "AB888X",
+        "63107": "AB888X",
+        "63108": "AB888X",
+        "63109": "AB888X",
+        "63110": "AB888X",
+        "63111": "AB888X",
+        "63112": "AB888X",
+        "63113": "AB888X",
+        "63114": "AB888X",
+        "63115": "AB888X",
+        "63116": "AB888X",
+        "63117": "AB888X",
+        "63118": "AB888X",
+        "63119": "AB888X",
+        "63120": "AB888X",
+        "63121": "AB888X",
+        "63122": "AB888X",
+        "63123": "AB888X",
+        "63124": "AB888X",
+        "63125": "AB888X",
+        "63126": "AB888X",
+        "63127": "AB888X",
+        "63128": "AB888X",
+        "63129": "AB888X",
+        "63130": "AB888X",
+        "63131": "AB888X",
+        "63132": "AB888X",
+        "63133": "AB888X",
+        "63134": "AB888X",
+        "63135": "AB888X",
+        "63136": "AB888X",
+        "63137": "AB888X",
+        "63138": "AB888X",
+        "63139": "AB888X",
+        "63140": "AB888X",
+        "63141": "AB888X",
+        "63143": "AB888X",
+        "63144": "AB888X",
+        "63145": "AB888X",
+        "63146": "AB888X",
+        "63147": "AB888X",
+        "63150": "AB888X",
+        "63151": "AB888X",
+        "63155": "AB888X",
+        "63156": "AB888X",
+        "63157": "AB888X",
+        "63158": "AB888X",
+        "63160": "AB888X",
+        "63163": "AB888X",
+        "63164": "AB888X",
+        "63166": "AB888X",
+        "63167": "AB888X",
+        "63169": "AB888X",
+        "63171": "AB888X",
+        "63177": "AB888X",
+        "63178": "AB888X",
+        "63179": "AB888X",
+        "63180": "AB888X",
+        "63182": "AB888X",
+        "63188": "AB888X",
+        "63190": "AB888X",
+        "63195": "AB888X",
+        "63196": "AB888X",
+        "63197": "AB888X",
+        "63198": "AB888X",
+        "63199": "AB888X",
+        "63301": "AB888X",
+        "63302": "AB888X",
+        "63303": "AB888X",
+        "63304": "AB888X",
+        "63330": "AB888X",
+        "63332": "AB888X",
+        "63333": "AB888X",
+        "63334": "AB888X",
+        "63336": "AB888X",
+        "63338": "AB888X",
+        "63339": "AB888X",
+        "63341": "AB888X",
+        "63342": "AB888X",
+        "63343": "AB888X",
+        "63344": "AB888X",
+        "63345": "AB888X",
+        "63346": "AB888X",
+        "63347": "AB888X",
+        "63348": "AB888X",
+        "63349": "AB888X",
+        "63350": "AB888X",
+        "63351": "AB888X",
+        "63352": "AB888X",
+        "63353": "AB888X",
+        "63357": "AB888X",
+        "63359": "AB888X",
+        "63361": "AB888X",
+        "63362": "AB888X",
+        "63363": "AB888X",
+        "63365": "AB888X",
+        "63366": "AB888X",
+        "63367": "AB888X",
+        "63368": "AB888X",
+        "63369": "AB888X",
+        "63370": "AB888X",
+        "63373": "AB888X",
+        "63376": "AB888X",
+        "63377": "AB888X",
+        "63378": "AB888X",
+        "63379": "AB888X",
+        "63381": "AB888X",
+        "63382": "AB888X",
+        "63383": "AB888X",
+        "63384": "AB888X",
+        "63385": "AB888X",
+        "63386": "AB888X",
+        "63387": "AB888X",
+        "63388": "AB888X",
+        "63389": "AB888X",
+        "63390": "AB888X",
+        "63401": "AB888X",
+        "63430": "AB888X",
+        "63431": "AB888X",
+        "63432": "AB888X",
+        "63433": "AB888X",
+        "63434": "AB888X",
+        "63435": "AB888X",
+        "63436": "AB888X",
+        "63437": "AB888X",
+        "63438": "AB888X",
+        "63439": "AB888X",
+        "63440": "AB888X",
+        "63441": "AB888X",
+        "63442": "AB888X",
+        "63443": "AB888X",
+        "63445": "AB888X",
+        "63446": "AB888X",
+        "63447": "AB888X",
+        "63448": "AB888X",
+        "63450": "AB888X",
+        "63451": "AB888X",
+        "63452": "AB888X",
+        "63453": "AB888X",
+        "63454": "AB888X",
+        "63456": "AB888X",
+        "63457": "AB888X",
+        "63458": "AB888X",
+        "63459": "AB888X",
+        "63460": "AB888X",
+        "63461": "AB888X",
+        "63462": "AB888X",
+        "63463": "AB888X",
+        "63464": "AB888X",
+        "63465": "AB888X",
+        "63466": "AB888X",
+        "63467": "AB888X",
+        "63468": "AB888X",
+        "63469": "AB888X",
+        "63471": "AB888X",
+        "63472": "AB888X",
+        "63473": "AB888X",
+        "63474": "AB888X",
+        "63501": "AB888X",
+        "63530": "AB888X",
+        "63531": "AB888X",
+        "63532": "AB888X",
+        "63533": "AB888X",
+        "63534": "AB888X",
+        "63535": "AB888X",
+        "63536": "AB888X",
+        "63537": "AB888X",
+        "63538": "AB888X",
+        "63539": "AB888X",
+        "63540": "AB888X",
+        "63541": "AB888X",
+        "63543": "AB888X",
+        "63544": "AB888X",
+        "63545": "AB888X",
+        "63546": "AB888X",
+        "63547": "AB888X",
+        "63548": "AB888X",
+        "63549": "AB888X",
+        "63551": "AB888X",
+        "63552": "AB888X",
+        "63555": "AB888X",
+        "63556": "AB888X",
+        "63557": "AB888X",
+        "63558": "AB888X",
+        "63559": "AB888X",
+        "63560": "AB888X",
+        "63561": "AB888X",
+        "63563": "AB888X",
+        "63565": "AB888X",
+        "63566": "AB888X",
+        "63567": "AB888X",
+        "63601": "AB888X",
+        "63620": "AB888X",
+        "63621": "AB888X",
+        "63622": "AB888X",
+        "63623": "AB888X",
+        "63624": "AB888X",
+        "63625": "AB888X",
+        "63626": "AB888X",
+        "63627": "AB888X",
+        "63628": "AB888X",
+        "63629": "AB888X",
+        "63630": "AB888X",
+        "63631": "AB888X",
+        "63632": "AB888X",
+        "63633": "AB888X",
+        "63636": "AB888X",
+        "63637": "AB888X",
+        "63638": "AB888X",
+        "63640": "AB888X",
+        "63645": "AB888X",
+        "63648": "AB888X",
+        "63650": "AB888X",
+        "63651": "AB888X",
+        "63653": "AB888X",
+        "63654": "AB888X",
+        "63655": "AB888X",
+        "63656": "AB888X",
+        "63660": "AB888X",
+        "63662": "AB888X",
+        "63663": "AB888X",
+        "63664": "AB888X",
+        "63665": "AB888X",
+        "63666": "AB888X",
+        "63670": "AB888X",
+        "63673": "AB888X",
+        "63674": "AB888X",
+        "63675": "AB888X",
+        "63701": "AB888X",
+        "63702": "AB888X",
+        "63703": "AB888X",
+        "63730": "AB888X",
+        "63732": "AB888X",
+        "63735": "AB888X",
+        "63736": "AB888X",
+        "63737": "AB888X",
+        "63738": "AB888X",
+        "63739": "AB888X",
+        "63740": "AB888X",
+        "63742": "AB888X",
+        "63743": "AB888X",
+        "63744": "AB888X",
+        "63745": "AB888X",
+        "63746": "AB888X",
+        "63747": "AB888X",
+        "63748": "AB888X",
+        "63750": "AB888X",
+        "63751": "AB888X",
+        "63752": "AB888X",
+        "63755": "AB888X",
+        "63758": "AB888X",
+        "63760": "AB888X",
+        "63763": "AB888X",
+        "63764": "AB888X",
+        "63766": "AB888X",
+        "63767": "AB888X",
+        "63769": "AB888X",
+        "63770": "AB888X",
+        "63771": "AB888X",
+        "63774": "AB888X",
+        "63775": "AB888X",
+        "63776": "AB888X",
+        "63778": "AB890X",
+        "63779": "AB890X",
+        "63780": "AB888X",
+        "63781": "AB888X",
+        "63782": "AB888X",
+        "63783": "AB888X",
+        "63784": "AB890X",
+        "63785": "AB888X",
+        "63787": "AB888X",
+        "63790": "AB890X",
+        "63801": "AB888X",
+        "63820": "AB888X",
+        "63821": "AB888X",
+        "63822": "AB888X",
+        "63823": "AB888X",
+        "63824": "AB888X",
+        "63825": "AB888X",
+        "63826": "AB888X",
+        "63827": "AB888X",
+        "63828": "AB888X",
+        "63829": "AB888X",
+        "63830": "AB888X",
+        "63833": "AB888X",
+        "63834": "AB888X",
+        "63837": "AB888X",
+        "63839": "AB888X",
+        "63840": "AB888X",
+        "63841": "AB888X",
+        "63845": "AB888X",
+        "63846": "AB888X",
+        "63847": "AB888X",
+        "63848": "AB888X",
+        "63849": "AB888X",
+        "63850": "AB888X",
+        "63851": "AB888X",
+        "63852": "AB888X",
+        "63853": "AB888X",
+        "63855": "AB888X",
+        "63857": "AB888X",
+        "63860": "AB888X",
+        "63862": "AB888X",
+        "63863": "AB888X",
+        "63866": "AB888X",
+        "63867": "AB888X",
+        "63868": "AB888X",
+        "63869": "AB888X",
+        "63870": "AB888X",
+        "63873": "AB888X",
+        "63874": "AB888X",
+        "63875": "AB888X",
+        "63876": "AB888X",
+        "63877": "AB888X",
+        "63878": "AB888X",
+        "63879": "AB888X",
+        "63880": "AB888X",
+        "63881": "AB888X",
+        "63882": "AB888X",
+        "63901": "AB888X",
+        "63902": "AB888X",
+        "63931": "AB888X",
+        "63932": "AB888X",
+        "63933": "AB888X",
+        "63934": "AB888X",
+        "63935": "AB888X",
+        "63936": "AB888X",
+        "63937": "AB888X",
+        "63938": "AB888X",
+        "63939": "AB888X",
+        "63940": "AB888X",
+        "63941": "AB888X",
+        "63942": "AB888X",
+        "63943": "AB888X",
+        "63944": "AB888X",
+        "63945": "AB888X",
+        "63950": "AB888X",
+        "63951": "AB888X",
+        "63952": "AB888X",
+        "63953": "AB888X",
+        "63954": "AB888X",
+        "63955": "AB888X",
+        "63956": "AB888X",
+        "63957": "AB888X",
+        "63960": "AB888X",
+        "63961": "AB888X",
+        "63962": "AB888X",
+        "63963": "AB888X",
+        "63964": "AB888X",
+        "63965": "AB888X",
+        "63966": "AB888X",
+        "63967": "AB888X",
+        "64001": "AB888X",
+        "64011": "AB888X",
+        "64012": "AB891X",
+        "64013": "AB888X",
+        "64014": "AB888X",
+        "64015": "AB888X",
+        "64016": "AB888X",
+        "64017": "AB888X",
+        "64018": "AB888X",
+        "64019": "AB888X",
+        "64020": "AB888X",
+        "64021": "AB888X",
+        "64022": "AB888X",
+        "64024": "AB888X",
+        "64028": "AB888X",
+        "64029": "AB888X",
+        "64030": "AB888X",
+        "64034": "AB888X",
+        "64035": "AB888X",
+        "64036": "AB888X",
+        "64037": "AB888X",
+        "64040": "AB888X",
+        "64048": "AB888X",
+        "64050": "AB888X",
+        "64051": "AB888X",
+        "64052": "AB888X",
+        "64053": "AB888X",
+        "64054": "AB888X",
+        "64055": "AB888X",
+        "64056": "AB888X",
+        "64057": "AB888X",
+        "64058": "AB888X",
+        "64060": "AB888X",
+        "64061": "AB888X",
+        "64062": "AB888X",
+        "64063": "AB888X",
+        "64064": "AB888X",
+        "64065": "AB888X",
+        "64066": "AB888X",
+        "64067": "AB888X",
+        "64068": "AB888X",
+        "64069": "AB888X",
+        "64070": "AB888X",
+        "64071": "AB888X",
+        "64072": "AB888X",
+        "64073": "AB888X",
+        "64074": "AB888X",
+        "64075": "AB888X",
+        "64076": "AB888X",
+        "64077": "AB888X",
+        "64078": "AB888X",
+        "64079": "AB888X",
+        "64080": "AB888X",
+        "64081": "AB888X",
+        "64082": "AB888X",
+        "64083": "AB888X",
+        "64084": "AB888X",
+        "64085": "AB888X",
+        "64086": "AB888X",
+        "64088": "AB888X",
+        "64089": "AB888X",
+        "64090": "AB888X",
+        "64092": "AB888X",
+        "64093": "AB888X",
+        "64096": "AB888X",
+        "64097": "AB888X",
+        "64098": "AB888X",
+        "64101": "AB888X",
+        "64102": "AB888X",
+        "64105": "AB888X",
+        "64106": "AB888X",
+        "64108": "AB888X",
+        "64109": "AB888X",
+        "64110": "AB888X",
+        "64111": "AB888X",
+        "64112": "AB888X",
+        "64113": "AB888X",
+        "64114": "AB888X",
+        "64116": "AB888X",
+        "64117": "AB888X",
+        "64118": "AB888X",
+        "64119": "AB888X",
+        "64120": "AB888X",
+        "64121": "AB888X",
+        "64123": "AB888X",
+        "64124": "AB888X",
+        "64125": "AB888X",
+        "64126": "AB888X",
+        "64127": "AB888X",
+        "64128": "AB888X",
+        "64129": "AB888X",
+        "64130": "AB888X",
+        "64131": "AB888X",
+        "64132": "AB888X",
+        "64133": "AB888X",
+        "64134": "AB888X",
+        "64136": "AB888X",
+        "64137": "AB888X",
+        "64138": "AB888X",
+        "64139": "AB888X",
+        "64141": "AB888X",
+        "64144": "AB888X",
+        "64145": "AB888X",
+        "64146": "AB888X",
+        "64147": "AB888X",
+        "64148": "AB888X",
+        "64149": "AB888X",
+        "64150": "AB888X",
+        "64151": "AB888X",
+        "64152": "AB888X",
+        "64153": "AB888X",
+        "64154": "AB888X",
+        "64155": "AB888X",
+        "64156": "AB888X",
+        "64157": "AB888X",
+        "64158": "AB888X",
+        "64161": "AB888X",
+        "64163": "AB888X",
+        "64164": "AB888X",
+        "64165": "AB888X",
+        "64166": "AB888X",
+        "64167": "AB888X",
+        "64168": "AB888X",
+        "64170": "AB888X",
+        "64171": "AB888X",
+        "64172": "AB888X",
+        "64179": "AB888X",
+        "64180": "AB888X",
+        "64183": "AB888X",
+        "64184": "AB888X",
+        "64185": "AB888X",
+        "64187": "AB888X",
+        "64188": "AB888X",
+        "64190": "AB888X",
+        "64191": "AB888X",
+        "64192": "AB888X",
+        "64193": "AB888X",
+        "64194": "AB888X",
+        "64195": "AB888X",
+        "64196": "AB888X",
+        "64197": "AB888X",
+        "64198": "AB888X",
+        "64199": "AB888X",
+        "64401": "AB888X",
+        "64402": "AB888X",
+        "64420": "AB888X",
+        "64421": "AB888X",
+        "64422": "AB888X",
+        "64423": "AB888X",
+        "64424": "AB888X",
+        "64425": "AB888X",
+        "64426": "AB888X",
+        "64427": "AB888X",
+        "64428": "AB888X",
+        "64429": "AB888X",
+        "64430": "AB888X",
+        "64431": "AB888X",
+        "64432": "AB888X",
+        "64433": "AB888X",
+        "64434": "AB888X",
+        "64436": "AB888X",
+        "64437": "AB888X",
+        "64438": "AB888X",
+        "64439": "AB888X",
+        "64440": "AB888X",
+        "64441": "AB888X",
+        "64442": "AB888X",
+        "64443": "AB888X",
+        "64444": "AB888X",
+        "64445": "AB888X",
+        "64446": "AB888X",
+        "64447": "AB888X",
+        "64448": "AB888X",
+        "64449": "AB888X",
+        "64451": "AB888X",
+        "64453": "AB888X",
+        "64454": "AB888X",
+        "64455": "AB888X",
+        "64456": "AB888X",
+        "64457": "AB888X",
+        "64458": "AB888X",
+        "64459": "AB888X",
+        "64461": "AB888X",
+        "64463": "AB888X",
+        "64465": "AB888X",
+        "64466": "AB888X",
+        "64467": "AB888X",
+        "64468": "AB888X",
+        "64469": "AB888X",
+        "64470": "AB888X",
+        "64471": "AB888X",
+        "64473": "AB888X",
+        "64474": "AB888X",
+        "64475": "AB888X",
+        "64476": "AB888X",
+        "64477": "AB888X",
+        "64479": "AB888X",
+        "64480": "AB888X",
+        "64481": "AB888X",
+        "64482": "AB888X",
+        "64483": "AB888X",
+        "64484": "AB888X",
+        "64485": "AB888X",
+        "64486": "AB888X",
+        "64487": "AB888X",
+        "64489": "AB888X",
+        "64490": "AB888X",
+        "64491": "AB888X",
+        "64492": "AB888X",
+        "64493": "AB888X",
+        "64494": "AB888X",
+        "64496": "AB888X",
+        "64497": "AB888X",
+        "64498": "AB888X",
+        "64499": "AB888X",
+        "64501": "AB888X",
+        "64502": "AB888X",
+        "64503": "AB888X",
+        "64504": "AB888X",
+        "64505": "AB888X",
+        "64506": "AB888X",
+        "64507": "AB888X",
+        "64508": "AB888X",
+        "64601": "AB888X",
+        "64620": "AB888X",
+        "64622": "AB888X",
+        "64623": "AB888X",
+        "64624": "AB888X",
+        "64625": "AB888X",
+        "64628": "AB888X",
+        "64630": "AB888X",
+        "64631": "AB888X",
+        "64632": "AB888X",
+        "64633": "AB888X",
+        "64635": "AB888X",
+        "64636": "AB888X",
+        "64637": "AB888X",
+        "64638": "AB888X",
+        "64639": "AB888X",
+        "64640": "AB888X",
+        "64641": "AB888X",
+        "64642": "AB888X",
+        "64643": "AB888X",
+        "64644": "AB888X",
+        "64645": "AB888X",
+        "64646": "AB888X",
+        "64647": "AB888X",
+        "64648": "AB888X",
+        "64649": "AB888X",
+        "64650": "AB888X",
+        "64651": "AB888X",
+        "64652": "AB888X",
+        "64653": "AB888X",
+        "64654": "AB888X",
+        "64655": "AB888X",
+        "64656": "AB888X",
+        "64657": "AB888X",
+        "64658": "AB888X",
+        "64659": "AB888X",
+        "64660": "AB888X",
+        "64661": "AB888X",
+        "64664": "AB888X",
+        "64667": "AB888X",
+        "64668": "AB888X",
+        "64670": "AB888X",
+        "64671": "AB888X",
+        "64672": "AB888X",
+        "64673": "AB888X",
+        "64674": "AB888X",
+        "64676": "AB888X",
+        "64679": "AB888X",
+        "64680": "AB888X",
+        "64681": "AB888X",
+        "64682": "AB888X",
+        "64683": "AB888X",
+        "64686": "AB888X",
+        "64688": "AB888X",
+        "64689": "AB888X",
+        "64701": "AB888X",
+        "64720": "AB888X",
+        "64722": "AB888X",
+        "64723": "AB888X",
+        "64724": "AB888X",
+        "64725": "AB888X",
+        "64726": "AB888X",
+        "64728": "AB890X",
+        "64730": "AB888X",
+        "64733": "AB888X",
+        "64734": "AB888X",
+        "64735": "AB888X",
+        "64738": "AB891X",
+        "64739": "AB888X",
+        "64740": "AB888X",
+        "64741": "AB890X",
+        "64742": "AB888X",
+        "64743": "AB888X",
+        "64744": "AB890X",
+        "64745": "AB888X",
+        "64746": "AB888X",
+        "64747": "AB888X",
+        "64748": "AB890X",
+        "64750": "AB890X",
+        "64752": "AB888X",
+        "64755": "AB890X",
+        "64756": "AB891X",
+        "64759": "AB890X",
+        "64761": "AB888X",
+        "64762": "AB890X",
+        "64763": "AB888X",
+        "64765": "AB890X",
+        "64766": "AB890X",
+        "64767": "AB890X",
+        "64769": "AB890X",
+        "64770": "AB888X",
+        "64771": "AB890X",
+        "64772": "AB890X",
+        "64776": "AB888X",
+        "64778": "AB890X",
+        "64779": "AB888X",
+        "64780": "AB888X",
+        "64781": "AB888X",
+        "64783": "AB890X",
+        "64784": "AB890X",
+        "64788": "AB888X",
+        "64789": "AB888X",
+        "64790": "AB890X",
+        "64801": "AB890X",
+        "64802": "AB890X",
+        "64803": "AB890X",
+        "64804": "AB890X",
+        "64830": "AB890X",
+        "64831": "AB890X",
+        "64832": "AB890X",
+        "64833": "AB890X",
+        "64834": "AB890X",
+        "64835": "AB890X",
+        "64836": "AB890X",
+        "64840": "AB890X",
+        "64841": "AB890X",
+        "64842": "AB890X",
+        "64843": "AB890X",
+        "64844": "AB890X",
+        "64847": "AB890X",
+        "64848": "AB891X",
+        "64849": "AB890X",
+        "64850": "AB890X",
+        "64853": "AB890X",
+        "64854": "AB890X",
+        "64855": "AB890X",
+        "64856": "AB890X",
+        "64857": "AB890X",
+        "64858": "AB890X",
+        "64859": "AB890X",
+        "64861": "AB890X",
+        "64862": "AB890X",
+        "64863": "AB890X",
+        "64864": "AB890X",
+        "64865": "AB890X",
+        "64866": "AB890X",
+        "64867": "AB890X",
+        "64868": "AB890X",
+        "64869": "AB890X",
+        "64870": "AB890X",
+        "64873": "AB890X",
+        "64874": "AB891X",
+        "64944": "AB888X",
+        "64999": "AB888X",
+        "65001": "AB888X",
+        "65010": "AB888X",
+        "65011": "AB888X",
+        "65013": "AB888X",
+        "65014": "AB888X",
+        "65016": "AB888X",
+        "65017": "AB891X",
+        "65018": "AB888X",
+        "65020": "AB891X",
+        "65023": "AB888X",
+        "65024": "AB888X",
+        "65025": "AB888X",
+        "65026": "AB891X",
+        "65032": "AB888X",
+        "65034": "AB888X",
+        "65035": "AB888X",
+        "65036": "AB888X",
+        "65037": "AB888X",
+        "65038": "AB891X",
+        "65039": "AB888X",
+        "65040": "AB891X",
+        "65041": "AB888X",
+        "65042": "AB888X",
+        "65043": "AB888X",
+        "65046": "AB888X",
+        "65047": "AB891X",
+        "65048": "AB888X",
+        "65049": "AB891X",
+        "65050": "AB888X",
+        "65051": "AB888X",
+        "65052": "AB891X",
+        "65053": "AB888X",
+        "65054": "AB888X",
+        "65055": "AB888X",
+        "65058": "AB888X",
+        "65059": "AB888X",
+        "65061": "AB888X",
+        "65062": "AB888X",
+        "65063": "AB888X",
+        "65064": "AB891X",
+        "65065": "AB891X",
+        "65066": "AB888X",
+        "65067": "AB888X",
+        "65068": "AB888X",
+        "65069": "AB888X",
+        "65072": "AB891X",
+        "65074": "AB888X",
+        "65075": "AB891X",
+        "65076": "AB888X",
+        "65077": "AB888X",
+        "65078": "AB888X",
+        "65079": "AB891X",
+        "65080": "AB888X",
+        "65081": "AB888X",
+        "65082": "AB891X",
+        "65083": "AB891X",
+        "65084": "AB888X",
+        "65085": "AB888X",
+        "65101": "AB888X",
+        "65102": "AB888X",
+        "65103": "AB888X",
+        "65104": "AB888X",
+        "65105": "AB888X",
+        "65106": "AB888X",
+        "65107": "AB888X",
+        "65108": "AB888X",
+        "65109": "AB888X",
+        "65110": "AB888X",
+        "65111": "AB888X",
+        "65201": "AB888X",
+        "65202": "AB888X",
+        "65203": "AB888X",
+        "65205": "AB888X",
+        "65211": "AB888X",
+        "65212": "AB888X",
+        "65215": "AB888X",
+        "65216": "AB888X",
+        "65217": "AB888X",
+        "65218": "AB888X",
+        "65230": "AB888X",
+        "65231": "AB888X",
+        "65232": "AB888X",
+        "65233": "AB888X",
+        "65236": "AB888X",
+        "65237": "AB888X",
+        "65239": "AB888X",
+        "65240": "AB888X",
+        "65243": "AB888X",
+        "65244": "AB888X",
+        "65246": "AB888X",
+        "65247": "AB888X",
+        "65248": "AB888X",
+        "65250": "AB888X",
+        "65251": "AB888X",
+        "65254": "AB888X",
+        "65255": "AB888X",
+        "65256": "AB888X",
+        "65257": "AB888X",
+        "65258": "AB888X",
+        "65259": "AB888X",
+        "65260": "AB888X",
+        "65261": "AB888X",
+        "65262": "AB888X",
+        "65263": "AB888X",
+        "65264": "AB888X",
+        "65265": "AB888X",
+        "65270": "AB888X",
+        "65274": "AB888X",
+        "65275": "AB888X",
+        "65276": "AB888X",
+        "65278": "AB888X",
+        "65279": "AB888X",
+        "65280": "AB888X",
+        "65281": "AB888X",
+        "65282": "AB888X",
+        "65283": "AB888X",
+        "65284": "AB888X",
+        "65285": "AB888X",
+        "65286": "AB888X",
+        "65287": "AB888X",
+        "65299": "AB888X",
+        "65301": "AB888X",
+        "65302": "AB888X",
+        "65305": "AB888X",
+        "65320": "AB888X",
+        "65321": "AB888X",
+        "65322": "AB888X",
+        "65323": "AB888X",
+        "65324": "AB891X",
+        "65325": "AB891X",
+        "65326": "AB891X",
+        "65327": "AB888X",
+        "65329": "AB888X",
+        "65330": "AB888X",
+        "65332": "AB888X",
+        "65333": "AB888X",
+        "65334": "AB888X",
+        "65335": "AB888X",
+        "65336": "AB888X",
+        "65337": "AB888X",
+        "65338": "AB891X",
+        "65339": "AB888X",
+        "65340": "AB888X",
+        "65344": "AB888X",
+        "65345": "AB888X",
+        "65347": "AB888X",
+        "65348": "AB888X",
+        "65349": "AB888X",
+        "65350": "AB888X",
+        "65351": "AB888X",
+        "65354": "AB888X",
+        "65355": "AB888X",
+        "65360": "AB888X",
+        "65401": "AB888X",
+        "65402": "AB888X",
+        "65409": "AB888X",
+        "65423": "AB891X",
+        "65436": "AB888X",
+        "65438": "AB891X",
+        "65439": "AB888X",
+        "65440": "AB888X",
+        "65441": "AB888X",
+        "65443": "AB888X",
+        "65444": "AB891X",
+        "65446": "AB888X",
+        "65449": "AB888X",
+        "65452": "AB891X",
+        "65453": "AB888X",
+        "65456": "AB888X",
+        "65457": "AB891X",
+        "65459": "AB891X",
+        "65461": "AB888X",
+        "65462": "AB888X",
+        "65463": "AB891X",
+        "65464": "AB891X",
+        "65466": "AB891X",
+        "65468": "AB891X",
+        "65470": "AB891X",
+        "65473": "AB891X",
+        "65479": "AB891X",
+        "65483": "AB891X",
+        "65484": "AB891X",
+        "65486": "AB891X",
+        "65501": "AB888X",
+        "65529": "AB891X",
+        "65532": "AB888X",
+        "65534": "AB891X",
+        "65535": "AB888X",
+        "65536": "AB891X",
+        "65541": "AB888X",
+        "65542": "AB891X",
+        "65543": "AB891X",
+        "65546": "AB891X",
+        "65548": "AB891X",
+        "65550": "AB888X",
+        "65552": "AB891X",
+        "65555": "AB891X",
+        "65556": "AB891X",
+        "65557": "AB891X",
+        "65559": "AB888X",
+        "65560": "AB888X",
+        "65564": "AB891X",
+        "65565": "AB888X",
+        "65566": "AB888X",
+        "65567": "AB891X",
+        "65570": "AB891X",
+        "65571": "AB891X",
+        "65580": "AB888X",
+        "65582": "AB888X",
+        "65583": "AB891X",
+        "65584": "AB891X",
+        "65586": "AB888X",
+        "65588": "AB891X",
+        "65589": "AB891X",
+        "65590": "AB891X",
+        "65591": "AB891X",
+        "65601": "AB891X",
+        "65603": "AB891X",
+        "65604": "AB891X",
+        "65605": "AB891X",
+        "65606": "AB891X",
+        "65607": "AB891X",
+        "65608": "AB891X",
+        "65609": "AB891X",
+        "65610": "AB891X",
+        "65611": "AB891X",
+        "65612": "AB891X",
+        "65613": "AB891X",
+        "65614": "AB891X",
+        "65615": "AB891X",
+        "65616": "AB891X",
+        "65617": "AB891X",
+        "65618": "AB891X",
+        "65619": "AB891X",
+        "65620": "AB891X",
+        "65622": "AB891X",
+        "65623": "AB891X",
+        "65624": "AB891X",
+        "65625": "AB891X",
+        "65626": "AB891X",
+        "65627": "AB891X",
+        "65629": "AB891X",
+        "65630": "AB891X",
+        "65631": "AB891X",
+        "65632": "AB891X",
+        "65633": "AB891X",
+        "65634": "AB891X",
+        "65635": "AB891X",
+        "65636": "AB891X",
+        "65637": "AB891X",
+        "65638": "AB891X",
+        "65640": "AB891X",
+        "65641": "AB891X",
+        "65644": "AB891X",
+        "65645": "AB891X",
+        "65646": "AB891X",
+        "65647": "AB891X",
+        "65648": "AB891X",
+        "65649": "AB891X",
+        "65650": "AB891X",
+        "65652": "AB891X",
+        "65653": "AB891X",
+        "65654": "AB891X",
+        "65655": "AB891X",
+        "65656": "AB891X",
+        "65657": "AB891X",
+        "65658": "AB891X",
+        "65660": "AB891X",
+        "65661": "AB891X",
+        "65662": "AB891X",
+        "65663": "AB891X",
+        "65664": "AB891X",
+        "65666": "AB891X",
+        "65667": "AB891X",
+        "65668": "AB891X",
+        "65669": "AB891X",
+        "65672": "AB891X",
+        "65673": "AB891X",
+        "65674": "AB891X",
+        "65675": "AB891X",
+        "65676": "AB891X",
+        "65679": "AB891X",
+        "65680": "AB891X",
+        "65681": "AB891X",
+        "65682": "AB890X",
+        "65685": "AB891X",
+        "65686": "AB891X",
+        "65688": "AB891X",
+        "65689": "AB891X",
+        "65690": "AB891X",
+        "65692": "AB891X",
+        "65701": "AB891X",
+        "65702": "AB891X",
+        "65704": "AB891X",
+        "65705": "AB891X",
+        "65706": "AB891X",
+        "65707": "AB891X",
+        "65708": "AB891X",
+        "65710": "AB891X",
+        "65711": "AB891X",
+        "65712": "AB891X",
+        "65713": "AB891X",
+        "65714": "AB891X",
+        "65715": "AB891X",
+        "65717": "AB891X",
+        "65720": "AB891X",
+        "65721": "AB891X",
+        "65722": "AB891X",
+        "65723": "AB890X",
+        "65724": "AB891X",
+        "65725": "AB891X",
+        "65726": "AB891X",
+        "65727": "AB891X",
+        "65728": "AB891X",
+        "65729": "AB891X",
+        "65730": "AB890X",
+        "65731": "AB891X",
+        "65732": "AB891X",
+        "65733": "AB891X",
+        "65734": "AB891X",
+        "65735": "AB891X",
+        "65737": "AB891X",
+        "65738": "AB891X",
+        "65739": "AB891X",
+        "65740": "AB891X",
+        "65741": "AB891X",
+        "65742": "AB891X",
+        "65744": "AB891X",
+        "65745": "AB891X",
+        "65746": "AB891X",
+        "65747": "AB891X",
+        "65752": "AB891X",
+        "65753": "AB891X",
+        "65754": "AB891X",
+        "65755": "AB891X",
+        "65756": "AB891X",
+        "65757": "AB891X",
+        "65759": "AB891X",
+        "65760": "AB891X",
+        "65761": "AB891X",
+        "65762": "AB891X",
+        "65764": "AB891X",
+        "65765": "AB891X",
+        "65766": "AB891X",
+        "65767": "AB891X",
+        "65768": "AB891X",
+        "65769": "AB891X",
+        "65770": "AB891X",
+        "65771": "AB891X",
+        "65772": "AB891X",
+        "65773": "AB891X",
+        "65774": "AB891X",
+        "65775": "AB891X",
+        "65776": "AB891X",
+        "65777": "AB887X",
+        "65778": "AB891X",
+        "65779": "AB891X",
+        "65781": "AB891X",
+        "65783": "AB891X",
+        "65784": "AB891X",
+        "65785": "AB891X",
+        "65786": "AB891X",
+        "65787": "AB891X",
+        "65788": "AB891X",
+        "65789": "AB891X",
+        "65790": "AB891X",
+        "65791": "AB891X",
+        "65793": "AB891X",
+        "65801": "AB891X",
+        "65802": "AB891X",
+        "65803": "AB891X",
+        "65804": "AB891X",
+        "65805": "AB891X",
+        "65806": "AB891X",
+        "65807": "AB891X",
+        "65808": "AB891X",
+        "65809": "AB891X",
+        "65810": "AB891X",
+        "65814": "AB891X",
+        "65817": "AB891X",
+        "65842": "AB891X",
+        "65875": "AB891X",
+        "65890": "AB891X",
+        "65897": "AB891X",
+        "65898": "AB891X",
+        "65899": "AB891X",
+        "66002": "AB888X",
+        "66006": "AB888X",
+        "66007": "AB888X",
+        "66008": "AB888X",
+        "66010": "AB888X",
+        "66012": "AB888X",
+        "66013": "AB888X",
+        "66014": "AB888X",
+        "66015": "AB890X",
+        "66016": "AB888X",
+        "66017": "AB888X",
+        "66018": "AB888X",
+        "66019": "AB888X",
+        "66020": "AB888X",
+        "66021": "AB888X",
+        "66023": "AB888X",
+        "66024": "AB888X",
+        "66025": "AB888X",
+        "66026": "AB888X",
+        "66027": "AB888X",
+        "66030": "AB888X",
+        "66031": "AB888X",
+        "66032": "AB888X",
+        "66033": "AB888X",
+        "66035": "AB888X",
+        "66036": "AB888X",
+        "66039": "AB890X",
+        "66040": "AB888X",
+        "66041": "AB888X",
+        "66042": "AB888X",
+        "66043": "AB888X",
+        "66044": "AB888X",
+        "66045": "AB888X",
+        "66046": "AB888X",
+        "66047": "AB888X",
+        "66048": "AB888X",
+        "66049": "AB888X",
+        "66050": "AB888X",
+        "66051": "AB888X",
+        "66052": "AB888X",
+        "66053": "AB888X",
+        "66054": "AB888X",
+        "66056": "AB888X",
+        "66058": "AB888X",
+        "66060": "AB888X",
+        "66061": "AB888X",
+        "66062": "AB888X",
+        "66063": "AB888X",
+        "66064": "AB888X",
+        "66066": "AB888X",
+        "66067": "AB888X",
+        "66070": "AB888X",
+        "66071": "AB888X",
+        "66072": "AB888X",
+        "66073": "AB888X",
+        "66075": "AB888X",
+        "66076": "AB888X",
+        "66077": "AB888X",
+        "66078": "AB888X",
+        "66079": "AB888X",
+        "66080": "AB888X",
+        "66083": "AB888X",
+        "66085": "AB888X",
+        "66086": "AB888X",
+        "66087": "AB888X",
+        "66088": "AB888X",
+        "66090": "AB888X",
+        "66091": "AB890X",
+        "66092": "AB888X",
+        "66093": "AB890X",
+        "66094": "AB888X",
+        "66095": "AB888X",
+        "66097": "AB888X",
+        "66101": "AB888X",
+        "66102": "AB888X",
+        "66103": "AB888X",
+        "66104": "AB888X",
+        "66105": "AB888X",
+        "66106": "AB888X",
+        "66109": "AB888X",
+        "66110": "AB888X",
+        "66111": "AB888X",
+        "66112": "AB888X",
+        "66113": "AB888X",
+        "66115": "AB888X",
+        "66117": "AB888X",
+        "66118": "AB888X",
+        "66119": "AB888X",
+        "66160": "AB888X",
+        "66201": "AB888X",
+        "66202": "AB888X",
+        "66203": "AB888X",
+        "66204": "AB888X",
+        "66205": "AB888X",
+        "66206": "AB888X",
+        "66207": "AB888X",
+        "66208": "AB888X",
+        "66209": "AB888X",
+        "66210": "AB888X",
+        "66211": "AB888X",
+        "66212": "AB888X",
+        "66213": "AB888X",
+        "66214": "AB888X",
+        "66215": "AB888X",
+        "66216": "AB888X",
+        "66217": "AB888X",
+        "66218": "AB888X",
+        "66219": "AB888X",
+        "66220": "AB888X",
+        "66221": "AB888X",
+        "66222": "AB888X",
+        "66223": "AB888X",
+        "66224": "AB888X",
+        "66225": "AB888X",
+        "66226": "AB888X",
+        "66227": "AB888X",
+        "66250": "AB888X",
+        "66251": "AB888X",
+        "66276": "AB888X",
+        "66279": "AB888X",
+        "66282": "AB888X",
+        "66283": "AB888X",
+        "66285": "AB888X",
+        "66286": "AB888X",
+        "66401": "AB888X",
+        "66402": "AB888X",
+        "66403": "AB888X",
+        "66404": "AB888X",
+        "66406": "AB888X",
+        "66407": "AB888X",
+        "66408": "AB888X",
+        "66409": "AB888X",
+        "66411": "AB888X",
+        "66412": "AB888X",
+        "66413": "AB888X",
+        "66414": "AB888X",
+        "66415": "AB888X",
+        "66416": "AB888X",
+        "66417": "AB888X",
+        "66418": "AB888X",
+        "66419": "AB888X",
+        "66420": "AB888X",
+        "66422": "AB888X",
+        "66423": "AB888X",
+        "66424": "AB888X",
+        "66425": "AB888X",
+        "66426": "AB888X",
+        "66427": "AB888X",
+        "66428": "AB888X",
+        "66429": "AB888X",
+        "66431": "AB888X",
+        "66432": "AB888X",
+        "66434": "AB888X",
+        "66436": "AB888X",
+        "66438": "AB888X",
+        "66439": "AB888X",
+        "66440": "AB888X",
+        "66441": "AB888X",
+        "66442": "AB888X",
+        "66449": "AB888X",
+        "66451": "AB888X",
+        "66501": "AB888X",
+        "66502": "AB888X",
+        "66503": "AB888X",
+        "66505": "AB888X",
+        "66506": "AB888X",
+        "66507": "AB888X",
+        "66508": "AB888X",
+        "66509": "AB888X",
+        "66510": "AB888X",
+        "66512": "AB888X",
+        "66514": "AB888X",
+        "66515": "AB888X",
+        "66516": "AB888X",
+        "66517": "AB888X",
+        "66518": "AB888X",
+        "66520": "AB888X",
+        "66521": "AB888X",
+        "66522": "AB888X",
+        "66523": "AB888X",
+        "66524": "AB888X",
+        "66526": "AB888X",
+        "66527": "AB888X",
+        "66528": "AB888X",
+        "66531": "AB888X",
+        "66532": "AB888X",
+        "66533": "AB888X",
+        "66534": "AB888X",
+        "66535": "AB888X",
+        "66536": "AB888X",
+        "66537": "AB888X",
+        "66538": "AB888X",
+        "66539": "AB888X",
+        "66540": "AB888X",
+        "66541": "AB888X",
+        "66542": "AB888X",
+        "66543": "AB888X",
+        "66544": "AB888X",
+        "66546": "AB888X",
+        "66547": "AB888X",
+        "66548": "AB888X",
+        "66549": "AB888X",
+        "66550": "AB888X",
+        "66552": "AB888X",
+        "66554": "AB888X",
+        "66601": "AB888X",
+        "66603": "AB888X",
+        "66604": "AB888X",
+        "66605": "AB888X",
+        "66606": "AB888X",
+        "66607": "AB888X",
+        "66608": "AB888X",
+        "66609": "AB888X",
+        "66610": "AB888X",
+        "66611": "AB888X",
+        "66612": "AB888X",
+        "66614": "AB888X",
+        "66615": "AB888X",
+        "66616": "AB888X",
+        "66617": "AB888X",
+        "66618": "AB888X",
+        "66619": "AB888X",
+        "66620": "AB888X",
+        "66621": "AB888X",
+        "66622": "AB888X",
+        "66624": "AB888X",
+        "66625": "AB888X",
+        "66626": "AB888X",
+        "66628": "AB888X",
+        "66629": "AB888X",
+        "66636": "AB888X",
+        "66637": "AB888X",
+        "66642": "AB888X",
+        "66647": "AB888X",
+        "66652": "AB888X",
+        "66653": "AB888X",
+        "66667": "AB888X",
+        "66675": "AB888X",
+        "66683": "AB888X",
+        "66692": "AB888X",
+        "66699": "AB888X",
+        "66701": "AB888X",
+        "66710": "AB888X",
+        "66711": "AB888X",
+        "66712": "AB888X",
+        "66713": "AB888X",
+        "66714": "AB888X",
+        "66716": "AB888X",
+        "66717": "AB888X",
+        "66720": "AB888X",
+        "66724": "AB888X",
+        "66725": "AB888X",
+        "66728": "AB888X",
+        "66732": "AB888X",
+        "66733": "AB888X",
+        "66734": "AB888X",
+        "66735": "AB888X",
+        "66736": "AB888X",
+        "66738": "AB888X",
+        "66739": "AB888X",
+        "66740": "AB888X",
+        "66741": "AB888X",
+        "66742": "AB888X",
+        "66743": "AB888X",
+        "66746": "AB888X",
+        "66748": "AB888X",
+        "66749": "AB888X",
+        "66751": "AB888X",
+        "66753": "AB888X",
+        "66754": "AB888X",
+        "66755": "AB888X",
+        "66756": "AB888X",
+        "66757": "AB888X",
+        "66758": "AB888X",
+        "66759": "AB888X",
+        "66760": "AB888X",
+        "66761": "AB888X",
+        "66762": "AB888X",
+        "66763": "AB888X",
+        "66767": "AB888X",
+        "66769": "AB888X",
+        "66770": "AB888X",
+        "66771": "AB888X",
+        "66772": "AB888X",
+        "66773": "AB888X",
+        "66775": "AB888X",
+        "66776": "AB888X",
+        "66777": "AB888X",
+        "66778": "AB888X",
+        "66779": "AB888X",
+        "66780": "AB888X",
+        "66781": "AB888X",
+        "66782": "AB888X",
+        "66783": "AB888X",
+        "66801": "AB888X",
+        "66830": "AB888X",
+        "66833": "AB888X",
+        "66834": "AB888X",
+        "66835": "AB888X",
+        "66838": "AB888X",
+        "66839": "AB888X",
+        "66840": "AB888X",
+        "66842": "AB888X",
+        "66843": "AB888X",
+        "66845": "AB888X",
+        "66846": "AB888X",
+        "66849": "AB888X",
+        "66850": "AB888X",
+        "66851": "AB888X",
+        "66852": "AB888X",
+        "66853": "AB888X",
+        "66854": "AB888X",
+        "66855": "AB888X",
+        "66856": "AB888X",
+        "66857": "AB888X",
+        "66858": "AB888X",
+        "66859": "AB888X",
+        "66860": "AB888X",
+        "66861": "AB888X",
+        "66862": "AB888X",
+        "66863": "AB888X",
+        "66864": "AB888X",
+        "66865": "AB888X",
+        "66866": "AB888X",
+        "66868": "AB888X",
+        "66869": "AB888X",
+        "66870": "AB888X",
+        "66871": "AB888X",
+        "66872": "AB888X",
+        "66873": "AB888X",
+        "66901": "AB888X",
+        "66930": "AB889X",
+        "66932": "AB889X",
+        "66933": "AB889X",
+        "66935": "AB889X",
+        "66936": "AB889X",
+        "66937": "AB889X",
+        "66938": "AB888X",
+        "66939": "AB889X",
+        "66940": "AB889X",
+        "66941": "AB889X",
+        "66942": "AB889X",
+        "66943": "AB889X",
+        "66944": "AB889X",
+        "66945": "AB889X",
+        "66946": "AB889X",
+        "66948": "AB888X",
+        "66949": "AB889X",
+        "66951": "AB889X",
+        "66952": "AB889X",
+        "66953": "AB889X",
+        "66955": "AB889X",
+        "66956": "AB889X",
+        "66958": "AB889X",
+        "66959": "AB889X",
+        "66960": "AB889X",
+        "66961": "AB889X",
+        "66962": "AB889X",
+        "66963": "AB889X",
+        "66964": "AB889X",
+        "66966": "AB889X",
+        "66967": "AB889X",
+        "66968": "AB889X",
+        "66970": "AB889X",
+        "67001": "AB888X",
+        "67002": "AB888X",
+        "67003": "AB888X",
+        "67004": "AB888X",
+        "67005": "AB888X",
+        "67008": "AB888X",
+        "67009": "AB888X",
+        "67010": "AB888X",
+        "67012": "AB888X",
+        "67013": "AB888X",
+        "67016": "AB888X",
+        "67017": "AB888X",
+        "67018": "AB888X",
+        "67019": "AB888X",
+        "67020": "AB888X",
+        "67021": "AB888X",
+        "67022": "AB888X",
+        "67023": "AB888X",
+        "67024": "AB888X",
+        "67025": "AB888X",
+        "67026": "AB888X",
+        "67028": "AB888X",
+        "67029": "AB888X",
+        "67030": "AB888X",
+        "67031": "AB888X",
+        "67035": "AB888X",
+        "67036": "AB888X",
+        "67037": "AB888X",
+        "67038": "AB888X",
+        "67039": "AB888X",
+        "67041": "AB888X",
+        "67042": "AB888X",
+        "67045": "AB888X",
+        "67047": "AB888X",
+        "67049": "AB888X",
+        "67050": "AB888X",
+        "67051": "AB888X",
+        "67052": "AB888X",
+        "67053": "AB888X",
+        "67054": "AB888X",
+        "67055": "AB888X",
+        "67056": "AB888X",
+        "67057": "AB888X",
+        "67058": "AB888X",
+        "67059": "AB888X",
+        "67060": "AB888X",
+        "67061": "AB888X",
+        "67062": "AB888X",
+        "67063": "AB888X",
+        "67065": "AB888X",
+        "67066": "AB888X",
+        "67067": "AB888X",
+        "67068": "AB888X",
+        "67070": "AB888X",
+        "67071": "AB888X",
+        "67072": "AB888X",
+        "67073": "AB888X",
+        "67074": "AB888X",
+        "67101": "AB888X",
+        "67102": "AB888X",
+        "67103": "AB888X",
+        "67104": "AB888X",
+        "67105": "AB888X",
+        "67106": "AB888X",
+        "67107": "AB888X",
+        "67108": "AB888X",
+        "67109": "AB888X",
+        "67110": "AB888X",
+        "67111": "AB888X",
+        "67112": "AB888X",
+        "67114": "AB888X",
+        "67117": "AB888X",
+        "67118": "AB888X",
+        "67119": "AB888X",
+        "67120": "AB888X",
+        "67122": "AB888X",
+        "67123": "AB888X",
+        "67124": "AB888X",
+        "67127": "AB888X",
+        "67131": "AB888X",
+        "67132": "AB888X",
+        "67133": "AB888X",
+        "67134": "AB888X",
+        "67135": "AB888X",
+        "67137": "AB888X",
+        "67138": "AB888X",
+        "67140": "AB888X",
+        "67142": "AB888X",
+        "67143": "AB888X",
+        "67144": "AB888X",
+        "67146": "AB888X",
+        "67147": "AB888X",
+        "67149": "AB888X",
+        "67150": "AB888X",
+        "67151": "AB888X",
+        "67152": "AB888X",
+        "67154": "AB888X",
+        "67155": "AB888X",
+        "67156": "AB888X",
+        "67159": "AB888X",
+        "67201": "AB888X",
+        "67202": "AB888X",
+        "67203": "AB888X",
+        "67204": "AB888X",
+        "67205": "AB888X",
+        "67206": "AB888X",
+        "67207": "AB888X",
+        "67208": "AB888X",
+        "67209": "AB888X",
+        "67210": "AB888X",
+        "67211": "AB888X",
+        "67212": "AB888X",
+        "67213": "AB888X",
+        "67214": "AB888X",
+        "67215": "AB888X",
+        "67216": "AB888X",
+        "67217": "AB888X",
+        "67218": "AB888X",
+        "67219": "AB888X",
+        "67220": "AB888X",
+        "67221": "AB888X",
+        "67223": "AB888X",
+        "67226": "AB888X",
+        "67227": "AB888X",
+        "67228": "AB888X",
+        "67230": "AB888X",
+        "67231": "AB888X",
+        "67232": "AB888X",
+        "67235": "AB888X",
+        "67260": "AB888X",
+        "67275": "AB888X",
+        "67276": "AB888X",
+        "67277": "AB888X",
+        "67278": "AB888X",
+        "67301": "AB890X",
+        "67330": "AB888X",
+        "67332": "AB888X",
+        "67333": "AB890X",
+        "67334": "AB888X",
+        "67335": "AB890X",
+        "67336": "AB888X",
+        "67337": "AB890X",
+        "67340": "AB890X",
+        "67341": "AB888X",
+        "67342": "AB888X",
+        "67344": "AB890X",
+        "67345": "AB888X",
+        "67346": "AB888X",
+        "67347": "AB890X",
+        "67349": "AB888X",
+        "67351": "AB890X",
+        "67352": "AB888X",
+        "67353": "AB888X",
+        "67354": "AB888X",
+        "67355": "AB888X",
+        "67356": "AB888X",
+        "67357": "AB888X",
+        "67360": "AB888X",
+        "67361": "AB888X",
+        "67363": "AB890X",
+        "67364": "AB890X",
+        "67401": "AB888X",
+        "67402": "AB888X",
+        "67410": "AB888X",
+        "67416": "AB888X",
+        "67417": "AB888X",
+        "67418": "AB888X",
+        "67420": "AB888X",
+        "67422": "AB888X",
+        "67423": "AB888X",
+        "67425": "AB888X",
+        "67427": "AB888X",
+        "67428": "AB888X",
+        "67430": "AB888X",
+        "67431": "AB888X",
+        "67432": "AB888X",
+        "67436": "AB888X",
+        "67437": "AB888X",
+        "67438": "AB888X",
+        "67439": "AB888X",
+        "67441": "AB888X",
+        "67442": "AB888X",
+        "67443": "AB888X",
+        "67444": "AB888X",
+        "67445": "AB888X",
+        "67446": "AB888X",
+        "67447": "AB888X",
+        "67448": "AB888X",
+        "67449": "AB888X",
+        "67450": "AB888X",
+        "67451": "AB888X",
+        "67452": "AB888X",
+        "67454": "AB888X",
+        "67455": "AB888X",
+        "67456": "AB888X",
+        "67457": "AB888X",
+        "67458": "AB888X",
+        "67459": "AB888X",
+        "67460": "AB888X",
+        "67464": "AB888X",
+        "67466": "AB888X",
+        "67467": "AB888X",
+        "67468": "AB888X",
+        "67470": "AB888X",
+        "67473": "AB888X",
+        "67474": "AB888X",
+        "67475": "AB888X",
+        "67476": "AB888X",
+        "67478": "AB888X",
+        "67480": "AB888X",
+        "67481": "AB888X",
+        "67482": "AB888X",
+        "67483": "AB888X",
+        "67484": "AB888X",
+        "67485": "AB888X",
+        "67487": "AB888X",
+        "67490": "AB888X",
+        "67491": "AB888X",
+        "67492": "AB888X",
+        "67501": "AB888X",
+        "67502": "AB888X",
+        "67504": "AB888X",
+        "67505": "AB888X",
+        "67510": "AB888X",
+        "67511": "AB888X",
+        "67512": "AB888X",
+        "67513": "AB888X",
+        "67514": "AB888X",
+        "67515": "AB888X",
+        "67516": "AB888X",
+        "67518": "AB888X",
+        "67519": "AB888X",
+        "67520": "AB888X",
+        "67521": "AB888X",
+        "67522": "AB888X",
+        "67523": "AB888X",
+        "67524": "AB888X",
+        "67525": "AB888X",
+        "67526": "AB888X",
+        "67529": "AB888X",
+        "67530": "AB888X",
+        "67543": "AB888X",
+        "67544": "AB888X",
+        "67545": "AB888X",
+        "67546": "AB888X",
+        "67547": "AB888X",
+        "67548": "AB888X",
+        "67550": "AB888X",
+        "67552": "AB888X",
+        "67553": "AB888X",
+        "67554": "AB888X",
+        "67556": "AB888X",
+        "67557": "AB888X",
+        "67559": "AB888X",
+        "67560": "AB888X",
+        "67561": "AB888X",
+        "67563": "AB888X",
+        "67564": "AB888X",
+        "67565": "AB888X",
+        "67566": "AB888X",
+        "67567": "AB888X",
+        "67568": "AB888X",
+        "67570": "AB888X",
+        "67572": "AB888X",
+        "67573": "AB888X",
+        "67574": "AB888X",
+        "67575": "AB888X",
+        "67576": "AB888X",
+        "67578": "AB888X",
+        "67579": "AB888X",
+        "67581": "AB888X",
+        "67583": "AB888X",
+        "67584": "AB888X",
+        "67585": "AB888X",
+        "67601": "AB888X",
+        "67621": "AB888X",
+        "67622": "AB888X",
+        "67623": "AB888X",
+        "67625": "AB888X",
+        "67626": "AB888X",
+        "67627": "AB888X",
+        "67628": "AB889X",
+        "67629": "AB888X",
+        "67631": "AB888X",
+        "67632": "AB888X",
+        "67634": "AB888X",
+        "67635": "AB888X",
+        "67637": "AB888X",
+        "67638": "AB889X",
+        "67639": "AB888X",
+        "67640": "AB888X",
+        "67642": "AB888X",
+        "67643": "AB888X",
+        "67644": "AB888X",
+        "67645": "AB888X",
+        "67646": "AB888X",
+        "67647": "AB888X",
+        "67648": "AB888X",
+        "67649": "AB888X",
+        "67650": "AB888X",
+        "67651": "AB888X",
+        "67653": "AB888X",
+        "67654": "AB888X",
+        "67656": "AB888X",
+        "67657": "AB888X",
+        "67658": "AB888X",
+        "67659": "AB888X",
+        "67660": "AB888X",
+        "67661": "AB888X",
+        "67663": "AB888X",
+        "67664": "AB888X",
+        "67665": "AB888X",
+        "67667": "AB888X",
+        "67669": "AB888X",
+        "67671": "AB888X",
+        "67672": "AB888X",
+        "67673": "AB888X",
+        "67674": "AB888X",
+        "67675": "AB888X",
+        "67701": "AB888X",
+        "67730": "AB888X",
+        "67731": "AB888X",
+        "67732": "AB888X",
+        "67733": "AB888X",
+        "67734": "AB888X",
+        "67735": "AB888X",
+        "67736": "AB888X",
+        "67737": "AB888X",
+        "67738": "AB888X",
+        "67739": "AB888X",
+        "67740": "AB888X",
+        "67741": "AB888X",
+        "67743": "AB888X",
+        "67744": "AB888X",
+        "67745": "AB888X",
+        "67747": "AB888X",
+        "67748": "AB888X",
+        "67749": "AB888X",
+        "67751": "AB888X",
+        "67752": "AB888X",
+        "67753": "AB888X",
+        "67756": "AB888X",
+        "67757": "AB888X",
+        "67758": "AB888X",
+        "67761": "AB888X",
+        "67762": "AB888X",
+        "67764": "AB888X",
+        "67801": "AB888X",
+        "67831": "AB888X",
+        "67834": "AB888X",
+        "67835": "AB888X",
+        "67836": "AB888X",
+        "67837": "AB888X",
+        "67838": "AB888X",
+        "67839": "AB888X",
+        "67840": "AB888X",
+        "67841": "AB888X",
+        "67842": "AB888X",
+        "67843": "AB888X",
+        "67844": "AB888X",
+        "67846": "AB888X",
+        "67849": "AB888X",
+        "67850": "AB888X",
+        "67851": "AB888X",
+        "67853": "AB888X",
+        "67854": "AB888X",
+        "67855": "AB888X",
+        "67857": "AB888X",
+        "67859": "AB888X",
+        "67860": "AB888X",
+        "67861": "AB888X",
+        "67862": "AB888X",
+        "67863": "AB888X",
+        "67864": "AB888X",
+        "67865": "AB888X",
+        "67867": "AB888X",
+        "67868": "AB888X",
+        "67869": "AB888X",
+        "67870": "AB888X",
+        "67871": "AB888X",
+        "67876": "AB888X",
+        "67877": "AB888X",
+        "67878": "AB888X",
+        "67879": "AB888X",
+        "67880": "AB888X",
+        "67882": "AB888X",
+        "67901": "AB888X",
+        "67905": "AB888X",
+        "67950": "AB888X",
+        "67951": "AB888X",
+        "67952": "AB888X",
+        "67953": "AB888X",
+        "67954": "AB888X",
+        "68001": "AB889X",
+        "68002": "AB889X",
+        "68003": "AB889X",
+        "68004": "AB891X",
+        "68005": "AB889X",
+        "68007": "AB889X",
+        "68008": "AB889X",
+        "68009": "AB889X",
+        "68010": "AB889X",
+        "68014": "AB889X",
+        "68015": "AB889X",
+        "68016": "AB889X",
+        "68017": "AB889X",
+        "68018": "AB889X",
+        "68019": "AB891X",
+        "68020": "AB891X",
+        "68022": "AB889X",
+        "68023": "AB889X",
+        "68025": "AB889X",
+        "68026": "AB889X",
+        "68028": "AB889X",
+        "68029": "AB889X",
+        "68030": "AB891X",
+        "68031": "AB889X",
+        "68033": "AB889X",
+        "68034": "AB889X",
+        "68036": "AB889X",
+        "68037": "AB889X",
+        "68038": "AB891X",
+        "68039": "AB889X",
+        "68040": "AB889X",
+        "68041": "AB889X",
+        "68042": "AB889X",
+        "68044": "AB889X",
+        "68045": "AB891X",
+        "68046": "AB889X",
+        "68047": "AB891X",
+        "68048": "AB889X",
+        "68050": "AB889X",
+        "68055": "AB889X",
+        "68056": "AB889X",
+        "68057": "AB889X",
+        "68058": "AB889X",
+        "68059": "AB889X",
+        "68061": "AB889X",
+        "68062": "AB889X",
+        "68063": "AB889X",
+        "68064": "AB889X",
+        "68065": "AB889X",
+        "68066": "AB889X",
+        "68067": "AB891X",
+        "68068": "AB889X",
+        "68069": "AB889X",
+        "68070": "AB889X",
+        "68071": "AB891X",
+        "68072": "AB889X",
+        "68073": "AB889X",
+        "68101": "AB889X",
+        "68102": "AB889X",
+        "68103": "AB889X",
+        "68104": "AB889X",
+        "68105": "AB889X",
+        "68106": "AB889X",
+        "68107": "AB889X",
+        "68108": "AB889X",
+        "68109": "AB889X",
+        "68110": "AB889X",
+        "68111": "AB889X",
+        "68112": "AB889X",
+        "68113": "AB889X",
+        "68114": "AB889X",
+        "68116": "AB889X",
+        "68117": "AB889X",
+        "68118": "AB889X",
+        "68119": "AB889X",
+        "68120": "AB889X",
+        "68122": "AB889X",
+        "68123": "AB889X",
+        "68124": "AB889X",
+        "68127": "AB889X",
+        "68128": "AB889X",
+        "68130": "AB889X",
+        "68131": "AB889X",
+        "68132": "AB889X",
+        "68133": "AB889X",
+        "68134": "AB889X",
+        "68135": "AB889X",
+        "68136": "AB889X",
+        "68137": "AB889X",
+        "68138": "AB889X",
+        "68139": "AB889X",
+        "68142": "AB889X",
+        "68144": "AB889X",
+        "68145": "AB889X",
+        "68147": "AB889X",
+        "68152": "AB889X",
+        "68154": "AB889X",
+        "68155": "AB889X",
+        "68157": "AB889X",
+        "68164": "AB889X",
+        "68172": "AB889X",
+        "68175": "AB889X",
+        "68176": "AB889X",
+        "68178": "AB889X",
+        "68179": "AB889X",
+        "68180": "AB889X",
+        "68181": "AB889X",
+        "68182": "AB889X",
+        "68183": "AB889X",
+        "68197": "AB889X",
+        "68198": "AB889X",
+        "68301": "AB889X",
+        "68303": "AB889X",
+        "68304": "AB889X",
+        "68305": "AB889X",
+        "68307": "AB889X",
+        "68309": "AB889X",
+        "68310": "AB889X",
+        "68313": "AB889X",
+        "68314": "AB889X",
+        "68315": "AB889X",
+        "68316": "AB889X",
+        "68317": "AB889X",
+        "68318": "AB889X",
+        "68319": "AB889X",
+        "68320": "AB889X",
+        "68321": "AB889X",
+        "68322": "AB889X",
+        "68323": "AB889X",
+        "68324": "AB889X",
+        "68325": "AB889X",
+        "68326": "AB889X",
+        "68327": "AB889X",
+        "68328": "AB889X",
+        "68329": "AB889X",
+        "68330": "AB889X",
+        "68331": "AB889X",
+        "68332": "AB889X",
+        "68333": "AB889X",
+        "68335": "AB889X",
+        "68336": "AB889X",
+        "68337": "AB889X",
+        "68338": "AB889X",
+        "68339": "AB889X",
+        "68340": "AB889X",
+        "68341": "AB889X",
+        "68342": "AB889X",
+        "68343": "AB889X",
+        "68344": "AB889X",
+        "68345": "AB889X",
+        "68346": "AB889X",
+        "68347": "AB889X",
+        "68348": "AB889X",
+        "68349": "AB889X",
+        "68350": "AB889X",
+        "68351": "AB889X",
+        "68352": "AB889X",
+        "68354": "AB889X",
+        "68355": "AB889X",
+        "68357": "AB889X",
+        "68358": "AB889X",
+        "68359": "AB889X",
+        "68360": "AB889X",
+        "68361": "AB889X",
+        "68362": "AB889X",
+        "68364": "AB889X",
+        "68365": "AB889X",
+        "68366": "AB889X",
+        "68367": "AB889X",
+        "68368": "AB889X",
+        "68370": "AB889X",
+        "68371": "AB889X",
+        "68372": "AB889X",
+        "68375": "AB889X",
+        "68376": "AB889X",
+        "68377": "AB889X",
+        "68378": "AB889X",
+        "68379": "AB889X",
+        "68380": "AB889X",
+        "68381": "AB889X",
+        "68382": "AB889X",
+        "68401": "AB889X",
+        "68402": "AB889X",
+        "68403": "AB889X",
+        "68404": "AB889X",
+        "68405": "AB889X",
+        "68406": "AB889X",
+        "68407": "AB889X",
+        "68409": "AB889X",
+        "68410": "AB889X",
+        "68413": "AB889X",
+        "68414": "AB889X",
+        "68415": "AB889X",
+        "68416": "AB889X",
+        "68417": "AB889X",
+        "68418": "AB889X",
+        "68419": "AB889X",
+        "68420": "AB889X",
+        "68421": "AB889X",
+        "68422": "AB889X",
+        "68423": "AB889X",
+        "68424": "AB889X",
+        "68428": "AB889X",
+        "68429": "AB889X",
+        "68430": "AB889X",
+        "68431": "AB889X",
+        "68433": "AB889X",
+        "68434": "AB889X",
+        "68436": "AB889X",
+        "68437": "AB889X",
+        "68438": "AB889X",
+        "68439": "AB889X",
+        "68440": "AB889X",
+        "68441": "AB889X",
+        "68442": "AB889X",
+        "68443": "AB889X",
+        "68444": "AB889X",
+        "68445": "AB889X",
+        "68446": "AB889X",
+        "68447": "AB889X",
+        "68448": "AB889X",
+        "68450": "AB889X",
+        "68452": "AB889X",
+        "68453": "AB889X",
+        "68454": "AB889X",
+        "68455": "AB889X",
+        "68456": "AB889X",
+        "68457": "AB889X",
+        "68458": "AB889X",
+        "68460": "AB889X",
+        "68461": "AB889X",
+        "68462": "AB889X",
+        "68463": "AB889X",
+        "68464": "AB889X",
+        "68465": "AB889X",
+        "68466": "AB889X",
+        "68467": "AB889X",
+        "68501": "AB889X",
+        "68502": "AB889X",
+        "68503": "AB889X",
+        "68504": "AB889X",
+        "68505": "AB889X",
+        "68506": "AB889X",
+        "68507": "AB889X",
+        "68508": "AB889X",
+        "68509": "AB889X",
+        "68510": "AB889X",
+        "68512": "AB889X",
+        "68514": "AB889X",
+        "68516": "AB889X",
+        "68517": "AB889X",
+        "68520": "AB889X",
+        "68521": "AB889X",
+        "68522": "AB889X",
+        "68523": "AB889X",
+        "68524": "AB889X",
+        "68526": "AB889X",
+        "68527": "AB889X",
+        "68528": "AB889X",
+        "68529": "AB889X",
+        "68531": "AB889X",
+        "68532": "AB889X",
+        "68542": "AB889X",
+        "68583": "AB889X",
+        "68588": "AB889X",
+        "68601": "AB889X",
+        "68602": "AB889X",
+        "68620": "AB889X",
+        "68621": "AB889X",
+        "68622": "AB889X",
+        "68623": "AB889X",
+        "68624": "AB889X",
+        "68626": "AB889X",
+        "68627": "AB889X",
+        "68628": "AB889X",
+        "68629": "AB889X",
+        "68631": "AB889X",
+        "68632": "AB889X",
+        "68633": "AB889X",
+        "68634": "AB889X",
+        "68635": "AB889X",
+        "68636": "AB889X",
+        "68637": "AB889X",
+        "68638": "AB889X",
+        "68640": "AB889X",
+        "68641": "AB889X",
+        "68642": "AB889X",
+        "68643": "AB889X",
+        "68644": "AB889X",
+        "68647": "AB889X",
+        "68648": "AB889X",
+        "68649": "AB889X",
+        "68651": "AB889X",
+        "68652": "AB889X",
+        "68653": "AB889X",
+        "68654": "AB889X",
+        "68655": "AB889X",
+        "68658": "AB889X",
+        "68659": "AB889X",
+        "68660": "AB889X",
+        "68661": "AB889X",
+        "68662": "AB889X",
+        "68663": "AB889X",
+        "68664": "AB889X",
+        "68665": "AB889X",
+        "68666": "AB889X",
+        "68667": "AB889X",
+        "68669": "AB889X",
+        "68701": "AB891X",
+        "68702": "AB889X",
+        "68710": "AB891X",
+        "68711": "AB889X",
+        "68713": "AB889X",
+        "68714": "AB889X",
+        "68715": "AB889X",
+        "68716": "AB889X",
+        "68717": "AB889X",
+        "68718": "AB889X",
+        "68719": "AB889X",
+        "68720": "AB889X",
+        "68722": "AB889X",
+        "68723": "AB889X",
+        "68724": "AB889X",
+        "68725": "AB889X",
+        "68726": "AB889X",
+        "68727": "AB889X",
+        "68728": "AB889X",
+        "68729": "AB889X",
+        "68730": "AB889X",
+        "68731": "AB891X",
+        "68732": "AB889X",
+        "68733": "AB891X",
+        "68734": "AB889X",
+        "68735": "AB889X",
+        "68736": "AB889X",
+        "68738": "AB889X",
+        "68739": "AB891X",
+        "68740": "AB889X",
+        "68741": "AB891X",
+        "68742": "AB889X",
+        "68743": "AB891X",
+        "68745": "AB891X",
+        "68746": "AB889X",
+        "68747": "AB889X",
+        "68748": "AB889X",
+        "68749": "AB889X",
+        "68751": "AB889X",
+        "68752": "AB889X",
+        "68753": "AB889X",
+        "68755": "AB889X",
+        "68756": "AB889X",
+        "68757": "AB891X",
+        "68758": "AB889X",
+        "68759": "AB889X",
+        "68760": "AB889X",
+        "68761": "AB889X",
+        "68763": "AB889X",
+        "68764": "AB889X",
+        "68765": "AB889X",
+        "68766": "AB889X",
+        "68767": "AB889X",
+        "68768": "AB889X",
+        "68769": "AB889X",
+        "68770": "AB891X",
+        "68771": "AB889X",
+        "68773": "AB889X",
+        "68774": "AB889X",
+        "68776": "AB891X",
+        "68777": "AB889X",
+        "68778": "AB889X",
+        "68779": "AB889X",
+        "68780": "AB889X",
+        "68781": "AB889X",
+        "68783": "AB889X",
+        "68784": "AB891X",
+        "68785": "AB889X",
+        "68786": "AB889X",
+        "68787": "AB891X",
+        "68788": "AB889X",
+        "68789": "AB889X",
+        "68790": "AB889X",
+        "68791": "AB889X",
+        "68792": "AB889X",
+        "68801": "AB889X",
+        "68802": "AB889X",
+        "68803": "AB889X",
+        "68810": "AB889X",
+        "68812": "AB889X",
+        "68813": "AB889X",
+        "68814": "AB889X",
+        "68815": "AB889X",
+        "68816": "AB889X",
+        "68817": "AB889X",
+        "68818": "AB889X",
+        "68820": "AB889X",
+        "68821": "AB889X",
+        "68822": "AB889X",
+        "68823": "AB889X",
+        "68824": "AB889X",
+        "68825": "AB889X",
+        "68826": "AB889X",
+        "68827": "AB889X",
+        "68828": "AB889X",
+        "68831": "AB889X",
+        "68832": "AB889X",
+        "68833": "AB889X",
+        "68834": "AB889X",
+        "68835": "AB889X",
+        "68836": "AB889X",
+        "68837": "AB889X",
+        "68838": "AB889X",
+        "68840": "AB889X",
+        "68841": "AB889X",
+        "68842": "AB889X",
+        "68843": "AB889X",
+        "68844": "AB889X",
+        "68845": "AB889X",
+        "68846": "AB889X",
+        "68847": "AB889X",
+        "68848": "AB889X",
+        "68849": "AB889X",
+        "68850": "AB889X",
+        "68852": "AB889X",
+        "68853": "AB889X",
+        "68854": "AB889X",
+        "68855": "AB889X",
+        "68856": "AB889X",
+        "68858": "AB889X",
+        "68859": "AB889X",
+        "68860": "AB889X",
+        "68861": "AB889X",
+        "68862": "AB889X",
+        "68863": "AB889X",
+        "68864": "AB889X",
+        "68865": "AB889X",
+        "68866": "AB889X",
+        "68869": "AB889X",
+        "68870": "AB889X",
+        "68871": "AB889X",
+        "68872": "AB889X",
+        "68873": "AB889X",
+        "68874": "AB889X",
+        "68875": "AB889X",
+        "68876": "AB889X",
+        "68878": "AB889X",
+        "68879": "AB889X",
+        "68881": "AB889X",
+        "68882": "AB889X",
+        "68883": "AB889X",
+        "68901": "AB889X",
+        "68902": "AB889X",
+        "68920": "AB889X",
+        "68922": "AB889X",
+        "68923": "AB889X",
+        "68924": "AB889X",
+        "68925": "AB889X",
+        "68926": "AB889X",
+        "68927": "AB889X",
+        "68928": "AB889X",
+        "68929": "AB889X",
+        "68930": "AB889X",
+        "68932": "AB889X",
+        "68933": "AB889X",
+        "68934": "AB889X",
+        "68935": "AB889X",
+        "68936": "AB889X",
+        "68937": "AB889X",
+        "68938": "AB889X",
+        "68939": "AB889X",
+        "68940": "AB889X",
+        "68941": "AB889X",
+        "68942": "AB889X",
+        "68943": "AB889X",
+        "68944": "AB889X",
+        "68945": "AB889X",
+        "68946": "AB889X",
+        "68947": "AB889X",
+        "68948": "AB889X",
+        "68949": "AB889X",
+        "68950": "AB889X",
+        "68952": "AB889X",
+        "68954": "AB889X",
+        "68955": "AB889X",
+        "68956": "AB889X",
+        "68957": "AB889X",
+        "68958": "AB889X",
+        "68959": "AB889X",
+        "68960": "AB889X",
+        "68961": "AB889X",
+        "68964": "AB889X",
+        "68966": "AB889X",
+        "68967": "AB889X",
+        "68969": "AB889X",
+        "68970": "AB889X",
+        "68971": "AB889X",
+        "68972": "AB889X",
+        "68973": "AB889X",
+        "68974": "AB889X",
+        "68975": "AB889X",
+        "68976": "AB889X",
+        "68977": "AB889X",
+        "68978": "AB889X",
+        "68979": "AB889X",
+        "68980": "AB889X",
+        "68981": "AB889X",
+        "68982": "AB889X",
+        "69001": "AB889X",
+        "69020": "AB889X",
+        "69021": "AB889X",
+        "69022": "AB889X",
+        "69023": "AB889X",
+        "69024": "AB889X",
+        "69025": "AB889X",
+        "69026": "AB889X",
+        "69027": "AB889X",
+        "69028": "AB889X",
+        "69029": "AB889X",
+        "69030": "AB889X",
+        "69032": "AB889X",
+        "69033": "AB889X",
+        "69034": "AB889X",
+        "69036": "AB889X",
+        "69037": "AB889X",
+        "69038": "AB889X",
+        "69039": "AB889X",
+        "69040": "AB889X",
+        "69041": "AB889X",
+        "69042": "AB889X",
+        "69043": "AB889X",
+        "69044": "AB889X",
+        "69045": "AB889X",
+        "69046": "AB889X",
+        "69101": "AB889X",
+        "69103": "AB889X",
+        "69120": "AB889X",
+        "69121": "AB889X",
+        "69122": "AB889X",
+        "69123": "AB889X",
+        "69125": "AB889X",
+        "69127": "AB889X",
+        "69128": "AB889X",
+        "69129": "AB889X",
+        "69130": "AB889X",
+        "69131": "AB887X",
+        "69132": "AB889X",
+        "69133": "AB887X",
+        "69134": "AB889X",
+        "69135": "AB889X",
+        "69138": "AB889X",
+        "69140": "AB889X",
+        "69141": "AB887X",
+        "69142": "AB889X",
+        "69143": "AB889X",
+        "69144": "AB889X",
+        "69145": "AB887X",
+        "69146": "AB889X",
+        "69147": "AB889X",
+        "69148": "AB889X",
+        "69149": "AB887X",
+        "69150": "AB889X",
+        "69151": "AB889X",
+        "69152": "AB889X",
+        "69153": "AB889X",
+        "69154": "AB889X",
+        "69155": "AB889X",
+        "69156": "AB887X",
+        "69157": "AB889X",
+        "69160": "AB889X",
+        "69161": "AB889X",
+        "69162": "AB887X",
+        "69163": "AB889X",
+        "69165": "AB889X",
+        "69166": "AB889X",
+        "69167": "AB889X",
+        "69168": "AB889X",
+        "69169": "AB889X",
+        "69170": "AB889X",
+        "69171": "AB889X",
+        "69190": "AB889X",
+        "69201": "AB889X",
+        "69210": "AB889X",
+        "69211": "AB889X",
+        "69212": "AB889X",
+        "69214": "AB889X",
+        "69216": "AB889X",
+        "69217": "AB889X",
+        "69218": "AB889X",
+        "69219": "AB889X",
+        "69220": "AB889X",
+        "69221": "AB889X",
+        "69301": "AB889X",
+        "69331": "AB889X",
+        "69333": "AB889X",
+        "69334": "AB889X",
+        "69335": "AB889X",
+        "69336": "AB889X",
+        "69337": "AB887X",
+        "69339": "AB887X",
+        "69340": "AB889X",
+        "69341": "AB889X",
+        "69343": "AB887X",
+        "69345": "AB889X",
+        "69346": "AB887X",
+        "69347": "AB887X",
+        "69348": "AB887X",
+        "69350": "AB889X",
+        "69351": "AB889X",
+        "69352": "AB889X",
+        "69353": "AB889X",
+        "69354": "AB887X",
+        "69355": "AB889X",
+        "69356": "AB889X",
+        "69357": "AB889X",
+        "69358": "AB889X",
+        "69360": "AB887X",
+        "69361": "AB887X",
+        "69363": "AB889X",
+        "69365": "AB889X",
+        "69366": "AB889X",
+        "69367": "AB887X",
+        "69999": "AB889X",
+        "70001": "AB889X",
+        "70002": "AB889X",
+        "70003": "AB889X",
+        "70004": "AB889X",
+        "70005": "AB889X",
+        "70006": "AB889X",
+        "70009": "AB889X",
+        "70010": "AB889X",
+        "70011": "AB889X",
+        "70030": "AB889X",
+        "70031": "AB889X",
+        "70032": "AB889X",
+        "70033": "AB889X",
+        "70036": "AB889X",
+        "70037": "AB889X",
+        "70038": "AB889X",
+        "70039": "AB889X",
+        "70040": "AB889X",
+        "70041": "AB889X",
+        "70043": "AB889X",
+        "70044": "AB889X",
+        "70047": "AB889X",
+        "70049": "AB889X",
+        "70050": "AB889X",
+        "70051": "AB889X",
+        "70052": "AB889X",
+        "70053": "AB889X",
+        "70054": "AB889X",
+        "70055": "AB889X",
+        "70056": "AB889X",
+        "70057": "AB889X",
+        "70058": "AB889X",
+        "70059": "AB889X",
+        "70060": "AB889X",
+        "70062": "AB889X",
+        "70063": "AB889X",
+        "70064": "AB889X",
+        "70065": "AB889X",
+        "70067": "AB889X",
+        "70068": "AB889X",
+        "70069": "AB889X",
+        "70070": "AB889X",
+        "70071": "AB889X",
+        "70072": "AB889X",
+        "70073": "AB889X",
+        "70075": "AB889X",
+        "70076": "AB889X",
+        "70078": "AB889X",
+        "70079": "AB889X",
+        "70080": "AB889X",
+        "70081": "AB889X",
+        "70082": "AB889X",
+        "70083": "AB889X",
+        "70084": "AB889X",
+        "70085": "AB889X",
+        "70086": "AB889X",
+        "70087": "AB889X",
+        "70090": "AB889X",
+        "70091": "AB889X",
+        "70092": "AB889X",
+        "70093": "AB889X",
+        "70094": "AB889X",
+        "70096": "AB889X",
+        "70097": "AB889X",
+        "70112": "AB889X",
+        "70113": "AB889X",
+        "70114": "AB889X",
+        "70115": "AB889X",
+        "70116": "AB889X",
+        "70117": "AB889X",
+        "70118": "AB889X",
+        "70119": "AB889X",
+        "70121": "AB889X",
+        "70122": "AB889X",
+        "70123": "AB889X",
+        "70124": "AB889X",
+        "70125": "AB889X",
+        "70126": "AB889X",
+        "70127": "AB889X",
+        "70128": "AB889X",
+        "70129": "AB889X",
+        "70130": "AB889X",
+        "70131": "AB889X",
+        "70139": "AB889X",
+        "70140": "AB889X",
+        "70141": "AB889X",
+        "70142": "AB889X",
+        "70143": "AB889X",
+        "70145": "AB889X",
+        "70146": "AB889X",
+        "70148": "AB889X",
+        "70149": "AB889X",
+        "70150": "AB889X",
+        "70151": "AB889X",
+        "70152": "AB889X",
+        "70153": "AB889X",
+        "70154": "AB889X",
+        "70156": "AB889X",
+        "70157": "AB889X",
+        "70158": "AB889X",
+        "70159": "AB889X",
+        "70160": "AB889X",
+        "70161": "AB889X",
+        "70162": "AB889X",
+        "70163": "AB889X",
+        "70164": "AB889X",
+        "70165": "AB889X",
+        "70166": "AB889X",
+        "70167": "AB889X",
+        "70170": "AB889X",
+        "70172": "AB889X",
+        "70174": "AB889X",
+        "70175": "AB889X",
+        "70176": "AB889X",
+        "70177": "AB889X",
+        "70178": "AB889X",
+        "70179": "AB889X",
+        "70181": "AB889X",
+        "70182": "AB889X",
+        "70183": "AB889X",
+        "70184": "AB889X",
+        "70185": "AB889X",
+        "70186": "AB889X",
+        "70187": "AB889X",
+        "70189": "AB889X",
+        "70190": "AB889X",
+        "70195": "AB889X",
+        "70301": "AB889X",
+        "70302": "AB889X",
+        "70310": "AB889X",
+        "70339": "AB889X",
+        "70340": "AB889X",
+        "70341": "AB889X",
+        "70342": "AB889X",
+        "70343": "AB889X",
+        "70344": "AB889X",
+        "70345": "AB889X",
+        "70346": "AB889X",
+        "70352": "AB889X",
+        "70353": "AB889X",
+        "70354": "AB889X",
+        "70355": "AB889X",
+        "70356": "AB889X",
+        "70357": "AB889X",
+        "70358": "AB889X",
+        "70359": "AB889X",
+        "70360": "AB889X",
+        "70361": "AB889X",
+        "70363": "AB889X",
+        "70364": "AB889X",
+        "70371": "AB889X",
+        "70372": "AB889X",
+        "70373": "AB889X",
+        "70374": "AB889X",
+        "70375": "AB889X",
+        "70377": "AB889X",
+        "70380": "AB889X",
+        "70381": "AB889X",
+        "70390": "AB889X",
+        "70391": "AB889X",
+        "70392": "AB889X",
+        "70393": "AB889X",
+        "70394": "AB889X",
+        "70395": "AB889X",
+        "70397": "AB889X",
+        "70401": "AB889X",
+        "70402": "AB889X",
+        "70403": "AB889X",
+        "70404": "AB889X",
+        "70420": "AB889X",
+        "70421": "AB889X",
+        "70422": "AB889X",
+        "70426": "AB889X",
+        "70427": "AB889X",
+        "70429": "AB889X",
+        "70431": "AB889X",
+        "70433": "AB889X",
+        "70434": "AB889X",
+        "70435": "AB889X",
+        "70436": "AB889X",
+        "70437": "AB889X",
+        "70438": "AB889X",
+        "70441": "AB889X",
+        "70442": "AB889X",
+        "70443": "AB889X",
+        "70444": "AB889X",
+        "70445": "AB889X",
+        "70446": "AB889X",
+        "70447": "AB889X",
+        "70448": "AB889X",
+        "70449": "AB889X",
+        "70450": "AB889X",
+        "70451": "AB889X",
+        "70452": "AB889X",
+        "70453": "AB889X",
+        "70454": "AB889X",
+        "70455": "AB889X",
+        "70456": "AB889X",
+        "70457": "AB889X",
+        "70458": "AB889X",
+        "70459": "AB889X",
+        "70460": "AB889X",
+        "70461": "AB889X",
+        "70462": "AB889X",
+        "70463": "AB889X",
+        "70464": "AB889X",
+        "70465": "AB889X",
+        "70466": "AB889X",
+        "70467": "AB889X",
+        "70469": "AB889X",
+        "70470": "AB889X",
+        "70471": "AB889X",
+        "70501": "AB887X",
+        "70502": "AB887X",
+        "70503": "AB887X",
+        "70504": "AB887X",
+        "70505": "AB887X",
+        "70506": "AB887X",
+        "70507": "AB887X",
+        "70508": "AB887X",
+        "70509": "AB887X",
+        "70510": "AB887X",
+        "70511": "AB887X",
+        "70512": "AB887X",
+        "70513": "AB887X",
+        "70514": "AB887X",
+        "70515": "AB887X",
+        "70516": "AB887X",
+        "70517": "AB887X",
+        "70518": "AB887X",
+        "70519": "AB887X",
+        "70520": "AB887X",
+        "70521": "AB887X",
+        "70522": "AB887X",
+        "70523": "AB887X",
+        "70524": "AB887X",
+        "70525": "AB887X",
+        "70526": "AB887X",
+        "70527": "AB887X",
+        "70528": "AB887X",
+        "70529": "AB887X",
+        "70531": "AB887X",
+        "70532": "AB887X",
+        "70533": "AB887X",
+        "70534": "AB887X",
+        "70535": "AB887X",
+        "70537": "AB887X",
+        "70538": "AB887X",
+        "70540": "AB887X",
+        "70541": "AB887X",
+        "70542": "AB887X",
+        "70543": "AB887X",
+        "70544": "AB887X",
+        "70546": "AB887X",
+        "70548": "AB887X",
+        "70549": "AB887X",
+        "70550": "AB887X",
+        "70551": "AB887X",
+        "70552": "AB887X",
+        "70554": "AB887X",
+        "70555": "AB887X",
+        "70556": "AB887X",
+        "70558": "AB887X",
+        "70559": "AB887X",
+        "70560": "AB887X",
+        "70562": "AB887X",
+        "70563": "AB887X",
+        "70569": "AB887X",
+        "70570": "AB887X",
+        "70571": "AB887X",
+        "70575": "AB887X",
+        "70576": "AB887X",
+        "70577": "AB887X",
+        "70578": "AB887X",
+        "70580": "AB887X",
+        "70581": "AB887X",
+        "70582": "AB887X",
+        "70583": "AB887X",
+        "70584": "AB887X",
+        "70585": "AB887X",
+        "70586": "AB887X",
+        "70589": "AB887X",
+        "70591": "AB887X",
+        "70592": "AB887X",
+        "70593": "AB887X",
+        "70595": "AB887X",
+        "70596": "AB887X",
+        "70598": "AB887X",
+        "70601": "AB887X",
+        "70602": "AB887X",
+        "70605": "AB887X",
+        "70606": "AB887X",
+        "70607": "AB887X",
+        "70609": "AB887X",
+        "70611": "AB887X",
+        "70612": "AB887X",
+        "70615": "AB887X",
+        "70616": "AB887X",
+        "70629": "AB887X",
+        "70630": "AB887X",
+        "70631": "AB887X",
+        "70632": "AB887X",
+        "70633": "AB887X",
+        "70634": "AB887X",
+        "70637": "AB887X",
+        "70638": "AB887X",
+        "70639": "AB887X",
+        "70640": "AB887X",
+        "70643": "AB887X",
+        "70644": "AB887X",
+        "70645": "AB887X",
+        "70646": "AB887X",
+        "70647": "AB887X",
+        "70648": "AB887X",
+        "70650": "AB887X",
+        "70651": "AB887X",
+        "70652": "AB887X",
+        "70653": "AB887X",
+        "70654": "AB887X",
+        "70655": "AB887X",
+        "70656": "AB887X",
+        "70657": "AB887X",
+        "70658": "AB887X",
+        "70659": "AB887X",
+        "70660": "AB887X",
+        "70661": "AB887X",
+        "70662": "AB887X",
+        "70663": "AB887X",
+        "70664": "AB887X",
+        "70665": "AB887X",
+        "70668": "AB887X",
+        "70669": "AB887X",
+        "70704": "AB889X",
+        "70706": "AB889X",
+        "70707": "AB889X",
+        "70710": "AB889X",
+        "70711": "AB889X",
+        "70712": "AB889X",
+        "70714": "AB889X",
+        "70715": "AB889X",
+        "70718": "AB889X",
+        "70719": "AB889X",
+        "70721": "AB889X",
+        "70722": "AB889X",
+        "70723": "AB889X",
+        "70725": "AB889X",
+        "70726": "AB889X",
+        "70727": "AB887X",
+        "70728": "AB889X",
+        "70729": "AB889X",
+        "70730": "AB889X",
+        "70732": "AB889X",
+        "70733": "AB889X",
+        "70734": "AB889X",
+        "70736": "AB889X",
+        "70737": "AB889X",
+        "70738": "AB889X",
+        "70739": "AB889X",
+        "70740": "AB889X",
+        "70743": "AB889X",
+        "70744": "AB889X",
+        "70747": "AB889X",
+        "70748": "AB889X",
+        "70749": "AB889X",
+        "70750": "AB887X",
+        "70752": "AB889X",
+        "70753": "AB889X",
+        "70754": "AB889X",
+        "70755": "AB889X",
+        "70756": "AB889X",
+        "70757": "AB889X",
+        "70759": "AB889X",
+        "70760": "AB889X",
+        "70761": "AB889X",
+        "70762": "AB889X",
+        "70763": "AB889X",
+        "70764": "AB889X",
+        "70765": "AB889X",
+        "70767": "AB889X",
+        "70769": "AB889X",
+        "70770": "AB889X",
+        "70772": "AB889X",
+        "70773": "AB889X",
+        "70774": "AB889X",
+        "70775": "AB889X",
+        "70776": "AB889X",
+        "70777": "AB889X",
+        "70778": "AB889X",
+        "70780": "AB889X",
+        "70782": "AB889X",
+        "70783": "AB889X",
+        "70784": "AB889X",
+        "70785": "AB889X",
+        "70786": "AB889X",
+        "70787": "AB889X",
+        "70788": "AB889X",
+        "70789": "AB889X",
+        "70791": "AB889X",
+        "70792": "AB889X",
+        "70801": "AB887X",
+        "70802": "AB887X",
+        "70803": "AB889X",
+        "70804": "AB889X",
+        "70805": "AB889X",
+        "70806": "AB889X",
+        "70807": "AB889X",
+        "70808": "AB889X",
+        "70809": "AB889X",
+        "70810": "AB889X",
+        "70811": "AB889X",
+        "70812": "AB889X",
+        "70813": "AB889X",
+        "70814": "AB889X",
+        "70815": "AB889X",
+        "70816": "AB889X",
+        "70817": "AB889X",
+        "70818": "AB889X",
+        "70819": "AB889X",
+        "70820": "AB889X",
+        "70821": "AB889X",
+        "70822": "AB889X",
+        "70823": "AB889X",
+        "70825": "AB889X",
+        "70826": "AB889X",
+        "70827": "AB889X",
+        "70831": "AB889X",
+        "70833": "AB889X",
+        "70835": "AB889X",
+        "70836": "AB889X",
+        "70837": "AB889X",
+        "70873": "AB889X",
+        "70874": "AB889X",
+        "70879": "AB889X",
+        "70883": "AB889X",
+        "70884": "AB889X",
+        "70891": "AB889X",
+        "70892": "AB889X",
+        "70893": "AB889X",
+        "70894": "AB889X",
+        "70895": "AB889X",
+        "70896": "AB889X",
+        "70898": "AB889X",
+        "71001": "AB887X",
+        "71002": "AB888X",
+        "71003": "AB888X",
+        "71004": "AB888X",
+        "71006": "AB888X",
+        "71007": "AB888X",
+        "71008": "AB887X",
+        "71009": "AB888X",
+        "71016": "AB887X",
+        "71018": "AB888X",
+        "71019": "AB888X",
+        "71021": "AB888X",
+        "71023": "AB888X",
+        "71024": "AB888X",
+        "71027": "AB888X",
+        "71028": "AB887X",
+        "71029": "AB888X",
+        "71030": "AB888X",
+        "71031": "AB887X",
+        "71032": "AB888X",
+        "71033": "AB888X",
+        "71034": "AB888X",
+        "71037": "AB888X",
+        "71038": "AB888X",
+        "71039": "AB888X",
+        "71040": "AB888X",
+        "71043": "AB888X",
+        "71044": "AB888X",
+        "71045": "AB887X",
+        "71046": "AB888X",
+        "71047": "AB888X",
+        "71048": "AB888X",
+        "71049": "AB888X",
+        "71050": "AB888X",
+        "71051": "AB888X",
+        "71052": "AB888X",
+        "71055": "AB888X",
+        "71058": "AB888X",
+        "71060": "AB888X",
+        "71061": "AB888X",
+        "71063": "AB888X",
+        "71064": "AB888X",
+        "71065": "AB888X",
+        "71066": "AB888X",
+        "71067": "AB888X",
+        "71068": "AB888X",
+        "71069": "AB888X",
+        "71070": "AB887X",
+        "71071": "AB888X",
+        "71072": "AB888X",
+        "71073": "AB888X",
+        "71075": "AB888X",
+        "71078": "AB888X",
+        "71079": "AB888X",
+        "71080": "AB887X",
+        "71082": "AB888X",
+        "71101": "AB888X",
+        "71102": "AB888X",
+        "71103": "AB888X",
+        "71104": "AB888X",
+        "71105": "AB888X",
+        "71106": "AB888X",
+        "71107": "AB888X",
+        "71108": "AB888X",
+        "71109": "AB888X",
+        "71110": "AB888X",
+        "71111": "AB888X",
+        "71112": "AB888X",
+        "71113": "AB888X",
+        "71115": "AB888X",
+        "71118": "AB888X",
+        "71119": "AB888X",
+        "71120": "AB888X",
+        "71129": "AB888X",
+        "71130": "AB888X",
+        "71133": "AB888X",
+        "71134": "AB888X",
+        "71135": "AB888X",
+        "71136": "AB888X",
+        "71137": "AB888X",
+        "71138": "AB888X",
+        "71148": "AB888X",
+        "71149": "AB888X",
+        "71150": "AB888X",
+        "71151": "AB888X",
+        "71152": "AB888X",
+        "71153": "AB888X",
+        "71154": "AB888X",
+        "71156": "AB888X",
+        "71161": "AB888X",
+        "71162": "AB888X",
+        "71163": "AB888X",
+        "71164": "AB888X",
+        "71165": "AB888X",
+        "71166": "AB888X",
+        "71171": "AB888X",
+        "71172": "AB888X",
+        "71201": "AB887X",
+        "71202": "AB887X",
+        "71203": "AB887X",
+        "71207": "AB887X",
+        "71208": "AB887X",
+        "71209": "AB887X",
+        "71210": "AB887X",
+        "71211": "AB887X",
+        "71212": "AB887X",
+        "71213": "AB887X",
+        "71217": "AB887X",
+        "71218": "AB887X",
+        "71219": "AB887X",
+        "71220": "AB887X",
+        "71221": "AB887X",
+        "71222": "AB887X",
+        "71223": "AB887X",
+        "71225": "AB887X",
+        "71226": "AB887X",
+        "71227": "AB887X",
+        "71229": "AB887X",
+        "71230": "AB887X",
+        "71232": "AB887X",
+        "71233": "AB887X",
+        "71234": "AB887X",
+        "71235": "AB887X",
+        "71237": "AB887X",
+        "71238": "AB887X",
+        "71240": "AB887X",
+        "71241": "AB887X",
+        "71242": "AB887X",
+        "71243": "AB887X",
+        "71245": "AB887X",
+        "71247": "AB887X",
+        "71249": "AB887X",
+        "71250": "AB887X",
+        "71251": "AB887X",
+        "71253": "AB887X",
+        "71254": "AB887X",
+        "71256": "AB887X",
+        "71259": "AB887X",
+        "71260": "AB887X",
+        "71261": "AB887X",
+        "71263": "AB887X",
+        "71264": "AB887X",
+        "71266": "AB887X",
+        "71268": "AB887X",
+        "71269": "AB887X",
+        "71270": "AB887X",
+        "71272": "AB887X",
+        "71273": "AB887X",
+        "71275": "AB887X",
+        "71276": "AB887X",
+        "71277": "AB887X",
+        "71279": "AB887X",
+        "71280": "AB887X",
+        "71281": "AB887X",
+        "71282": "AB887X",
+        "71284": "AB887X",
+        "71286": "AB887X",
+        "71291": "AB887X",
+        "71292": "AB887X",
+        "71294": "AB887X",
+        "71295": "AB887X",
+        "71301": "AB887X",
+        "71302": "AB887X",
+        "71303": "AB887X",
+        "71306": "AB887X",
+        "71307": "AB887X",
+        "71309": "AB887X",
+        "71315": "AB887X",
+        "71316": "AB887X",
+        "71320": "AB887X",
+        "71322": "AB887X",
+        "71323": "AB887X",
+        "71324": "AB887X",
+        "71325": "AB887X",
+        "71326": "AB887X",
+        "71327": "AB887X",
+        "71328": "AB887X",
+        "71329": "AB887X",
+        "71330": "AB887X",
+        "71331": "AB887X",
+        "71333": "AB887X",
+        "71334": "AB887X",
+        "71336": "AB887X",
+        "71339": "AB887X",
+        "71340": "AB887X",
+        "71341": "AB887X",
+        "71342": "AB887X",
+        "71343": "AB887X",
+        "71345": "AB887X",
+        "71346": "AB887X",
+        "71347": "AB887X",
+        "71348": "AB887X",
+        "71350": "AB887X",
+        "71351": "AB887X",
+        "71353": "AB887X",
+        "71354": "AB887X",
+        "71355": "AB887X",
+        "71356": "AB887X",
+        "71357": "AB887X",
+        "71358": "AB887X",
+        "71359": "AB887X",
+        "71360": "AB887X",
+        "71361": "AB887X",
+        "71362": "AB887X",
+        "71363": "AB887X",
+        "71365": "AB887X",
+        "71366": "AB887X",
+        "71367": "AB887X",
+        "71368": "AB887X",
+        "71369": "AB887X",
+        "71371": "AB887X",
+        "71373": "AB887X",
+        "71375": "AB887X",
+        "71377": "AB887X",
+        "71378": "AB887X",
+        "71401": "AB887X",
+        "71403": "AB887X",
+        "71404": "AB887X",
+        "71405": "AB887X",
+        "71406": "AB888X",
+        "71407": "AB887X",
+        "71409": "AB887X",
+        "71410": "AB887X",
+        "71411": "AB888X",
+        "71412": "AB888X",
+        "71414": "AB888X",
+        "71415": "AB888X",
+        "71416": "AB888X",
+        "71417": "AB887X",
+        "71418": "AB888X",
+        "71419": "AB888X",
+        "71422": "AB887X",
+        "71423": "AB887X",
+        "71424": "AB887X",
+        "71425": "AB887X",
+        "71426": "AB888X",
+        "71427": "AB887X",
+        "71428": "AB888X",
+        "71429": "AB888X",
+        "71430": "AB887X",
+        "71431": "AB887X",
+        "71432": "AB887X",
+        "71433": "AB887X",
+        "71434": "AB888X",
+        "71435": "AB888X",
+        "71438": "AB887X",
+        "71439": "AB888X",
+        "71440": "AB887X",
+        "71441": "AB888X",
+        "71443": "AB887X",
+        "71444": "AB887X",
+        "71446": "AB887X",
+        "71447": "AB888X",
+        "71448": "AB887X",
+        "71449": "AB888X",
+        "71450": "AB888X",
+        "71452": "AB888X",
+        "71454": "AB887X",
+        "71455": "AB888X",
+        "71456": "AB888X",
+        "71457": "AB888X",
+        "71458": "AB888X",
+        "71459": "AB887X",
+        "71460": "AB888X",
+        "71461": "AB887X",
+        "71462": "AB888X",
+        "71463": "AB887X",
+        "71465": "AB887X",
+        "71466": "AB887X",
+        "71467": "AB887X",
+        "71468": "AB888X",
+        "71469": "AB888X",
+        "71471": "AB888X",
+        "71472": "AB887X",
+        "71473": "AB887X",
+        "71474": "AB887X",
+        "71475": "AB887X",
+        "71477": "AB887X",
+        "71479": "AB887X",
+        "71480": "AB887X",
+        "71483": "AB887X",
+        "71485": "AB887X",
+        "71486": "AB888X",
+        "71496": "AB887X",
+        "71497": "AB890X",
+        "71601": "AB887X",
+        "71602": "AB887X",
+        "71603": "AB887X",
+        "71611": "AB887X",
+        "71612": "AB887X",
+        "71613": "AB887X",
+        "71630": "AB887X",
+        "71631": "AB887X",
+        "71635": "AB887X",
+        "71638": "AB889X",
+        "71639": "AB887X",
+        "71640": "AB889X",
+        "71642": "AB887X",
+        "71643": "AB887X",
+        "71644": "AB887X",
+        "71646": "AB887X",
+        "71647": "AB887X",
+        "71651": "AB887X",
+        "71652": "AB887X",
+        "71653": "AB889X",
+        "71654": "AB887X",
+        "71655": "AB887X",
+        "71656": "AB887X",
+        "71657": "AB887X",
+        "71658": "AB887X",
+        "71659": "AB887X",
+        "71660": "AB887X",
+        "71661": "AB887X",
+        "71662": "AB887X",
+        "71663": "AB887X",
+        "71665": "AB887X",
+        "71666": "AB887X",
+        "71667": "AB887X",
+        "71670": "AB887X",
+        "71671": "AB887X",
+        "71674": "AB887X",
+        "71675": "AB887X",
+        "71676": "AB887X",
+        "71677": "AB887X",
+        "71678": "AB887X",
+        "71701": "AB887X",
+        "71711": "AB887X",
+        "71716": "AB887X",
+        "71720": "AB887X",
+        "71721": "AB887X",
+        "71722": "AB888X",
+        "71724": "AB887X",
+        "71725": "AB887X",
+        "71726": "AB887X",
+        "71728": "AB887X",
+        "71730": "AB887X",
+        "71731": "AB887X",
+        "71740": "AB888X",
+        "71742": "AB887X",
+        "71743": "AB887X",
+        "71744": "AB887X",
+        "71745": "AB887X",
+        "71747": "AB887X",
+        "71748": "AB887X",
+        "71749": "AB887X",
+        "71750": "AB887X",
+        "71751": "AB887X",
+        "71752": "AB888X",
+        "71753": "AB888X",
+        "71754": "AB888X",
+        "71758": "AB887X",
+        "71759": "AB887X",
+        "71762": "AB887X",
+        "71763": "AB887X",
+        "71764": "AB887X",
+        "71765": "AB887X",
+        "71766": "AB887X",
+        "71768": "AB887X",
+        "71770": "AB888X",
+        "71772": "AB887X",
+        "71801": "AB888X",
+        "71802": "AB888X",
+        "71820": "AB888X",
+        "71822": "AB888X",
+        "71823": "AB888X",
+        "71825": "AB888X",
+        "71826": "AB888X",
+        "71827": "AB888X",
+        "71828": "AB888X",
+        "71831": "AB888X",
+        "71832": "AB888X",
+        "71833": "AB888X",
+        "71834": "AB888X",
+        "71835": "AB888X",
+        "71836": "AB888X",
+        "71837": "AB888X",
+        "71838": "AB888X",
+        "71839": "AB888X",
+        "71840": "AB888X",
+        "71841": "AB888X",
+        "71842": "AB888X",
+        "71844": "AB888X",
+        "71845": "AB888X",
+        "71846": "AB888X",
+        "71847": "AB888X",
+        "71851": "AB888X",
+        "71852": "AB888X",
+        "71853": "AB888X",
+        "71854": "AB888X",
+        "71855": "AB888X",
+        "71857": "AB888X",
+        "71858": "AB888X",
+        "71859": "AB888X",
+        "71860": "AB888X",
+        "71861": "AB888X",
+        "71862": "AB888X",
+        "71864": "AB888X",
+        "71865": "AB888X",
+        "71866": "AB888X",
+        "71901": "AB887X",
+        "71902": "AB887X",
+        "71903": "AB887X",
+        "71909": "AB887X",
+        "71910": "AB887X",
+        "71913": "AB887X",
+        "71914": "AB887X",
+        "71920": "AB887X",
+        "71921": "AB887X",
+        "71922": "AB887X",
+        "71923": "AB887X",
+        "71928": "AB887X",
+        "71929": "AB887X",
+        "71932": "AB890X",
+        "71933": "AB887X",
+        "71935": "AB887X",
+        "71937": "AB890X",
+        "71940": "AB887X",
+        "71941": "AB887X",
+        "71942": "AB887X",
+        "71943": "AB887X",
+        "71944": "AB890X",
+        "71945": "AB890X",
+        "71946": "AB887X",
+        "71949": "AB887X",
+        "71950": "AB887X",
+        "71951": "AB887X",
+        "71952": "AB887X",
+        "71953": "AB890X",
+        "71956": "AB887X",
+        "71957": "AB887X",
+        "71958": "AB887X",
+        "71959": "AB887X",
+        "71960": "AB887X",
+        "71961": "AB890X",
+        "71962": "AB887X",
+        "71964": "AB887X",
+        "71965": "AB887X",
+        "71966": "AB887X",
+        "71968": "AB887X",
+        "71969": "AB887X",
+        "71970": "AB887X",
+        "71971": "AB888X",
+        "71972": "AB890X",
+        "71973": "AB890X",
+        "71998": "AB887X",
+        "71999": "AB887X",
+        "72001": "AB887X",
+        "72002": "AB887X",
+        "72003": "AB887X",
+        "72004": "AB887X",
+        "72005": "AB887X",
+        "72006": "AB889X",
+        "72007": "AB887X",
+        "72010": "AB887X",
+        "72011": "AB887X",
+        "72012": "AB887X",
+        "72013": "AB887X",
+        "72014": "AB887X",
+        "72015": "AB887X",
+        "72016": "AB887X",
+        "72017": "AB889X",
+        "72018": "AB887X",
+        "72019": "AB887X",
+        "72020": "AB887X",
+        "72021": "AB889X",
+        "72022": "AB887X",
+        "72023": "AB887X",
+        "72024": "AB887X",
+        "72025": "AB887X",
+        "72026": "AB887X",
+        "72027": "AB887X",
+        "72028": "AB887X",
+        "72029": "AB889X",
+        "72030": "AB887X",
+        "72031": "AB887X",
+        "72032": "AB887X",
+        "72033": "AB887X",
+        "72034": "AB887X",
+        "72035": "AB887X",
+        "72036": "AB889X",
+        "72037": "AB887X",
+        "72038": "AB887X",
+        "72039": "AB887X",
+        "72040": "AB889X",
+        "72041": "AB889X",
+        "72042": "AB887X",
+        "72043": "AB888X",
+        "72044": "AB887X",
+        "72045": "AB887X",
+        "72046": "AB887X",
+        "72047": "AB887X",
+        "72048": "AB887X",
+        "72051": "AB887X",
+        "72052": "AB887X",
+        "72053": "AB887X",
+        "72055": "AB887X",
+        "72057": "AB887X",
+        "72058": "AB887X",
+        "72059": "AB889X",
+        "72060": "AB889X",
+        "72061": "AB887X",
+        "72063": "AB887X",
+        "72064": "AB889X",
+        "72065": "AB887X",
+        "72066": "AB889X",
+        "72067": "AB887X",
+        "72068": "AB887X",
+        "72069": "AB889X",
+        "72070": "AB887X",
+        "72072": "AB887X",
+        "72073": "AB887X",
+        "72074": "AB889X",
+        "72075": "AB888X",
+        "72076": "AB887X",
+        "72078": "AB887X",
+        "72079": "AB887X",
+        "72080": "AB887X",
+        "72081": "AB887X",
+        "72082": "AB887X",
+        "72083": "AB887X",
+        "72084": "AB887X",
+        "72085": "AB887X",
+        "72086": "AB887X",
+        "72087": "AB887X",
+        "72088": "AB887X",
+        "72089": "AB887X",
+        "72099": "AB887X",
+        "72101": "AB888X",
+        "72102": "AB887X",
+        "72103": "AB887X",
+        "72104": "AB887X",
+        "72105": "AB887X",
+        "72106": "AB887X",
+        "72107": "AB887X",
+        "72108": "AB889X",
+        "72110": "AB887X",
+        "72111": "AB887X",
+        "72112": "AB887X",
+        "72113": "AB887X",
+        "72114": "AB887X",
+        "72115": "AB887X",
+        "72116": "AB887X",
+        "72117": "AB887X",
+        "72118": "AB887X",
+        "72119": "AB887X",
+        "72120": "AB887X",
+        "72121": "AB887X",
+        "72122": "AB887X",
+        "72123": "AB889X",
+        "72124": "AB887X",
+        "72125": "AB887X",
+        "72126": "AB887X",
+        "72127": "AB887X",
+        "72128": "AB887X",
+        "72129": "AB887X",
+        "72130": "AB887X",
+        "72131": "AB887X",
+        "72132": "AB887X",
+        "72133": "AB887X",
+        "72134": "AB887X",
+        "72135": "AB887X",
+        "72136": "AB887X",
+        "72137": "AB887X",
+        "72139": "AB887X",
+        "72140": "AB887X",
+        "72141": "AB887X",
+        "72142": "AB887X",
+        "72143": "AB887X",
+        "72145": "AB887X",
+        "72149": "AB887X",
+        "72150": "AB887X",
+        "72152": "AB887X",
+        "72153": "AB887X",
+        "72156": "AB887X",
+        "72157": "AB887X",
+        "72158": "AB887X",
+        "72160": "AB887X",
+        "72164": "AB887X",
+        "72165": "AB887X",
+        "72166": "AB887X",
+        "72167": "AB887X",
+        "72168": "AB887X",
+        "72169": "AB888X",
+        "72170": "AB887X",
+        "72173": "AB887X",
+        "72175": "AB887X",
+        "72176": "AB887X",
+        "72178": "AB887X",
+        "72179": "AB887X",
+        "72180": "AB887X",
+        "72181": "AB887X",
+        "72182": "AB887X",
+        "72183": "AB887X",
+        "72189": "AB889X",
+        "72190": "AB887X",
+        "72198": "AB887X",
+        "72199": "AB887X",
+        "72201": "AB887X",
+        "72202": "AB887X",
+        "72203": "AB887X",
+        "72204": "AB887X",
+        "72205": "AB887X",
+        "72206": "AB887X",
+        "72207": "AB887X",
+        "72209": "AB887X",
+        "72210": "AB887X",
+        "72211": "AB887X",
+        "72212": "AB887X",
+        "72214": "AB887X",
+        "72215": "AB887X",
+        "72216": "AB887X",
+        "72217": "AB887X",
+        "72219": "AB887X",
+        "72221": "AB887X",
+        "72222": "AB887X",
+        "72223": "AB887X",
+        "72225": "AB887X",
+        "72227": "AB887X",
+        "72231": "AB887X",
+        "72260": "AB887X",
+        "72295": "AB887X",
+        "72301": "AB889X",
+        "72303": "AB887X",
+        "72310": "AB889X",
+        "72311": "AB889X",
+        "72312": "AB889X",
+        "72313": "AB889X",
+        "72315": "AB889X",
+        "72316": "AB889X",
+        "72319": "AB887X",
+        "72320": "AB887X",
+        "72321": "AB889X",
+        "72322": "AB889X",
+        "72324": "AB888X",
+        "72325": "AB887X",
+        "72326": "AB889X",
+        "72327": "AB887X",
+        "72328": "AB889X",
+        "72329": "AB889X",
+        "72330": "AB889X",
+        "72331": "AB887X",
+        "72332": "AB887X",
+        "72333": "AB889X",
+        "72335": "AB889X",
+        "72336": "AB889X",
+        "72338": "AB889X",
+        "72339": "AB887X",
+        "72340": "AB889X",
+        "72341": "AB889X",
+        "72342": "AB889X",
+        "72346": "AB887X",
+        "72347": "AB888X",
+        "72348": "AB889X",
+        "72350": "AB889X",
+        "72351": "AB889X",
+        "72352": "AB889X",
+        "72353": "AB889X",
+        "72354": "AB888X",
+        "72355": "AB889X",
+        "72358": "AB889X",
+        "72359": "AB889X",
+        "72360": "AB889X",
+        "72364": "AB889X",
+        "72365": "AB888X",
+        "72366": "AB889X",
+        "72367": "AB889X",
+        "72368": "AB889X",
+        "72369": "AB889X",
+        "72370": "AB889X",
+        "72372": "AB889X",
+        "72373": "AB887X",
+        "72374": "AB889X",
+        "72376": "AB889X",
+        "72377": "AB888X",
+        "72379": "AB887X",
+        "72383": "AB889X",
+        "72384": "AB887X",
+        "72386": "AB888X",
+        "72387": "AB888X",
+        "72389": "AB889X",
+        "72390": "AB889X",
+        "72391": "AB889X",
+        "72392": "AB889X",
+        "72394": "AB889X",
+        "72395": "AB889X",
+        "72396": "AB889X",
+        "72401": "AB888X",
+        "72402": "AB888X",
+        "72403": "AB888X",
+        "72404": "AB888X",
+        "72410": "AB888X",
+        "72411": "AB888X",
+        "72412": "AB888X",
+        "72413": "AB888X",
+        "72414": "AB888X",
+        "72415": "AB888X",
+        "72416": "AB888X",
+        "72417": "AB888X",
+        "72419": "AB888X",
+        "72421": "AB888X",
+        "72422": "AB888X",
+        "72424": "AB888X",
+        "72425": "AB888X",
+        "72426": "AB889X",
+        "72427": "AB888X",
+        "72428": "AB889X",
+        "72429": "AB888X",
+        "72430": "AB888X",
+        "72431": "AB887X",
+        "72432": "AB888X",
+        "72433": "AB888X",
+        "72434": "AB888X",
+        "72435": "AB888X",
+        "72436": "AB888X",
+        "72437": "AB888X",
+        "72438": "AB888X",
+        "72439": "AB888X",
+        "72440": "AB888X",
+        "72441": "AB888X",
+        "72442": "AB888X",
+        "72443": "AB888X",
+        "72444": "AB888X",
+        "72445": "AB888X",
+        "72447": "AB888X",
+        "72449": "AB888X",
+        "72450": "AB888X",
+        "72451": "AB888X",
+        "72453": "AB888X",
+        "72454": "AB888X",
+        "72455": "AB888X",
+        "72456": "AB888X",
+        "72457": "AB888X",
+        "72458": "AB888X",
+        "72459": "AB888X",
+        "72460": "AB888X",
+        "72461": "AB888X",
+        "72462": "AB888X",
+        "72464": "AB888X",
+        "72465": "AB888X",
+        "72466": "AB888X",
+        "72467": "AB887X",
+        "72469": "AB888X",
+        "72470": "AB887X",
+        "72471": "AB888X",
+        "72472": "AB888X",
+        "72473": "AB888X",
+        "72474": "AB888X",
+        "72475": "AB888X",
+        "72476": "AB888X",
+        "72478": "AB888X",
+        "72479": "AB888X",
+        "72482": "AB888X",
+        "72501": "AB887X",
+        "72503": "AB887X",
+        "72512": "AB887X",
+        "72513": "AB888X",
+        "72515": "AB888X",
+        "72517": "AB888X",
+        "72519": "AB891X",
+        "72520": "AB888X",
+        "72521": "AB888X",
+        "72522": "AB887X",
+        "72523": "AB887X",
+        "72524": "AB887X",
+        "72525": "AB888X",
+        "72526": "AB887X",
+        "72527": "AB887X",
+        "72528": "AB887X",
+        "72529": "AB888X",
+        "72530": "AB887X",
+        "72531": "AB888X",
+        "72532": "AB888X",
+        "72533": "AB887X",
+        "72534": "AB887X",
+        "72536": "AB887X",
+        "72537": "AB891X",
+        "72538": "AB888X",
+        "72539": "AB888X",
+        "72540": "AB887X",
+        "72542": "AB888X",
+        "72543": "AB887X",
+        "72544": "AB891X",
+        "72545": "AB887X",
+        "72546": "AB887X",
+        "72550": "AB887X",
+        "72553": "AB887X",
+        "72554": "AB888X",
+        "72555": "AB887X",
+        "72556": "AB887X",
+        "72560": "AB887X",
+        "72561": "AB887X",
+        "72562": "AB887X",
+        "72564": "AB887X",
+        "72565": "AB888X",
+        "72566": "AB891X",
+        "72567": "AB887X",
+        "72568": "AB887X",
+        "72569": "AB888X",
+        "72571": "AB887X",
+        "72572": "AB888X",
+        "72573": "AB887X",
+        "72575": "AB887X",
+        "72576": "AB888X",
+        "72577": "AB888X",
+        "72578": "AB888X",
+        "72579": "AB887X",
+        "72581": "AB887X",
+        "72583": "AB888X",
+        "72584": "AB888X",
+        "72585": "AB887X",
+        "72587": "AB888X",
+        "72601": "AB891X",
+        "72602": "AB891X",
+        "72611": "AB891X",
+        "72613": "AB891X",
+        "72615": "AB891X",
+        "72616": "AB891X",
+        "72617": "AB891X",
+        "72619": "AB891X",
+        "72623": "AB891X",
+        "72624": "AB891X",
+        "72626": "AB891X",
+        "72628": "AB891X",
+        "72629": "AB887X",
+        "72630": "AB891X",
+        "72631": "AB891X",
+        "72632": "AB891X",
+        "72633": "AB891X",
+        "72634": "AB891X",
+        "72635": "AB891X",
+        "72636": "AB891X",
+        "72638": "AB891X",
+        "72639": "AB887X",
+        "72640": "AB891X",
+        "72641": "AB891X",
+        "72642": "AB891X",
+        "72644": "AB891X",
+        "72645": "AB887X",
+        "72648": "AB891X",
+        "72650": "AB891X",
+        "72651": "AB891X",
+        "72653": "AB891X",
+        "72654": "AB891X",
+        "72655": "AB891X",
+        "72657": "AB887X",
+        "72658": "AB891X",
+        "72659": "AB891X",
+        "72660": "AB891X",
+        "72661": "AB891X",
+        "72662": "AB891X",
+        "72663": "AB887X",
+        "72666": "AB891X",
+        "72668": "AB891X",
+        "72669": "AB891X",
+        "72670": "AB891X",
+        "72672": "AB891X",
+        "72675": "AB891X",
+        "72677": "AB891X",
+        "72679": "AB887X",
+        "72680": "AB887X",
+        "72682": "AB891X",
+        "72683": "AB891X",
+        "72685": "AB891X",
+        "72686": "AB891X",
+        "72687": "AB891X",
+        "72701": "AB890X",
+        "72702": "AB890X",
+        "72703": "AB890X",
+        "72704": "AB890X",
+        "72711": "AB890X",
+        "72712": "AB890X",
+        "72714": "AB890X",
+        "72715": "AB890X",
+        "72716": "AB890X",
+        "72717": "AB890X",
+        "72718": "AB890X",
+        "72719": "AB890X",
+        "72721": "AB890X",
+        "72722": "AB890X",
+        "72727": "AB890X",
+        "72728": "AB890X",
+        "72729": "AB890X",
+        "72730": "AB890X",
+        "72732": "AB890X",
+        "72733": "AB890X",
+        "72734": "AB890X",
+        "72735": "AB890X",
+        "72736": "AB890X",
+        "72737": "AB890X",
+        "72738": "AB890X",
+        "72739": "AB890X",
+        "72740": "AB890X",
+        "72741": "AB890X",
+        "72742": "AB890X",
+        "72744": "AB890X",
+        "72745": "AB890X",
+        "72747": "AB890X",
+        "72749": "AB890X",
+        "72751": "AB890X",
+        "72752": "AB890X",
+        "72753": "AB890X",
+        "72756": "AB890X",
+        "72757": "AB890X",
+        "72758": "AB890X",
+        "72760": "AB890X",
+        "72761": "AB890X",
+        "72762": "AB890X",
+        "72764": "AB890X",
+        "72765": "AB890X",
+        "72766": "AB890X",
+        "72768": "AB890X",
+        "72769": "AB890X",
+        "72770": "AB890X",
+        "72773": "AB890X",
+        "72774": "AB890X",
+        "72776": "AB890X",
+        "72801": "AB887X",
+        "72802": "AB887X",
+        "72811": "AB887X",
+        "72812": "AB887X",
+        "72820": "AB890X",
+        "72821": "AB887X",
+        "72823": "AB887X",
+        "72824": "AB887X",
+        "72826": "AB887X",
+        "72827": "AB887X",
+        "72828": "AB887X",
+        "72829": "AB887X",
+        "72830": "AB887X",
+        "72832": "AB887X",
+        "72833": "AB887X",
+        "72834": "AB887X",
+        "72835": "AB890X",
+        "72837": "AB887X",
+        "72838": "AB887X",
+        "72839": "AB887X",
+        "72840": "AB887X",
+        "72841": "AB887X",
+        "72842": "AB887X",
+        "72843": "AB887X",
+        "72845": "AB887X",
+        "72846": "AB887X",
+        "72847": "AB887X",
+        "72851": "AB890X",
+        "72852": "AB887X",
+        "72853": "AB887X",
+        "72854": "AB887X",
+        "72855": "AB890X",
+        "72856": "AB891X",
+        "72857": "AB887X",
+        "72858": "AB887X",
+        "72860": "AB887X",
+        "72863": "AB890X",
+        "72865": "AB890X",
+        "72901": "AB890X",
+        "72902": "AB890X",
+        "72903": "AB890X",
+        "72904": "AB890X",
+        "72905": "AB890X",
+        "72906": "AB890X",
+        "72908": "AB890X",
+        "72913": "AB890X",
+        "72914": "AB890X",
+        "72916": "AB890X",
+        "72917": "AB890X",
+        "72918": "AB890X",
+        "72919": "AB890X",
+        "72921": "AB890X",
+        "72923": "AB890X",
+        "72926": "AB890X",
+        "72927": "AB890X",
+        "72928": "AB890X",
+        "72930": "AB890X",
+        "72932": "AB890X",
+        "72933": "AB890X",
+        "72934": "AB890X",
+        "72935": "AB890X",
+        "72936": "AB890X",
+        "72937": "AB890X",
+        "72938": "AB890X",
+        "72940": "AB890X",
+        "72941": "AB890X",
+        "72943": "AB890X",
+        "72944": "AB890X",
+        "72945": "AB890X",
+        "72946": "AB890X",
+        "72947": "AB890X",
+        "72948": "AB890X",
+        "72949": "AB890X",
+        "72950": "AB890X",
+        "72951": "AB890X",
+        "72952": "AB890X",
+        "72955": "AB890X",
+        "72956": "AB890X",
+        "72957": "AB890X",
+        "72958": "AB890X",
+        "72959": "AB890X",
+        "73001": "AB890X",
+        "73002": "AB890X",
+        "73003": "AB890X",
+        "73004": "AB890X",
+        "73005": "AB890X",
+        "73006": "AB890X",
+        "73007": "AB890X",
+        "73008": "AB890X",
+        "73009": "AB890X",
+        "73010": "AB890X",
+        "73011": "AB890X",
+        "73012": "AB890X",
+        "73013": "AB890X",
+        "73014": "AB890X",
+        "73015": "AB890X",
+        "73016": "AB890X",
+        "73017": "AB890X",
+        "73018": "AB890X",
+        "73019": "AB890X",
+        "73020": "AB890X",
+        "73021": "AB890X",
+        "73022": "AB890X",
+        "73023": "AB890X",
+        "73024": "AB890X",
+        "73025": "AB890X",
+        "73026": "AB890X",
+        "73027": "AB890X",
+        "73028": "AB890X",
+        "73029": "AB890X",
+        "73030": "AB890X",
+        "73031": "AB890X",
+        "73032": "AB890X",
+        "73033": "AB890X",
+        "73034": "AB890X",
+        "73036": "AB890X",
+        "73038": "AB890X",
+        "73039": "AB890X",
+        "73040": "AB890X",
+        "73041": "AB890X",
+        "73042": "AB890X",
+        "73043": "AB890X",
+        "73044": "AB890X",
+        "73045": "AB890X",
+        "73047": "AB890X",
+        "73048": "AB890X",
+        "73049": "AB890X",
+        "73050": "AB890X",
+        "73051": "AB890X",
+        "73052": "AB890X",
+        "73053": "AB890X",
+        "73054": "AB890X",
+        "73055": "AB890X",
+        "73056": "AB890X",
+        "73057": "AB890X",
+        "73058": "AB890X",
+        "73059": "AB890X",
+        "73061": "AB890X",
+        "73062": "AB890X",
+        "73063": "AB890X",
+        "73064": "AB890X",
+        "73065": "AB890X",
+        "73066": "AB890X",
+        "73067": "AB890X",
+        "73068": "AB890X",
+        "73069": "AB890X",
+        "73070": "AB890X",
+        "73071": "AB890X",
+        "73072": "AB890X",
+        "73073": "AB890X",
+        "73074": "AB890X",
+        "73075": "AB890X",
+        "73077": "AB890X",
+        "73078": "AB890X",
+        "73079": "AB890X",
+        "73080": "AB890X",
+        "73081": "AB887X",
+        "73082": "AB890X",
+        "73083": "AB890X",
+        "73084": "AB890X",
+        "73085": "AB890X",
+        "73086": "AB890X",
+        "73089": "AB890X",
+        "73090": "AB890X",
+        "73092": "AB890X",
+        "73093": "AB890X",
+        "73094": "AB890X",
+        "73095": "AB890X",
+        "73096": "AB890X",
+        "73097": "AB890X",
+        "73098": "AB890X",
+        "73099": "AB890X",
+        "73101": "AB890X",
+        "73102": "AB890X",
+        "73103": "AB890X",
+        "73104": "AB890X",
+        "73105": "AB890X",
+        "73106": "AB890X",
+        "73107": "AB890X",
+        "73108": "AB890X",
+        "73109": "AB890X",
+        "73110": "AB890X",
+        "73111": "AB890X",
+        "73112": "AB890X",
+        "73113": "AB890X",
+        "73114": "AB890X",
+        "73115": "AB890X",
+        "73116": "AB890X",
+        "73117": "AB890X",
+        "73118": "AB890X",
+        "73119": "AB890X",
+        "73120": "AB890X",
+        "73121": "AB890X",
+        "73122": "AB890X",
+        "73123": "AB890X",
+        "73124": "AB890X",
+        "73125": "AB890X",
+        "73126": "AB890X",
+        "73127": "AB890X",
+        "73128": "AB890X",
+        "73129": "AB890X",
+        "73130": "AB890X",
+        "73131": "AB890X",
+        "73132": "AB890X",
+        "73134": "AB890X",
+        "73135": "AB890X",
+        "73136": "AB890X",
+        "73137": "AB890X",
+        "73139": "AB890X",
+        "73140": "AB890X",
+        "73141": "AB890X",
+        "73142": "AB890X",
+        "73143": "AB890X",
+        "73144": "AB890X",
+        "73145": "AB890X",
+        "73146": "AB890X",
+        "73147": "AB890X",
+        "73148": "AB890X",
+        "73149": "AB890X",
+        "73150": "AB890X",
+        "73151": "AB890X",
+        "73152": "AB890X",
+        "73153": "AB890X",
+        "73154": "AB890X",
+        "73155": "AB890X",
+        "73156": "AB890X",
+        "73157": "AB890X",
+        "73159": "AB890X",
+        "73160": "AB890X",
+        "73162": "AB890X",
+        "73163": "AB890X",
+        "73164": "AB890X",
+        "73165": "AB890X",
+        "73167": "AB890X",
+        "73169": "AB890X",
+        "73170": "AB890X",
+        "73172": "AB890X",
+        "73173": "AB890X",
+        "73178": "AB890X",
+        "73179": "AB890X",
+        "73184": "AB890X",
+        "73185": "AB890X",
+        "73189": "AB890X",
+        "73190": "AB890X",
+        "73193": "AB890X",
+        "73194": "AB890X",
+        "73195": "AB890X",
+        "73196": "AB890X",
+        "73197": "AB890X",
+        "73198": "AB890X",
+        "73199": "AB890X",
+        "73301": "AB890X",
+        "73344": "AB890X",
+        "73401": "AB887X",
+        "73402": "AB887X",
+        "73403": "AB887X",
+        "73425": "AB890X",
+        "73430": "AB887X",
+        "73432": "AB890X",
+        "73433": "AB890X",
+        "73434": "AB890X",
+        "73435": "AB887X",
+        "73436": "AB887X",
+        "73437": "AB887X",
+        "73438": "AB887X",
+        "73439": "AB887X",
+        "73440": "AB887X",
+        "73441": "AB887X",
+        "73442": "AB890X",
+        "73443": "AB887X",
+        "73444": "AB887X",
+        "73446": "AB887X",
+        "73447": "AB890X",
+        "73448": "AB887X",
+        "73449": "AB887X",
+        "73450": "AB890X",
+        "73452": "AB887X",
+        "73453": "AB887X",
+        "73455": "AB890X",
+        "73456": "AB890X",
+        "73458": "AB887X",
+        "73459": "AB887X",
+        "73460": "AB890X",
+        "73461": "AB890X",
+        "73463": "AB887X",
+        "73481": "AB887X",
+        "73487": "AB887X",
+        "73488": "AB887X",
+        "73491": "AB890X",
+        "73501": "AB890X",
+        "73502": "AB890X",
+        "73503": "AB890X",
+        "73505": "AB890X",
+        "73506": "AB890X",
+        "73507": "AB890X",
+        "73520": "AB890X",
+        "73521": "AB890X",
+        "73522": "AB890X",
+        "73523": "AB890X",
+        "73526": "AB890X",
+        "73527": "AB890X",
+        "73528": "AB890X",
+        "73529": "AB890X",
+        "73530": "AB890X",
+        "73531": "AB890X",
+        "73532": "AB890X",
+        "73533": "AB890X",
+        "73534": "AB890X",
+        "73536": "AB890X",
+        "73537": "AB890X",
+        "73538": "AB890X",
+        "73539": "AB890X",
+        "73540": "AB890X",
+        "73541": "AB890X",
+        "73542": "AB890X",
+        "73543": "AB890X",
+        "73544": "AB890X",
+        "73546": "AB890X",
+        "73547": "AB890X",
+        "73548": "AB890X",
+        "73549": "AB890X",
+        "73550": "AB890X",
+        "73551": "AB890X",
+        "73552": "AB890X",
+        "73553": "AB890X",
+        "73554": "AB890X",
+        "73555": "AB890X",
+        "73556": "AB890X",
+        "73557": "AB890X",
+        "73558": "AB890X",
+        "73559": "AB900X",
+        "73560": "AB890X",
+        "73561": "AB890X",
+        "73562": "AB890X",
+        "73564": "AB900X",
+        "73565": "AB890X",
+        "73566": "AB900X",
+        "73567": "AB890X",
+        "73568": "AB890X",
+        "73569": "AB890X",
+        "73570": "AB890X",
+        "73571": "AB890X",
+        "73572": "AB890X",
+        "73573": "AB890X",
+        "73601": "AB890X",
+        "73620": "AB890X",
+        "73622": "AB890X",
+        "73624": "AB890X",
+        "73625": "AB890X",
+        "73626": "AB890X",
+        "73627": "AB890X",
+        "73628": "AB890X",
+        "73632": "AB890X",
+        "73638": "AB890X",
+        "73639": "AB890X",
+        "73641": "AB890X",
+        "73642": "AB890X",
+        "73644": "AB890X",
+        "73645": "AB890X",
+        "73646": "AB890X",
+        "73647": "AB890X",
+        "73648": "AB890X",
+        "73650": "AB890X",
+        "73651": "AB890X",
+        "73654": "AB890X",
+        "73655": "AB890X",
+        "73658": "AB890X",
+        "73659": "AB890X",
+        "73660": "AB890X",
+        "73661": "AB890X",
+        "73662": "AB890X",
+        "73663": "AB890X",
+        "73664": "AB890X",
+        "73666": "AB890X",
+        "73667": "AB890X",
+        "73668": "AB890X",
+        "73669": "AB890X",
+        "73673": "AB890X",
+        "73701": "AB890X",
+        "73702": "AB890X",
+        "73703": "AB890X",
+        "73705": "AB890X",
+        "73706": "AB890X",
+        "73716": "AB890X",
+        "73717": "AB890X",
+        "73718": "AB890X",
+        "73719": "AB890X",
+        "73720": "AB890X",
+        "73722": "AB890X",
+        "73724": "AB890X",
+        "73726": "AB890X",
+        "73727": "AB890X",
+        "73728": "AB890X",
+        "73729": "AB890X",
+        "73730": "AB890X",
+        "73731": "AB890X",
+        "73733": "AB890X",
+        "73734": "AB890X",
+        "73735": "AB890X",
+        "73736": "AB890X",
+        "73737": "AB890X",
+        "73738": "AB890X",
+        "73739": "AB890X",
+        "73741": "AB890X",
+        "73742": "AB890X",
+        "73743": "AB890X",
+        "73744": "AB890X",
+        "73746": "AB890X",
+        "73747": "AB890X",
+        "73748": "AB890X",
+        "73749": "AB890X",
+        "73750": "AB890X",
+        "73753": "AB890X",
+        "73754": "AB890X",
+        "73755": "AB890X",
+        "73756": "AB890X",
+        "73757": "AB890X",
+        "73758": "AB890X",
+        "73759": "AB890X",
+        "73760": "AB890X",
+        "73761": "AB890X",
+        "73762": "AB890X",
+        "73763": "AB890X",
+        "73764": "AB890X",
+        "73766": "AB890X",
+        "73768": "AB890X",
+        "73770": "AB890X",
+        "73771": "AB890X",
+        "73772": "AB890X",
+        "73773": "AB890X",
+        "73801": "AB890X",
+        "73802": "AB890X",
+        "73832": "AB890X",
+        "73834": "AB890X",
+        "73835": "AB890X",
+        "73838": "AB890X",
+        "73840": "AB890X",
+        "73841": "AB890X",
+        "73842": "AB890X",
+        "73843": "AB890X",
+        "73844": "AB888X",
+        "73848": "AB890X",
+        "73851": "AB890X",
+        "73852": "AB890X",
+        "73853": "AB890X",
+        "73855": "AB890X",
+        "73857": "AB890X",
+        "73858": "AB890X",
+        "73859": "AB890X",
+        "73860": "AB890X",
+        "73901": "AB900X",
+        "73931": "AB888X",
+        "73932": "AB888X",
+        "73933": "AB890X",
+        "73937": "AB890X",
+        "73938": "AB888X",
+        "73939": "AB900X",
+        "73942": "AB900X",
+        "73944": "AB900X",
+        "73945": "AB900X",
+        "73946": "AB890X",
+        "73947": "AB890X",
+        "73948": "AB900X",
+        "73949": "AB900X",
+        "73950": "AB888X",
+        "73951": "AB900X",
+        "73958": "AB890X",
+        "74001": "AB890X",
+        "74002": "AB890X",
+        "74003": "AB890X",
+        "74004": "AB890X",
+        "74005": "AB890X",
+        "74006": "AB890X",
+        "74008": "AB890X",
+        "74010": "AB890X",
+        "74011": "AB890X",
+        "74012": "AB890X",
+        "74013": "AB890X",
+        "74014": "AB890X",
+        "74015": "AB890X",
+        "74016": "AB890X",
+        "74017": "AB890X",
+        "74018": "AB890X",
+        "74019": "AB890X",
+        "74020": "AB890X",
+        "74021": "AB890X",
+        "74022": "AB890X",
+        "74023": "AB890X",
+        "74026": "AB890X",
+        "74027": "AB890X",
+        "74028": "AB890X",
+        "74029": "AB890X",
+        "74030": "AB890X",
+        "74031": "AB890X",
+        "74032": "AB890X",
+        "74033": "AB890X",
+        "74034": "AB890X",
+        "74035": "AB890X",
+        "74036": "AB890X",
+        "74037": "AB890X",
+        "74038": "AB890X",
+        "74039": "AB890X",
+        "74041": "AB890X",
+        "74042": "AB890X",
+        "74043": "AB890X",
+        "74044": "AB890X",
+        "74045": "AB890X",
+        "74046": "AB890X",
+        "74047": "AB890X",
+        "74048": "AB890X",
+        "74050": "AB890X",
+        "74051": "AB890X",
+        "74052": "AB890X",
+        "74053": "AB890X",
+        "74054": "AB890X",
+        "74055": "AB890X",
+        "74056": "AB890X",
+        "74058": "AB890X",
+        "74059": "AB890X",
+        "74060": "AB890X",
+        "74061": "AB890X",
+        "74062": "AB890X",
+        "74063": "AB890X",
+        "74066": "AB890X",
+        "74067": "AB890X",
+        "74068": "AB890X",
+        "74070": "AB890X",
+        "74071": "AB890X",
+        "74072": "AB890X",
+        "74073": "AB890X",
+        "74074": "AB890X",
+        "74075": "AB890X",
+        "74076": "AB890X",
+        "74077": "AB890X",
+        "74078": "AB890X",
+        "74079": "AB890X",
+        "74080": "AB890X",
+        "74081": "AB890X",
+        "74082": "AB890X",
+        "74083": "AB890X",
+        "74084": "AB890X",
+        "74085": "AB890X",
+        "74087": "AB890X",
+        "74100": "AB890X",
+        "74101": "AB890X",
+        "74102": "AB890X",
+        "74103": "AB890X",
+        "74104": "AB890X",
+        "74105": "AB890X",
+        "74106": "AB890X",
+        "74107": "AB890X",
+        "74108": "AB890X",
+        "74110": "AB890X",
+        "74112": "AB890X",
+        "74114": "AB890X",
+        "74115": "AB890X",
+        "74116": "AB890X",
+        "74117": "AB890X",
+        "74119": "AB890X",
+        "74120": "AB890X",
+        "74121": "AB890X",
+        "74126": "AB890X",
+        "74127": "AB890X",
+        "74128": "AB890X",
+        "74129": "AB890X",
+        "74130": "AB890X",
+        "74131": "AB890X",
+        "74132": "AB890X",
+        "74133": "AB890X",
+        "74134": "AB890X",
+        "74135": "AB890X",
+        "74136": "AB890X",
+        "74137": "AB890X",
+        "74141": "AB890X",
+        "74145": "AB890X",
+        "74146": "AB890X",
+        "74147": "AB890X",
+        "74148": "AB890X",
+        "74149": "AB890X",
+        "74150": "AB890X",
+        "74152": "AB890X",
+        "74153": "AB890X",
+        "74154": "AB890X",
+        "74155": "AB890X",
+        "74156": "AB890X",
+        "74157": "AB890X",
+        "74158": "AB890X",
+        "74159": "AB890X",
+        "74169": "AB890X",
+        "74170": "AB890X",
+        "74171": "AB890X",
+        "74172": "AB890X",
+        "74182": "AB890X",
+        "74183": "AB890X",
+        "74184": "AB890X",
+        "74186": "AB890X",
+        "74187": "AB890X",
+        "74189": "AB890X",
+        "74192": "AB890X",
+        "74193": "AB890X",
+        "74194": "AB890X",
+        "74301": "AB890X",
+        "74330": "AB890X",
+        "74331": "AB890X",
+        "74332": "AB890X",
+        "74333": "AB890X",
+        "74335": "AB890X",
+        "74337": "AB890X",
+        "74338": "AB890X",
+        "74339": "AB890X",
+        "74340": "AB890X",
+        "74342": "AB890X",
+        "74343": "AB890X",
+        "74344": "AB890X",
+        "74345": "AB890X",
+        "74346": "AB890X",
+        "74347": "AB890X",
+        "74349": "AB890X",
+        "74350": "AB890X",
+        "74352": "AB890X",
+        "74354": "AB890X",
+        "74355": "AB890X",
+        "74358": "AB890X",
+        "74359": "AB890X",
+        "74360": "AB890X",
+        "74361": "AB890X",
+        "74362": "AB890X",
+        "74363": "AB890X",
+        "74364": "AB890X",
+        "74365": "AB890X",
+        "74366": "AB890X",
+        "74367": "AB890X",
+        "74368": "AB890X",
+        "74369": "AB890X",
+        "74370": "AB890X",
+        "74401": "AB890X",
+        "74402": "AB890X",
+        "74403": "AB890X",
+        "74421": "AB890X",
+        "74422": "AB890X",
+        "74423": "AB890X",
+        "74425": "AB890X",
+        "74426": "AB890X",
+        "74427": "AB890X",
+        "74428": "AB890X",
+        "74429": "AB890X",
+        "74430": "AB890X",
+        "74431": "AB890X",
+        "74432": "AB890X",
+        "74434": "AB890X",
+        "74435": "AB890X",
+        "74436": "AB890X",
+        "74437": "AB890X",
+        "74438": "AB890X",
+        "74439": "AB890X",
+        "74440": "AB890X",
+        "74441": "AB890X",
+        "74442": "AB890X",
+        "74444": "AB890X",
+        "74445": "AB890X",
+        "74446": "AB890X",
+        "74447": "AB890X",
+        "74450": "AB890X",
+        "74451": "AB890X",
+        "74452": "AB890X",
+        "74454": "AB890X",
+        "74455": "AB890X",
+        "74456": "AB890X",
+        "74457": "AB890X",
+        "74458": "AB890X",
+        "74459": "AB890X",
+        "74460": "AB890X",
+        "74461": "AB890X",
+        "74462": "AB890X",
+        "74463": "AB890X",
+        "74464": "AB890X",
+        "74465": "AB890X",
+        "74466": "AB890X",
+        "74467": "AB890X",
+        "74468": "AB890X",
+        "74469": "AB890X",
+        "74470": "AB890X",
+        "74471": "AB890X",
+        "74472": "AB890X",
+        "74477": "AB890X",
+        "74501": "AB890X",
+        "74502": "AB890X",
+        "74521": "AB890X",
+        "74522": "AB890X",
+        "74523": "AB890X",
+        "74525": "AB887X",
+        "74528": "AB890X",
+        "74529": "AB890X",
+        "74530": "AB890X",
+        "74531": "AB890X",
+        "74533": "AB887X",
+        "74534": "AB887X",
+        "74535": "AB887X",
+        "74536": "AB890X",
+        "74538": "AB887X",
+        "74540": "AB887X",
+        "74542": "AB887X",
+        "74543": "AB890X",
+        "74545": "AB890X",
+        "74546": "AB890X",
+        "74547": "AB890X",
+        "74549": "AB890X",
+        "74552": "AB890X",
+        "74553": "AB890X",
+        "74554": "AB890X",
+        "74555": "AB887X",
+        "74556": "AB887X",
+        "74557": "AB890X",
+        "74558": "AB890X",
+        "74559": "AB890X",
+        "74560": "AB890X",
+        "74561": "AB890X",
+        "74562": "AB890X",
+        "74563": "AB890X",
+        "74565": "AB890X",
+        "74567": "AB890X",
+        "74569": "AB887X",
+        "74570": "AB890X",
+        "74571": "AB890X",
+        "74572": "AB887X",
+        "74574": "AB890X",
+        "74576": "AB890X",
+        "74577": "AB890X",
+        "74578": "AB890X",
+        "74601": "AB890X",
+        "74602": "AB890X",
+        "74604": "AB890X",
+        "74630": "AB890X",
+        "74631": "AB890X",
+        "74632": "AB890X",
+        "74633": "AB890X",
+        "74636": "AB890X",
+        "74637": "AB890X",
+        "74640": "AB890X",
+        "74641": "AB890X",
+        "74643": "AB890X",
+        "74644": "AB890X",
+        "74646": "AB890X",
+        "74647": "AB890X",
+        "74650": "AB890X",
+        "74651": "AB890X",
+        "74652": "AB890X",
+        "74653": "AB890X",
+        "74701": "AB887X",
+        "74702": "AB887X",
+        "74720": "AB887X",
+        "74721": "AB887X",
+        "74722": "AB890X",
+        "74723": "AB887X",
+        "74724": "AB890X",
+        "74726": "AB887X",
+        "74727": "AB890X",
+        "74728": "AB890X",
+        "74729": "AB887X",
+        "74730": "AB887X",
+        "74731": "AB887X",
+        "74733": "AB887X",
+        "74734": "AB890X",
+        "74735": "AB890X",
+        "74736": "AB890X",
+        "74737": "AB890X",
+        "74738": "AB890X",
+        "74740": "AB890X",
+        "74741": "AB887X",
+        "74743": "AB890X",
+        "74745": "AB890X",
+        "74747": "AB887X",
+        "74748": "AB890X",
+        "74750": "AB890X",
+        "74752": "AB890X",
+        "74753": "AB887X",
+        "74754": "AB890X",
+        "74755": "AB890X",
+        "74756": "AB890X",
+        "74759": "AB890X",
+        "74760": "AB890X",
+        "74761": "AB890X",
+        "74764": "AB890X",
+        "74766": "AB890X",
+        "74801": "AB890X",
+        "74802": "AB890X",
+        "74804": "AB890X",
+        "74818": "AB890X",
+        "74820": "AB890X",
+        "74821": "AB890X",
+        "74824": "AB890X",
+        "74825": "AB890X",
+        "74826": "AB890X",
+        "74827": "AB890X",
+        "74829": "AB890X",
+        "74830": "AB890X",
+        "74831": "AB890X",
+        "74832": "AB890X",
+        "74833": "AB890X",
+        "74834": "AB890X",
+        "74836": "AB890X",
+        "74837": "AB890X",
+        "74839": "AB890X",
+        "74840": "AB890X",
+        "74842": "AB890X",
+        "74843": "AB890X",
+        "74844": "AB890X",
+        "74845": "AB890X",
+        "74848": "AB890X",
+        "74849": "AB890X",
+        "74850": "AB890X",
+        "74851": "AB890X",
+        "74852": "AB890X",
+        "74854": "AB890X",
+        "74855": "AB890X",
+        "74856": "AB890X",
+        "74857": "AB890X",
+        "74859": "AB890X",
+        "74860": "AB890X",
+        "74864": "AB890X",
+        "74865": "AB890X",
+        "74866": "AB890X",
+        "74867": "AB890X",
+        "74868": "AB890X",
+        "74869": "AB890X",
+        "74871": "AB890X",
+        "74872": "AB890X",
+        "74873": "AB890X",
+        "74875": "AB890X",
+        "74878": "AB890X",
+        "74880": "AB890X",
+        "74881": "AB890X",
+        "74883": "AB890X",
+        "74884": "AB890X",
+        "74901": "AB890X",
+        "74902": "AB890X",
+        "74930": "AB890X",
+        "74931": "AB890X",
+        "74932": "AB890X",
+        "74935": "AB890X",
+        "74936": "AB890X",
+        "74937": "AB890X",
+        "74939": "AB890X",
+        "74940": "AB890X",
+        "74941": "AB890X",
+        "74942": "AB890X",
+        "74943": "AB890X",
+        "74944": "AB890X",
+        "74945": "AB890X",
+        "74946": "AB890X",
+        "74947": "AB890X",
+        "74948": "AB890X",
+        "74949": "AB890X",
+        "74951": "AB890X",
+        "74953": "AB890X",
+        "74954": "AB890X",
+        "74955": "AB890X",
+        "74956": "AB890X",
+        "74957": "AB890X",
+        "74959": "AB890X",
+        "74960": "AB890X",
+        "74962": "AB890X",
+        "74963": "AB890X",
+        "74964": "AB890X",
+        "74965": "AB890X",
+        "74966": "AB890X",
+        "75001": "AB887X",
+        "75002": "AB887X",
+        "75006": "AB887X",
+        "75007": "AB887X",
+        "75009": "AB887X",
+        "75010": "AB887X",
+        "75011": "AB887X",
+        "75013": "AB887X",
+        "75014": "AB887X",
+        "75015": "AB887X",
+        "75016": "AB887X",
+        "75017": "AB887X",
+        "75019": "AB887X",
+        "75020": "AB887X",
+        "75021": "AB887X",
+        "75022": "AB887X",
+        "75023": "AB887X",
+        "75024": "AB887X",
+        "75025": "AB887X",
+        "75026": "AB887X",
+        "75027": "AB887X",
+        "75028": "AB887X",
+        "75029": "AB887X",
+        "75030": "AB887X",
+        "75032": "AB887X",
+        "75033": "AB887X",
+        "75034": "AB887X",
+        "75035": "AB887X",
+        "75037": "AB887X",
+        "75038": "AB887X",
+        "75039": "AB887X",
+        "75040": "AB887X",
+        "75041": "AB887X",
+        "75042": "AB887X",
+        "75043": "AB887X",
+        "75044": "AB887X",
+        "75045": "AB887X",
+        "75046": "AB887X",
+        "75047": "AB887X",
+        "75048": "AB887X",
+        "75049": "AB887X",
+        "75050": "AB887X",
+        "75051": "AB887X",
+        "75052": "AB887X",
+        "75053": "AB887X",
+        "75054": "AB887X",
+        "75056": "AB887X",
+        "75057": "AB887X",
+        "75058": "AB887X",
+        "75060": "AB887X",
+        "75061": "AB887X",
+        "75062": "AB887X",
+        "75063": "AB887X",
+        "75065": "AB887X",
+        "75067": "AB887X",
+        "75068": "AB887X",
+        "75069": "AB887X",
+        "75070": "AB887X",
+        "75071": "AB887X",
+        "75074": "AB887X",
+        "75075": "AB887X",
+        "75076": "AB887X",
+        "75077": "AB887X",
+        "75078": "AB887X",
+        "75080": "AB887X",
+        "75081": "AB887X",
+        "75082": "AB887X",
+        "75083": "AB887X",
+        "75085": "AB887X",
+        "75086": "AB887X",
+        "75087": "AB887X",
+        "75088": "AB887X",
+        "75089": "AB887X",
+        "75090": "AB887X",
+        "75091": "AB887X",
+        "75092": "AB887X",
+        "75093": "AB887X",
+        "75094": "AB887X",
+        "75097": "AB887X",
+        "75098": "AB887X",
+        "75099": "AB887X",
+        "75101": "AB887X",
+        "75102": "AB887X",
+        "75103": "AB887X",
+        "75104": "AB887X",
+        "75105": "AB887X",
+        "75106": "AB887X",
+        "75109": "AB887X",
+        "75110": "AB887X",
+        "75114": "AB887X",
+        "75115": "AB887X",
+        "75116": "AB887X",
+        "75117": "AB887X",
+        "75118": "AB887X",
+        "75119": "AB887X",
+        "75120": "AB887X",
+        "75121": "AB887X",
+        "75123": "AB887X",
+        "75124": "AB887X",
+        "75125": "AB887X",
+        "75126": "AB887X",
+        "75127": "AB887X",
+        "75132": "AB887X",
+        "75134": "AB887X",
+        "75135": "AB887X",
+        "75137": "AB887X",
+        "75138": "AB887X",
+        "75140": "AB887X",
+        "75141": "AB887X",
+        "75142": "AB887X",
+        "75143": "AB887X",
+        "75144": "AB887X",
+        "75146": "AB887X",
+        "75147": "AB887X",
+        "75148": "AB887X",
+        "75149": "AB887X",
+        "75150": "AB887X",
+        "75151": "AB887X",
+        "75152": "AB887X",
+        "75153": "AB887X",
+        "75154": "AB887X",
+        "75155": "AB887X",
+        "75156": "AB887X",
+        "75157": "AB887X",
+        "75158": "AB887X",
+        "75159": "AB887X",
+        "75160": "AB887X",
+        "75161": "AB887X",
+        "75163": "AB887X",
+        "75164": "AB887X",
+        "75165": "AB887X",
+        "75166": "AB887X",
+        "75167": "AB887X",
+        "75168": "AB887X",
+        "75169": "AB887X",
+        "75172": "AB887X",
+        "75173": "AB887X",
+        "75180": "AB887X",
+        "75181": "AB887X",
+        "75182": "AB887X",
+        "75185": "AB887X",
+        "75187": "AB887X",
+        "75189": "AB887X",
+        "75201": "AB887X",
+        "75202": "AB887X",
+        "75203": "AB887X",
+        "75204": "AB887X",
+        "75205": "AB887X",
+        "75206": "AB887X",
+        "75207": "AB887X",
+        "75208": "AB887X",
+        "75209": "AB887X",
+        "75210": "AB887X",
+        "75211": "AB887X",
+        "75212": "AB887X",
+        "75214": "AB887X",
+        "75215": "AB887X",
+        "75216": "AB887X",
+        "75217": "AB887X",
+        "75218": "AB887X",
+        "75219": "AB887X",
+        "75220": "AB887X",
+        "75221": "AB887X",
+        "75222": "AB887X",
+        "75223": "AB887X",
+        "75224": "AB887X",
+        "75225": "AB887X",
+        "75226": "AB887X",
+        "75227": "AB887X",
+        "75228": "AB887X",
+        "75229": "AB887X",
+        "75230": "AB887X",
+        "75231": "AB887X",
+        "75232": "AB887X",
+        "75233": "AB887X",
+        "75234": "AB887X",
+        "75235": "AB887X",
+        "75236": "AB887X",
+        "75237": "AB887X",
+        "75238": "AB887X",
+        "75240": "AB887X",
+        "75241": "AB887X",
+        "75242": "AB887X",
+        "75243": "AB887X",
+        "75244": "AB887X",
+        "75245": "AB887X",
+        "75246": "AB887X",
+        "75247": "AB887X",
+        "75248": "AB887X",
+        "75249": "AB887X",
+        "75250": "AB887X",
+        "75251": "AB887X",
+        "75252": "AB887X",
+        "75253": "AB887X",
+        "75254": "AB887X",
+        "75258": "AB887X",
+        "75260": "AB887X",
+        "75261": "AB887X",
+        "75262": "AB887X",
+        "75263": "AB887X",
+        "75264": "AB887X",
+        "75265": "AB887X",
+        "75266": "AB887X",
+        "75267": "AB887X",
+        "75270": "AB887X",
+        "75275": "AB887X",
+        "75277": "AB887X",
+        "75283": "AB887X",
+        "75284": "AB887X",
+        "75285": "AB887X",
+        "75286": "AB887X",
+        "75287": "AB887X",
+        "75301": "AB887X",
+        "75303": "AB887X",
+        "75310": "AB887X",
+        "75312": "AB887X",
+        "75313": "AB887X",
+        "75315": "AB887X",
+        "75320": "AB887X",
+        "75323": "AB887X",
+        "75326": "AB887X",
+        "75334": "AB887X",
+        "75336": "AB887X",
+        "75339": "AB887X",
+        "75340": "AB887X",
+        "75342": "AB887X",
+        "75343": "AB887X",
+        "75344": "AB887X",
+        "75353": "AB887X",
+        "75354": "AB887X",
+        "75355": "AB887X",
+        "75356": "AB887X",
+        "75357": "AB887X",
+        "75358": "AB887X",
+        "75359": "AB887X",
+        "75360": "AB887X",
+        "75363": "AB887X",
+        "75364": "AB887X",
+        "75367": "AB887X",
+        "75368": "AB887X",
+        "75370": "AB887X",
+        "75371": "AB887X",
+        "75372": "AB887X",
+        "75373": "AB887X",
+        "75374": "AB887X",
+        "75376": "AB887X",
+        "75378": "AB887X",
+        "75379": "AB887X",
+        "75380": "AB887X",
+        "75381": "AB887X",
+        "75382": "AB887X",
+        "75386": "AB887X",
+        "75387": "AB887X",
+        "75388": "AB887X",
+        "75389": "AB887X",
+        "75390": "AB887X",
+        "75391": "AB887X",
+        "75392": "AB887X",
+        "75393": "AB887X",
+        "75394": "AB887X",
+        "75395": "AB887X",
+        "75396": "AB887X",
+        "75397": "AB887X",
+        "75398": "AB887X",
+        "75401": "AB887X",
+        "75402": "AB887X",
+        "75403": "AB887X",
+        "75404": "AB887X",
+        "75407": "AB887X",
+        "75409": "AB887X",
+        "75410": "AB888X",
+        "75411": "AB887X",
+        "75412": "AB887X",
+        "75413": "AB887X",
+        "75414": "AB887X",
+        "75415": "AB887X",
+        "75416": "AB887X",
+        "75417": "AB887X",
+        "75418": "AB887X",
+        "75420": "AB887X",
+        "75421": "AB887X",
+        "75422": "AB887X",
+        "75423": "AB887X",
+        "75424": "AB887X",
+        "75425": "AB887X",
+        "75426": "AB887X",
+        "75428": "AB887X",
+        "75429": "AB887X",
+        "75431": "AB887X",
+        "75432": "AB887X",
+        "75433": "AB887X",
+        "75434": "AB887X",
+        "75435": "AB887X",
+        "75436": "AB887X",
+        "75437": "AB887X",
+        "75438": "AB887X",
+        "75439": "AB887X",
+        "75440": "AB887X",
+        "75441": "AB887X",
+        "75442": "AB887X",
+        "75443": "AB887X",
+        "75444": "AB888X",
+        "75446": "AB887X",
+        "75447": "AB887X",
+        "75448": "AB887X",
+        "75449": "AB887X",
+        "75450": "AB887X",
+        "75451": "AB888X",
+        "75452": "AB887X",
+        "75453": "AB887X",
+        "75454": "AB887X",
+        "75455": "AB888X",
+        "75456": "AB888X",
+        "75457": "AB887X",
+        "75458": "AB887X",
+        "75459": "AB887X",
+        "75460": "AB887X",
+        "75461": "AB887X",
+        "75462": "AB887X",
+        "75468": "AB887X",
+        "75469": "AB887X",
+        "75470": "AB887X",
+        "75471": "AB887X",
+        "75472": "AB887X",
+        "75473": "AB887X",
+        "75474": "AB887X",
+        "75475": "AB887X",
+        "75476": "AB887X",
+        "75477": "AB887X",
+        "75478": "AB887X",
+        "75479": "AB887X",
+        "75480": "AB887X",
+        "75481": "AB887X",
+        "75482": "AB887X",
+        "75483": "AB887X",
+        "75485": "AB887X",
+        "75486": "AB887X",
+        "75487": "AB887X",
+        "75488": "AB887X",
+        "75489": "AB887X",
+        "75490": "AB887X",
+        "75491": "AB887X",
+        "75492": "AB887X",
+        "75493": "AB888X",
+        "75494": "AB888X",
+        "75495": "AB887X",
+        "75496": "AB887X",
+        "75497": "AB888X",
+        "75501": "AB888X",
+        "75503": "AB888X",
+        "75504": "AB888X",
+        "75505": "AB888X",
+        "75507": "AB888X",
+        "75550": "AB887X",
+        "75551": "AB888X",
+        "75554": "AB887X",
+        "75555": "AB888X",
+        "75556": "AB888X",
+        "75558": "AB888X",
+        "75559": "AB888X",
+        "75560": "AB888X",
+        "75561": "AB888X",
+        "75562": "AB888X",
+        "75563": "AB888X",
+        "75564": "AB888X",
+        "75565": "AB888X",
+        "75566": "AB888X",
+        "75567": "AB888X",
+        "75568": "AB888X",
+        "75569": "AB888X",
+        "75570": "AB888X",
+        "75571": "AB888X",
+        "75572": "AB888X",
+        "75573": "AB888X",
+        "75574": "AB888X",
+        "75599": "AB888X",
+        "75601": "AB888X",
+        "75602": "AB888X",
+        "75603": "AB888X",
+        "75604": "AB888X",
+        "75605": "AB888X",
+        "75606": "AB888X",
+        "75607": "AB888X",
+        "75608": "AB888X",
+        "75615": "AB888X",
+        "75630": "AB888X",
+        "75631": "AB888X",
+        "75633": "AB888X",
+        "75636": "AB888X",
+        "75637": "AB888X",
+        "75638": "AB888X",
+        "75639": "AB888X",
+        "75640": "AB888X",
+        "75641": "AB888X",
+        "75642": "AB888X",
+        "75643": "AB888X",
+        "75644": "AB888X",
+        "75645": "AB888X",
+        "75647": "AB888X",
+        "75650": "AB888X",
+        "75651": "AB888X",
+        "75652": "AB888X",
+        "75653": "AB888X",
+        "75654": "AB888X",
+        "75656": "AB888X",
+        "75657": "AB888X",
+        "75658": "AB888X",
+        "75659": "AB888X",
+        "75660": "AB888X",
+        "75661": "AB888X",
+        "75662": "AB888X",
+        "75663": "AB888X",
+        "75666": "AB888X",
+        "75667": "AB888X",
+        "75668": "AB888X",
+        "75669": "AB888X",
+        "75670": "AB888X",
+        "75671": "AB888X",
+        "75672": "AB888X",
+        "75680": "AB888X",
+        "75681": "AB888X",
+        "75682": "AB888X",
+        "75683": "AB888X",
+        "75684": "AB888X",
+        "75685": "AB888X",
+        "75686": "AB888X",
+        "75687": "AB888X",
+        "75688": "AB888X",
+        "75689": "AB888X",
+        "75691": "AB888X",
+        "75692": "AB888X",
+        "75693": "AB888X",
+        "75694": "AB888X",
+        "75701": "AB888X",
+        "75702": "AB888X",
+        "75703": "AB888X",
+        "75704": "AB888X",
+        "75705": "AB888X",
+        "75706": "AB888X",
+        "75707": "AB888X",
+        "75708": "AB888X",
+        "75709": "AB888X",
+        "75710": "AB888X",
+        "75711": "AB888X",
+        "75712": "AB888X",
+        "75713": "AB888X",
+        "75750": "AB888X",
+        "75751": "AB887X",
+        "75752": "AB887X",
+        "75754": "AB887X",
+        "75755": "AB888X",
+        "75756": "AB887X",
+        "75757": "AB888X",
+        "75758": "AB887X",
+        "75759": "AB888X",
+        "75760": "AB888X",
+        "75762": "AB888X",
+        "75763": "AB887X",
+        "75764": "AB888X",
+        "75765": "AB888X",
+        "75766": "AB888X",
+        "75770": "AB887X",
+        "75771": "AB888X",
+        "75772": "AB888X",
+        "75773": "AB888X",
+        "75778": "AB887X",
+        "75779": "AB887X",
+        "75780": "AB888X",
+        "75782": "AB887X",
+        "75783": "AB888X",
+        "75784": "AB888X",
+        "75785": "AB888X",
+        "75788": "AB888X",
+        "75789": "AB888X",
+        "75790": "AB887X",
+        "75791": "AB888X",
+        "75792": "AB888X",
+        "75797": "AB888X",
+        "75798": "AB888X",
+        "75799": "AB888X",
+        "75801": "AB887X",
+        "75802": "AB887X",
+        "75803": "AB887X",
+        "75831": "AB890X",
+        "75832": "AB887X",
+        "75833": "AB890X",
+        "75834": "AB890X",
+        "75835": "AB888X",
+        "75838": "AB890X",
+        "75839": "AB887X",
+        "75840": "AB890X",
+        "75844": "AB888X",
+        "75845": "AB890X",
+        "75846": "AB890X",
+        "75847": "AB888X",
+        "75848": "AB890X",
+        "75849": "AB888X",
+        "75850": "AB890X",
+        "75851": "AB888X",
+        "75852": "AB890X",
+        "75853": "AB887X",
+        "75855": "AB890X",
+        "75856": "AB890X",
+        "75858": "AB888X",
+        "75859": "AB890X",
+        "75860": "AB890X",
+        "75861": "AB887X",
+        "75862": "AB890X",
+        "75865": "AB890X",
+        "75880": "AB887X",
+        "75882": "AB887X",
+        "75884": "AB887X",
+        "75886": "AB887X",
+        "75901": "AB888X",
+        "75902": "AB888X",
+        "75903": "AB888X",
+        "75904": "AB888X",
+        "75915": "AB888X",
+        "75925": "AB888X",
+        "75926": "AB890X",
+        "75928": "AB890X",
+        "75929": "AB888X",
+        "75930": "AB888X",
+        "75931": "AB890X",
+        "75932": "AB890X",
+        "75933": "AB890X",
+        "75934": "AB890X",
+        "75935": "AB888X",
+        "75936": "AB890X",
+        "75937": "AB888X",
+        "75938": "AB890X",
+        "75939": "AB890X",
+        "75941": "AB888X",
+        "75942": "AB890X",
+        "75943": "AB888X",
+        "75944": "AB888X",
+        "75946": "AB888X",
+        "75948": "AB888X",
+        "75949": "AB888X",
+        "75951": "AB890X",
+        "75954": "AB888X",
+        "75956": "AB890X",
+        "75958": "AB888X",
+        "75959": "AB888X",
+        "75960": "AB890X",
+        "75961": "AB888X",
+        "75962": "AB888X",
+        "75963": "AB888X",
+        "75964": "AB888X",
+        "75965": "AB888X",
+        "75966": "AB890X",
+        "75968": "AB888X",
+        "75969": "AB888X",
+        "75972": "AB888X",
+        "75973": "AB888X",
+        "75974": "AB888X",
+        "75975": "AB888X",
+        "75976": "AB888X",
+        "75977": "AB890X",
+        "75978": "AB888X",
+        "75979": "AB890X",
+        "75980": "AB888X",
+        "75990": "AB890X",
+        "76001": "AB887X",
+        "76002": "AB887X",
+        "76003": "AB887X",
+        "76004": "AB887X",
+        "76005": "AB887X",
+        "76006": "AB887X",
+        "76007": "AB887X",
+        "76008": "AB887X",
+        "76009": "AB887X",
+        "76010": "AB887X",
+        "76011": "AB887X",
+        "76012": "AB887X",
+        "76013": "AB887X",
+        "76014": "AB887X",
+        "76015": "AB887X",
+        "76016": "AB887X",
+        "76017": "AB887X",
+        "76018": "AB887X",
+        "76019": "AB887X",
+        "76020": "AB887X",
+        "76021": "AB887X",
+        "76022": "AB887X",
+        "76023": "AB887X",
+        "76028": "AB887X",
+        "76031": "AB887X",
+        "76033": "AB887X",
+        "76034": "AB887X",
+        "76035": "AB887X",
+        "76036": "AB887X",
+        "76039": "AB887X",
+        "76040": "AB887X",
+        "76041": "AB887X",
+        "76043": "AB887X",
+        "76044": "AB887X",
+        "76048": "AB887X",
+        "76049": "AB887X",
+        "76050": "AB887X",
+        "76051": "AB887X",
+        "76052": "AB887X",
+        "76053": "AB887X",
+        "76054": "AB887X",
+        "76055": "AB887X",
+        "76058": "AB887X",
+        "76059": "AB887X",
+        "76060": "AB887X",
+        "76061": "AB887X",
+        "76063": "AB887X",
+        "76064": "AB887X",
+        "76065": "AB887X",
+        "76066": "AB887X",
+        "76067": "AB887X",
+        "76068": "AB887X",
+        "76070": "AB887X",
+        "76071": "AB887X",
+        "76073": "AB887X",
+        "76077": "AB887X",
+        "76078": "AB887X",
+        "76082": "AB887X",
+        "76084": "AB887X",
+        "76085": "AB887X",
+        "76086": "AB887X",
+        "76087": "AB887X",
+        "76088": "AB887X",
+        "76092": "AB887X",
+        "76093": "AB887X",
+        "76094": "AB887X",
+        "76095": "AB887X",
+        "76096": "AB887X",
+        "76097": "AB887X",
+        "76098": "AB887X",
+        "76099": "AB887X",
+        "76101": "AB887X",
+        "76102": "AB887X",
+        "76103": "AB887X",
+        "76104": "AB887X",
+        "76105": "AB887X",
+        "76106": "AB887X",
+        "76107": "AB887X",
+        "76108": "AB887X",
+        "76109": "AB887X",
+        "76110": "AB887X",
+        "76111": "AB887X",
+        "76112": "AB887X",
+        "76113": "AB887X",
+        "76114": "AB887X",
+        "76115": "AB887X",
+        "76116": "AB887X",
+        "76117": "AB887X",
+        "76118": "AB887X",
+        "76119": "AB887X",
+        "76120": "AB887X",
+        "76121": "AB887X",
+        "76122": "AB887X",
+        "76123": "AB887X",
+        "76124": "AB887X",
+        "76126": "AB887X",
+        "76127": "AB887X",
+        "76129": "AB887X",
+        "76130": "AB887X",
+        "76131": "AB887X",
+        "76132": "AB887X",
+        "76133": "AB887X",
+        "76134": "AB887X",
+        "76135": "AB887X",
+        "76136": "AB887X",
+        "76137": "AB887X",
+        "76140": "AB887X",
+        "76147": "AB887X",
+        "76148": "AB887X",
+        "76150": "AB887X",
+        "76155": "AB887X",
+        "76161": "AB887X",
+        "76162": "AB887X",
+        "76163": "AB887X",
+        "76164": "AB887X",
+        "76177": "AB887X",
+        "76179": "AB887X",
+        "76180": "AB887X",
+        "76181": "AB887X",
+        "76182": "AB887X",
+        "76185": "AB887X",
+        "76191": "AB887X",
+        "76192": "AB887X",
+        "76193": "AB887X",
+        "76195": "AB887X",
+        "76196": "AB887X",
+        "76197": "AB887X",
+        "76198": "AB887X",
+        "76199": "AB887X",
+        "76201": "AB887X",
+        "76202": "AB887X",
+        "76203": "AB887X",
+        "76204": "AB887X",
+        "76205": "AB887X",
+        "76206": "AB887X",
+        "76207": "AB887X",
+        "76208": "AB887X",
+        "76209": "AB887X",
+        "76210": "AB887X",
+        "76225": "AB887X",
+        "76226": "AB887X",
+        "76227": "AB887X",
+        "76228": "AB900X",
+        "76230": "AB900X",
+        "76233": "AB887X",
+        "76234": "AB887X",
+        "76238": "AB887X",
+        "76239": "AB900X",
+        "76240": "AB887X",
+        "76241": "AB887X",
+        "76244": "AB887X",
+        "76245": "AB887X",
+        "76246": "AB887X",
+        "76247": "AB887X",
+        "76248": "AB887X",
+        "76249": "AB887X",
+        "76250": "AB887X",
+        "76251": "AB900X",
+        "76252": "AB887X",
+        "76253": "AB887X",
+        "76255": "AB900X",
+        "76258": "AB887X",
+        "76259": "AB887X",
+        "76261": "AB900X",
+        "76262": "AB887X",
+        "76263": "AB887X",
+        "76264": "AB887X",
+        "76265": "AB900X",
+        "76266": "AB887X",
+        "76267": "AB887X",
+        "76268": "AB887X",
+        "76270": "AB900X",
+        "76271": "AB887X",
+        "76272": "AB887X",
+        "76273": "AB887X",
+        "76299": "AB887X",
+        "76301": "AB900X",
+        "76302": "AB900X",
+        "76305": "AB900X",
+        "76306": "AB900X",
+        "76307": "AB900X",
+        "76308": "AB900X",
+        "76309": "AB900X",
+        "76310": "AB900X",
+        "76311": "AB900X",
+        "76351": "AB900X",
+        "76352": "AB900X",
+        "76354": "AB900X",
+        "76357": "AB900X",
+        "76360": "AB900X",
+        "76363": "AB900X",
+        "76364": "AB900X",
+        "76365": "AB900X",
+        "76366": "AB900X",
+        "76367": "AB900X",
+        "76369": "AB900X",
+        "76370": "AB900X",
+        "76371": "AB900X",
+        "76372": "AB900X",
+        "76373": "AB900X",
+        "76374": "AB900X",
+        "76377": "AB900X",
+        "76379": "AB900X",
+        "76380": "AB900X",
+        "76384": "AB900X",
+        "76385": "AB900X",
+        "76388": "AB900X",
+        "76389": "AB900X",
+        "76401": "AB887X",
+        "76402": "AB887X",
+        "76424": "AB900X",
+        "76426": "AB887X",
+        "76427": "AB900X",
+        "76429": "AB900X",
+        "76430": "AB900X",
+        "76431": "AB887X",
+        "76432": "AB900X",
+        "76433": "AB887X",
+        "76435": "AB900X",
+        "76436": "AB887X",
+        "76437": "AB900X",
+        "76439": "AB887X",
+        "76442": "AB887X",
+        "76443": "AB900X",
+        "76444": "AB887X",
+        "76445": "AB900X",
+        "76446": "AB887X",
+        "76448": "AB900X",
+        "76449": "AB887X",
+        "76450": "AB900X",
+        "76452": "AB887X",
+        "76453": "AB887X",
+        "76454": "AB900X",
+        "76455": "AB887X",
+        "76457": "AB887X",
+        "76458": "AB900X",
+        "76459": "AB900X",
+        "76460": "AB900X",
+        "76461": "AB887X",
+        "76462": "AB887X",
+        "76463": "AB887X",
+        "76464": "AB900X",
+        "76465": "AB887X",
+        "76466": "AB900X",
+        "76467": "AB887X",
+        "76468": "AB887X",
+        "76469": "AB900X",
+        "76470": "AB900X",
+        "76471": "AB900X",
+        "76472": "AB887X",
+        "76474": "AB887X",
+        "76475": "AB887X",
+        "76476": "AB887X",
+        "76481": "AB900X",
+        "76483": "AB900X",
+        "76484": "AB887X",
+        "76485": "AB887X",
+        "76486": "AB900X",
+        "76487": "AB887X",
+        "76490": "AB887X",
+        "76491": "AB900X",
+        "76501": "AB890X",
+        "76502": "AB890X",
+        "76503": "AB890X",
+        "76504": "AB890X",
+        "76505": "AB890X",
+        "76508": "AB890X",
+        "76511": "AB890X",
+        "76513": "AB890X",
+        "76518": "AB890X",
+        "76519": "AB890X",
+        "76520": "AB890X",
+        "76522": "AB890X",
+        "76523": "AB890X",
+        "76524": "AB890X",
+        "76525": "AB890X",
+        "76526": "AB890X",
+        "76527": "AB890X",
+        "76528": "AB890X",
+        "76530": "AB890X",
+        "76531": "AB887X",
+        "76533": "AB890X",
+        "76534": "AB890X",
+        "76537": "AB890X",
+        "76538": "AB890X",
+        "76539": "AB890X",
+        "76540": "AB890X",
+        "76541": "AB890X",
+        "76542": "AB890X",
+        "76543": "AB890X",
+        "76544": "AB890X",
+        "76545": "AB890X",
+        "76546": "AB890X",
+        "76547": "AB890X",
+        "76548": "AB890X",
+        "76549": "AB890X",
+        "76550": "AB890X",
+        "76554": "AB890X",
+        "76556": "AB890X",
+        "76557": "AB890X",
+        "76558": "AB890X",
+        "76559": "AB890X",
+        "76561": "AB890X",
+        "76564": "AB890X",
+        "76565": "AB887X",
+        "76566": "AB890X",
+        "76567": "AB890X",
+        "76569": "AB890X",
+        "76570": "AB890X",
+        "76571": "AB890X",
+        "76573": "AB890X",
+        "76574": "AB890X",
+        "76577": "AB890X",
+        "76578": "AB890X",
+        "76579": "AB890X",
+        "76596": "AB890X",
+        "76597": "AB890X",
+        "76598": "AB890X",
+        "76599": "AB890X",
+        "76621": "AB887X",
+        "76622": "AB887X",
+        "76623": "AB887X",
+        "76624": "AB890X",
+        "76626": "AB887X",
+        "76627": "AB887X",
+        "76628": "AB887X",
+        "76629": "AB890X",
+        "76630": "AB890X",
+        "76631": "AB887X",
+        "76632": "AB890X",
+        "76633": "AB890X",
+        "76634": "AB890X",
+        "76635": "AB890X",
+        "76636": "AB887X",
+        "76637": "AB890X",
+        "76638": "AB890X",
+        "76639": "AB887X",
+        "76640": "AB890X",
+        "76641": "AB887X",
+        "76642": "AB890X",
+        "76643": "AB890X",
+        "76644": "AB890X",
+        "76645": "AB887X",
+        "76648": "AB887X",
+        "76649": "AB890X",
+        "76650": "AB887X",
+        "76651": "AB887X",
+        "76652": "AB890X",
+        "76653": "AB890X",
+        "76654": "AB890X",
+        "76655": "AB890X",
+        "76656": "AB890X",
+        "76657": "AB890X",
+        "76660": "AB887X",
+        "76661": "AB890X",
+        "76664": "AB890X",
+        "76665": "AB890X",
+        "76666": "AB887X",
+        "76667": "AB890X",
+        "76670": "AB887X",
+        "76671": "AB890X",
+        "76673": "AB887X",
+        "76676": "AB887X",
+        "76678": "AB890X",
+        "76679": "AB887X",
+        "76680": "AB890X",
+        "76681": "AB887X",
+        "76682": "AB890X",
+        "76684": "AB890X",
+        "76685": "AB890X",
+        "76686": "AB890X",
+        "76687": "AB890X",
+        "76689": "AB890X",
+        "76690": "AB890X",
+        "76691": "AB890X",
+        "76692": "AB887X",
+        "76693": "AB890X",
+        "76701": "AB890X",
+        "76702": "AB890X",
+        "76703": "AB890X",
+        "76704": "AB890X",
+        "76705": "AB890X",
+        "76706": "AB890X",
+        "76707": "AB890X",
+        "76708": "AB890X",
+        "76710": "AB890X",
+        "76711": "AB890X",
+        "76712": "AB890X",
+        "76714": "AB890X",
+        "76715": "AB890X",
+        "76716": "AB890X",
+        "76795": "AB890X",
+        "76797": "AB890X",
+        "76798": "AB890X",
+        "76799": "AB890X",
+        "76801": "AB900X",
+        "76802": "AB900X",
+        "76803": "AB900X",
+        "76804": "AB900X",
+        "76820": "AB900X",
+        "76821": "AB900X",
+        "76823": "AB900X",
+        "76824": "AB900X",
+        "76825": "AB900X",
+        "76827": "AB900X",
+        "76828": "AB900X",
+        "76831": "AB890X",
+        "76832": "AB900X",
+        "76834": "AB900X",
+        "76836": "AB900X",
+        "76837": "AB900X",
+        "76841": "AB900X",
+        "76842": "AB900X",
+        "76844": "AB890X",
+        "76845": "AB900X",
+        "76848": "AB900X",
+        "76849": "AB900X",
+        "76852": "AB900X",
+        "76853": "AB890X",
+        "76854": "AB900X",
+        "76855": "AB900X",
+        "76856": "AB900X",
+        "76857": "AB900X",
+        "76858": "AB900X",
+        "76859": "AB900X",
+        "76861": "AB900X",
+        "76862": "AB900X",
+        "76864": "AB890X",
+        "76865": "AB900X",
+        "76866": "AB900X",
+        "76869": "AB900X",
+        "76870": "AB890X",
+        "76871": "AB900X",
+        "76872": "AB900X",
+        "76873": "AB900X",
+        "76874": "AB900X",
+        "76875": "AB900X",
+        "76877": "AB900X",
+        "76878": "AB900X",
+        "76880": "AB890X",
+        "76882": "AB900X",
+        "76883": "AB891X",
+        "76884": "AB900X",
+        "76885": "AB890X",
+        "76886": "AB900X",
+        "76887": "AB900X",
+        "76888": "AB900X",
+        "76890": "AB900X",
+        "76901": "AB900X",
+        "76902": "AB900X",
+        "76903": "AB900X",
+        "76904": "AB900X",
+        "76905": "AB900X",
+        "76906": "AB900X",
+        "76908": "AB900X",
+        "76909": "AB900X",
+        "76930": "AB900X",
+        "76932": "AB900X",
+        "76933": "AB900X",
+        "76934": "AB900X",
+        "76935": "AB900X",
+        "76936": "AB900X",
+        "76937": "AB900X",
+        "76939": "AB900X",
+        "76940": "AB900X",
+        "76941": "AB900X",
+        "76943": "AB900X",
+        "76945": "AB900X",
+        "76949": "AB900X",
+        "76950": "AB900X",
+        "76951": "AB900X",
+        "76953": "AB900X",
+        "76955": "AB900X",
+        "76957": "AB900X",
+        "76958": "AB900X",
+        "77001": "AB890X",
+        "77002": "AB890X",
+        "77003": "AB890X",
+        "77004": "AB890X",
+        "77005": "AB890X",
+        "77006": "AB890X",
+        "77007": "AB890X",
+        "77008": "AB890X",
+        "77009": "AB890X",
+        "77010": "AB890X",
+        "77011": "AB890X",
+        "77012": "AB890X",
+        "77013": "AB890X",
+        "77014": "AB890X",
+        "77015": "AB890X",
+        "77016": "AB890X",
+        "77017": "AB890X",
+        "77018": "AB890X",
+        "77019": "AB890X",
+        "77020": "AB890X",
+        "77021": "AB890X",
+        "77022": "AB890X",
+        "77023": "AB890X",
+        "77024": "AB890X",
+        "77025": "AB890X",
+        "77026": "AB890X",
+        "77027": "AB890X",
+        "77028": "AB890X",
+        "77029": "AB890X",
+        "77030": "AB890X",
+        "77031": "AB890X",
+        "77032": "AB890X",
+        "77033": "AB890X",
+        "77034": "AB890X",
+        "77035": "AB890X",
+        "77036": "AB890X",
+        "77037": "AB890X",
+        "77038": "AB890X",
+        "77039": "AB890X",
+        "77040": "AB890X",
+        "77041": "AB890X",
+        "77042": "AB890X",
+        "77043": "AB890X",
+        "77044": "AB890X",
+        "77045": "AB890X",
+        "77046": "AB890X",
+        "77047": "AB890X",
+        "77048": "AB890X",
+        "77049": "AB890X",
+        "77050": "AB890X",
+        "77051": "AB890X",
+        "77052": "AB890X",
+        "77053": "AB890X",
+        "77054": "AB890X",
+        "77055": "AB890X",
+        "77056": "AB890X",
+        "77057": "AB890X",
+        "77058": "AB890X",
+        "77059": "AB890X",
+        "77060": "AB890X",
+        "77061": "AB890X",
+        "77062": "AB890X",
+        "77063": "AB890X",
+        "77064": "AB890X",
+        "77065": "AB890X",
+        "77066": "AB890X",
+        "77067": "AB890X",
+        "77068": "AB890X",
+        "77069": "AB890X",
+        "77070": "AB890X",
+        "77071": "AB890X",
+        "77072": "AB890X",
+        "77073": "AB890X",
+        "77074": "AB890X",
+        "77075": "AB890X",
+        "77076": "AB890X",
+        "77077": "AB890X",
+        "77078": "AB890X",
+        "77079": "AB890X",
+        "77080": "AB890X",
+        "77081": "AB890X",
+        "77082": "AB890X",
+        "77083": "AB890X",
+        "77084": "AB890X",
+        "77085": "AB890X",
+        "77086": "AB890X",
+        "77087": "AB890X",
+        "77088": "AB890X",
+        "77089": "AB890X",
+        "77090": "AB890X",
+        "77091": "AB890X",
+        "77092": "AB890X",
+        "77093": "AB890X",
+        "77094": "AB890X",
+        "77095": "AB890X",
+        "77096": "AB890X",
+        "77097": "AB890X",
+        "77098": "AB890X",
+        "77099": "AB890X",
+        "77201": "AB890X",
+        "77202": "AB890X",
+        "77203": "AB890X",
+        "77204": "AB890X",
+        "77205": "AB890X",
+        "77206": "AB890X",
+        "77207": "AB890X",
+        "77208": "AB890X",
+        "77209": "AB890X",
+        "77210": "AB890X",
+        "77212": "AB890X",
+        "77213": "AB890X",
+        "77215": "AB890X",
+        "77216": "AB890X",
+        "77217": "AB890X",
+        "77218": "AB890X",
+        "77219": "AB890X",
+        "77220": "AB890X",
+        "77221": "AB890X",
+        "77222": "AB890X",
+        "77223": "AB890X",
+        "77224": "AB890X",
+        "77225": "AB890X",
+        "77226": "AB890X",
+        "77227": "AB890X",
+        "77228": "AB890X",
+        "77229": "AB890X",
+        "77230": "AB890X",
+        "77231": "AB890X",
+        "77233": "AB890X",
+        "77234": "AB890X",
+        "77235": "AB890X",
+        "77236": "AB890X",
+        "77237": "AB890X",
+        "77238": "AB890X",
+        "77240": "AB890X",
+        "77241": "AB890X",
+        "77242": "AB890X",
+        "77243": "AB890X",
+        "77244": "AB890X",
+        "77245": "AB890X",
+        "77246": "AB890X",
+        "77247": "AB890X",
+        "77248": "AB890X",
+        "77249": "AB890X",
+        "77250": "AB890X",
+        "77251": "AB890X",
+        "77252": "AB890X",
+        "77253": "AB890X",
+        "77254": "AB890X",
+        "77255": "AB890X",
+        "77256": "AB890X",
+        "77257": "AB890X",
+        "77258": "AB890X",
+        "77259": "AB890X",
+        "77260": "AB890X",
+        "77261": "AB890X",
+        "77262": "AB890X",
+        "77263": "AB890X",
+        "77265": "AB890X",
+        "77266": "AB890X",
+        "77267": "AB890X",
+        "77268": "AB890X",
+        "77269": "AB890X",
+        "77270": "AB890X",
+        "77271": "AB890X",
+        "77272": "AB890X",
+        "77273": "AB890X",
+        "77274": "AB890X",
+        "77275": "AB890X",
+        "77276": "AB890X",
+        "77277": "AB890X",
+        "77278": "AB890X",
+        "77279": "AB890X",
+        "77280": "AB890X",
+        "77282": "AB890X",
+        "77284": "AB890X",
+        "77285": "AB890X",
+        "77286": "AB890X",
+        "77287": "AB890X",
+        "77288": "AB890X",
+        "77289": "AB890X",
+        "77290": "AB890X",
+        "77291": "AB890X",
+        "77292": "AB890X",
+        "77293": "AB890X",
+        "77294": "AB890X",
+        "77296": "AB890X",
+        "77297": "AB890X",
+        "77298": "AB890X",
+        "77299": "AB890X",
+        "77301": "AB890X",
+        "77302": "AB890X",
+        "77303": "AB890X",
+        "77304": "AB890X",
+        "77305": "AB890X",
+        "77306": "AB890X",
+        "77315": "AB890X",
+        "77316": "AB890X",
+        "77318": "AB890X",
+        "77320": "AB890X",
+        "77325": "AB890X",
+        "77326": "AB890X",
+        "77327": "AB890X",
+        "77328": "AB890X",
+        "77331": "AB890X",
+        "77332": "AB890X",
+        "77333": "AB890X",
+        "77334": "AB890X",
+        "77335": "AB890X",
+        "77336": "AB890X",
+        "77337": "AB890X",
+        "77338": "AB890X",
+        "77339": "AB890X",
+        "77340": "AB890X",
+        "77341": "AB890X",
+        "77342": "AB890X",
+        "77343": "AB890X",
+        "77344": "AB890X",
+        "77345": "AB890X",
+        "77346": "AB890X",
+        "77347": "AB890X",
+        "77348": "AB890X",
+        "77349": "AB890X",
+        "77350": "AB890X",
+        "77351": "AB890X",
+        "77353": "AB890X",
+        "77354": "AB890X",
+        "77355": "AB890X",
+        "77356": "AB890X",
+        "77357": "AB890X",
+        "77358": "AB890X",
+        "77359": "AB890X",
+        "77360": "AB890X",
+        "77362": "AB890X",
+        "77363": "AB890X",
+        "77364": "AB890X",
+        "77365": "AB890X",
+        "77367": "AB890X",
+        "77368": "AB890X",
+        "77369": "AB890X",
+        "77371": "AB890X",
+        "77372": "AB890X",
+        "77373": "AB890X",
+        "77374": "AB890X",
+        "77375": "AB890X",
+        "77376": "AB890X",
+        "77377": "AB890X",
+        "77378": "AB890X",
+        "77379": "AB890X",
+        "77380": "AB890X",
+        "77381": "AB890X",
+        "77382": "AB890X",
+        "77383": "AB890X",
+        "77384": "AB890X",
+        "77385": "AB890X",
+        "77386": "AB890X",
+        "77387": "AB890X",
+        "77388": "AB890X",
+        "77389": "AB890X",
+        "77391": "AB890X",
+        "77393": "AB890X",
+        "77396": "AB890X",
+        "77399": "AB890X",
+        "77401": "AB890X",
+        "77402": "AB890X",
+        "77404": "AB890X",
+        "77406": "AB890X",
+        "77410": "AB890X",
+        "77411": "AB890X",
+        "77412": "AB890X",
+        "77413": "AB890X",
+        "77414": "AB890X",
+        "77415": "AB890X",
+        "77417": "AB890X",
+        "77418": "AB890X",
+        "77419": "AB890X",
+        "77420": "AB890X",
+        "77422": "AB890X",
+        "77423": "AB890X",
+        "77426": "AB890X",
+        "77428": "AB890X",
+        "77429": "AB890X",
+        "77430": "AB890X",
+        "77431": "AB890X",
+        "77432": "AB890X",
+        "77433": "AB890X",
+        "77434": "AB890X",
+        "77435": "AB890X",
+        "77436": "AB890X",
+        "77437": "AB890X",
+        "77440": "AB890X",
+        "77441": "AB890X",
+        "77442": "AB890X",
+        "77443": "AB890X",
+        "77444": "AB890X",
+        "77445": "AB890X",
+        "77446": "AB890X",
+        "77447": "AB890X",
+        "77448": "AB890X",
+        "77449": "AB890X",
+        "77450": "AB890X",
+        "77451": "AB890X",
+        "77452": "AB890X",
+        "77453": "AB890X",
+        "77454": "AB890X",
+        "77455": "AB890X",
+        "77456": "AB890X",
+        "77457": "AB890X",
+        "77458": "AB890X",
+        "77459": "AB890X",
+        "77460": "AB890X",
+        "77461": "AB890X",
+        "77463": "AB890X",
+        "77464": "AB890X",
+        "77465": "AB890X",
+        "77466": "AB890X",
+        "77467": "AB890X",
+        "77468": "AB890X",
+        "77469": "AB890X",
+        "77470": "AB890X",
+        "77471": "AB890X",
+        "77473": "AB890X",
+        "77474": "AB890X",
+        "77475": "AB890X",
+        "77476": "AB890X",
+        "77477": "AB890X",
+        "77478": "AB890X",
+        "77479": "AB890X",
+        "77480": "AB890X",
+        "77481": "AB890X",
+        "77482": "AB890X",
+        "77483": "AB890X",
+        "77484": "AB890X",
+        "77485": "AB890X",
+        "77486": "AB890X",
+        "77487": "AB890X",
+        "77488": "AB890X",
+        "77489": "AB890X",
+        "77491": "AB890X",
+        "77492": "AB890X",
+        "77493": "AB890X",
+        "77494": "AB890X",
+        "77496": "AB890X",
+        "77497": "AB890X",
+        "77498": "AB890X",
+        "77501": "AB890X",
+        "77502": "AB890X",
+        "77503": "AB890X",
+        "77504": "AB890X",
+        "77505": "AB890X",
+        "77506": "AB890X",
+        "77507": "AB890X",
+        "77508": "AB890X",
+        "77510": "AB890X",
+        "77511": "AB890X",
+        "77512": "AB890X",
+        "77514": "AB890X",
+        "77515": "AB890X",
+        "77516": "AB890X",
+        "77517": "AB890X",
+        "77518": "AB890X",
+        "77519": "AB890X",
+        "77520": "AB890X",
+        "77521": "AB890X",
+        "77522": "AB890X",
+        "77523": "AB890X",
+        "77530": "AB890X",
+        "77531": "AB890X",
+        "77532": "AB890X",
+        "77533": "AB890X",
+        "77534": "AB890X",
+        "77535": "AB890X",
+        "77536": "AB890X",
+        "77538": "AB890X",
+        "77539": "AB890X",
+        "77541": "AB890X",
+        "77542": "AB890X",
+        "77545": "AB890X",
+        "77546": "AB890X",
+        "77547": "AB890X",
+        "77549": "AB890X",
+        "77550": "AB890X",
+        "77551": "AB890X",
+        "77552": "AB890X",
+        "77553": "AB890X",
+        "77554": "AB890X",
+        "77555": "AB890X",
+        "77560": "AB890X",
+        "77561": "AB890X",
+        "77562": "AB890X",
+        "77563": "AB890X",
+        "77564": "AB890X",
+        "77565": "AB890X",
+        "77566": "AB890X",
+        "77568": "AB890X",
+        "77571": "AB890X",
+        "77572": "AB890X",
+        "77573": "AB890X",
+        "77574": "AB890X",
+        "77575": "AB890X",
+        "77577": "AB890X",
+        "77578": "AB890X",
+        "77580": "AB890X",
+        "77581": "AB890X",
+        "77582": "AB890X",
+        "77583": "AB890X",
+        "77584": "AB890X",
+        "77585": "AB890X",
+        "77586": "AB890X",
+        "77587": "AB890X",
+        "77588": "AB890X",
+        "77590": "AB890X",
+        "77591": "AB890X",
+        "77592": "AB890X",
+        "77597": "AB890X",
+        "77598": "AB890X",
+        "77611": "AB890X",
+        "77612": "AB890X",
+        "77613": "AB890X",
+        "77614": "AB890X",
+        "77615": "AB890X",
+        "77616": "AB890X",
+        "77617": "AB890X",
+        "77619": "AB890X",
+        "77622": "AB890X",
+        "77623": "AB890X",
+        "77624": "AB890X",
+        "77625": "AB890X",
+        "77626": "AB890X",
+        "77627": "AB890X",
+        "77629": "AB890X",
+        "77630": "AB890X",
+        "77631": "AB890X",
+        "77632": "AB890X",
+        "77639": "AB890X",
+        "77640": "AB890X",
+        "77641": "AB890X",
+        "77642": "AB890X",
+        "77643": "AB890X",
+        "77650": "AB890X",
+        "77651": "AB890X",
+        "77655": "AB890X",
+        "77656": "AB890X",
+        "77657": "AB890X",
+        "77659": "AB890X",
+        "77660": "AB890X",
+        "77661": "AB890X",
+        "77662": "AB890X",
+        "77663": "AB890X",
+        "77664": "AB890X",
+        "77665": "AB890X",
+        "77670": "AB890X",
+        "77701": "AB890X",
+        "77702": "AB890X",
+        "77703": "AB890X",
+        "77704": "AB890X",
+        "77705": "AB890X",
+        "77706": "AB890X",
+        "77707": "AB890X",
+        "77708": "AB890X",
+        "77709": "AB890X",
+        "77710": "AB890X",
+        "77713": "AB890X",
+        "77720": "AB890X",
+        "77725": "AB890X",
+        "77726": "AB890X",
+        "77801": "AB890X",
+        "77802": "AB890X",
+        "77803": "AB890X",
+        "77805": "AB890X",
+        "77806": "AB890X",
+        "77807": "AB890X",
+        "77808": "AB890X",
+        "77830": "AB890X",
+        "77831": "AB890X",
+        "77833": "AB890X",
+        "77834": "AB890X",
+        "77835": "AB890X",
+        "77836": "AB890X",
+        "77837": "AB890X",
+        "77838": "AB890X",
+        "77840": "AB890X",
+        "77841": "AB890X",
+        "77842": "AB890X",
+        "77843": "AB890X",
+        "77844": "AB890X",
+        "77845": "AB890X",
+        "77850": "AB890X",
+        "77852": "AB890X",
+        "77853": "AB890X",
+        "77855": "AB890X",
+        "77856": "AB890X",
+        "77857": "AB890X",
+        "77859": "AB890X",
+        "77861": "AB890X",
+        "77862": "AB890X",
+        "77863": "AB890X",
+        "77864": "AB890X",
+        "77865": "AB890X",
+        "77866": "AB890X",
+        "77867": "AB890X",
+        "77868": "AB890X",
+        "77869": "AB890X",
+        "77870": "AB890X",
+        "77871": "AB890X",
+        "77872": "AB890X",
+        "77873": "AB890X",
+        "77875": "AB890X",
+        "77876": "AB890X",
+        "77878": "AB890X",
+        "77879": "AB890X",
+        "77880": "AB890X",
+        "77881": "AB890X",
+        "77882": "AB890X",
+        "77901": "AB890X",
+        "77902": "AB890X",
+        "77903": "AB890X",
+        "77904": "AB890X",
+        "77905": "AB890X",
+        "77950": "AB891X",
+        "77951": "AB890X",
+        "77954": "AB890X",
+        "77957": "AB890X",
+        "77960": "AB889X",
+        "77961": "AB890X",
+        "77962": "AB890X",
+        "77963": "AB889X",
+        "77964": "AB890X",
+        "77967": "AB890X",
+        "77968": "AB890X",
+        "77969": "AB890X",
+        "77970": "AB890X",
+        "77971": "AB890X",
+        "77973": "AB890X",
+        "77974": "AB890X",
+        "77975": "AB890X",
+        "77976": "AB890X",
+        "77977": "AB890X",
+        "77978": "AB890X",
+        "77979": "AB890X",
+        "77982": "AB890X",
+        "77983": "AB890X",
+        "77984": "AB890X",
+        "77986": "AB890X",
+        "77987": "AB890X",
+        "77988": "AB890X",
+        "77989": "AB890X",
+        "77990": "AB891X",
+        "77991": "AB890X",
+        "77993": "AB889X",
+        "77994": "AB890X",
+        "77995": "AB890X",
+        "78001": "AB891X",
+        "78002": "AB891X",
+        "78003": "AB891X",
+        "78004": "AB891X",
+        "78005": "AB891X",
+        "78006": "AB891X",
+        "78007": "AB891X",
+        "78008": "AB891X",
+        "78009": "AB891X",
+        "78010": "AB891X",
+        "78011": "AB891X",
+        "78012": "AB891X",
+        "78013": "AB891X",
+        "78014": "AB891X",
+        "78015": "AB891X",
+        "78016": "AB891X",
+        "78017": "AB891X",
+        "78019": "AB891X",
+        "78021": "AB891X",
+        "78022": "AB891X",
+        "78023": "AB891X",
+        "78024": "AB891X",
+        "78025": "AB891X",
+        "78026": "AB891X",
+        "78027": "AB891X",
+        "78028": "AB891X",
+        "78029": "AB891X",
+        "78039": "AB891X",
+        "78040": "AB891X",
+        "78041": "AB891X",
+        "78042": "AB891X",
+        "78043": "AB891X",
+        "78044": "AB891X",
+        "78045": "AB891X",
+        "78046": "AB891X",
+        "78049": "AB891X",
+        "78050": "AB891X",
+        "78052": "AB891X",
+        "78054": "AB891X",
+        "78055": "AB891X",
+        "78056": "AB891X",
+        "78057": "AB891X",
+        "78058": "AB891X",
+        "78059": "AB891X",
+        "78060": "AB891X",
+        "78061": "AB891X",
+        "78062": "AB891X",
+        "78063": "AB891X",
+        "78064": "AB891X",
+        "78065": "AB891X",
+        "78066": "AB891X",
+        "78067": "AB891X",
+        "78069": "AB891X",
+        "78070": "AB890X",
+        "78071": "AB891X",
+        "78072": "AB891X",
+        "78073": "AB891X",
+        "78074": "AB891X",
+        "78075": "AB891X",
+        "78076": "AB891X",
+        "78101": "AB891X",
+        "78102": "AB891X",
+        "78104": "AB891X",
+        "78107": "AB889X",
+        "78108": "AB891X",
+        "78109": "AB891X",
+        "78111": "AB891X",
+        "78112": "AB891X",
+        "78113": "AB891X",
+        "78114": "AB891X",
+        "78115": "AB891X",
+        "78116": "AB891X",
+        "78117": "AB891X",
+        "78118": "AB891X",
+        "78119": "AB891X",
+        "78121": "AB891X",
+        "78122": "AB891X",
+        "78123": "AB891X",
+        "78124": "AB891X",
+        "78125": "AB891X",
+        "78130": "AB890X",
+        "78131": "AB890X",
+        "78132": "AB890X",
+        "78133": "AB890X",
+        "78135": "AB890X",
+        "78140": "AB891X",
+        "78141": "AB890X",
+        "78142": "AB891X",
+        "78143": "AB891X",
+        "78144": "AB891X",
+        "78145": "AB891X",
+        "78146": "AB891X",
+        "78147": "AB891X",
+        "78148": "AB891X",
+        "78150": "AB891X",
+        "78151": "AB891X",
+        "78152": "AB891X",
+        "78154": "AB891X",
+        "78155": "AB891X",
+        "78156": "AB891X",
+        "78159": "AB891X",
+        "78160": "AB891X",
+        "78161": "AB891X",
+        "78162": "AB891X",
+        "78163": "AB890X",
+        "78164": "AB890X",
+        "78201": "AB891X",
+        "78202": "AB891X",
+        "78203": "AB891X",
+        "78204": "AB891X",
+        "78205": "AB891X",
+        "78206": "AB891X",
+        "78207": "AB891X",
+        "78208": "AB891X",
+        "78209": "AB891X",
+        "78210": "AB891X",
+        "78211": "AB891X",
+        "78212": "AB891X",
+        "78213": "AB891X",
+        "78214": "AB891X",
+        "78215": "AB891X",
+        "78216": "AB891X",
+        "78217": "AB891X",
+        "78218": "AB891X",
+        "78219": "AB891X",
+        "78220": "AB891X",
+        "78221": "AB891X",
+        "78222": "AB891X",
+        "78223": "AB891X",
+        "78224": "AB891X",
+        "78225": "AB891X",
+        "78226": "AB891X",
+        "78227": "AB891X",
+        "78228": "AB891X",
+        "78229": "AB891X",
+        "78230": "AB891X",
+        "78231": "AB891X",
+        "78232": "AB891X",
+        "78233": "AB891X",
+        "78234": "AB891X",
+        "78235": "AB891X",
+        "78236": "AB891X",
+        "78237": "AB891X",
+        "78238": "AB891X",
+        "78239": "AB891X",
+        "78240": "AB891X",
+        "78241": "AB891X",
+        "78242": "AB891X",
+        "78243": "AB891X",
+        "78244": "AB891X",
+        "78245": "AB891X",
+        "78246": "AB891X",
+        "78247": "AB891X",
+        "78248": "AB891X",
+        "78249": "AB891X",
+        "78250": "AB891X",
+        "78251": "AB891X",
+        "78252": "AB891X",
+        "78253": "AB891X",
+        "78254": "AB891X",
+        "78255": "AB891X",
+        "78256": "AB891X",
+        "78257": "AB891X",
+        "78258": "AB891X",
+        "78259": "AB891X",
+        "78260": "AB891X",
+        "78261": "AB891X",
+        "78262": "AB891X",
+        "78263": "AB891X",
+        "78264": "AB891X",
+        "78265": "AB891X",
+        "78266": "AB890X",
+        "78268": "AB891X",
+        "78269": "AB891X",
+        "78270": "AB891X",
+        "78275": "AB891X",
+        "78278": "AB891X",
+        "78279": "AB891X",
+        "78280": "AB891X",
+        "78283": "AB891X",
+        "78284": "AB891X",
+        "78285": "AB891X",
+        "78286": "AB891X",
+        "78287": "AB891X",
+        "78288": "AB891X",
+        "78289": "AB891X",
+        "78291": "AB891X",
+        "78292": "AB891X",
+        "78293": "AB891X",
+        "78294": "AB891X",
+        "78295": "AB891X",
+        "78296": "AB891X",
+        "78297": "AB891X",
+        "78298": "AB891X",
+        "78299": "AB891X",
+        "78330": "AB891X",
+        "78332": "AB891X",
+        "78333": "AB891X",
+        "78335": "AB891X",
+        "78336": "AB891X",
+        "78338": "AB891X",
+        "78339": "AB891X",
+        "78340": "AB891X",
+        "78341": "AB891X",
+        "78342": "AB891X",
+        "78343": "AB891X",
+        "78344": "AB891X",
+        "78347": "AB891X",
+        "78349": "AB891X",
+        "78350": "AB891X",
+        "78351": "AB891X",
+        "78352": "AB891X",
+        "78353": "AB891X",
+        "78355": "AB891X",
+        "78357": "AB891X",
+        "78358": "AB891X",
+        "78359": "AB891X",
+        "78360": "AB891X",
+        "78361": "AB891X",
+        "78362": "AB891X",
+        "78363": "AB891X",
+        "78364": "AB891X",
+        "78368": "AB891X",
+        "78369": "AB891X",
+        "78370": "AB891X",
+        "78371": "AB891X",
+        "78372": "AB891X",
+        "78373": "AB891X",
+        "78374": "AB891X",
+        "78375": "AB891X",
+        "78376": "AB891X",
+        "78377": "AB891X",
+        "78379": "AB891X",
+        "78380": "AB891X",
+        "78381": "AB891X",
+        "78382": "AB891X",
+        "78383": "AB891X",
+        "78384": "AB891X",
+        "78385": "AB891X",
+        "78387": "AB891X",
+        "78389": "AB891X",
+        "78390": "AB891X",
+        "78391": "AB891X",
+        "78393": "AB891X",
+        "78401": "AB891X",
+        "78402": "AB891X",
+        "78403": "AB891X",
+        "78404": "AB891X",
+        "78405": "AB891X",
+        "78406": "AB891X",
+        "78407": "AB891X",
+        "78408": "AB891X",
+        "78409": "AB891X",
+        "78410": "AB891X",
+        "78411": "AB891X",
+        "78412": "AB891X",
+        "78413": "AB891X",
+        "78414": "AB891X",
+        "78415": "AB891X",
+        "78416": "AB891X",
+        "78417": "AB891X",
+        "78418": "AB891X",
+        "78419": "AB891X",
+        "78426": "AB891X",
+        "78427": "AB891X",
+        "78460": "AB891X",
+        "78461": "AB891X",
+        "78463": "AB891X",
+        "78465": "AB891X",
+        "78466": "AB891X",
+        "78467": "AB891X",
+        "78468": "AB891X",
+        "78469": "AB891X",
+        "78470": "AB891X",
+        "78471": "AB891X",
+        "78472": "AB891X",
+        "78473": "AB891X",
+        "78474": "AB891X",
+        "78475": "AB891X",
+        "78476": "AB891X",
+        "78477": "AB891X",
+        "78478": "AB891X",
+        "78480": "AB891X",
+        "78501": "AB891X",
+        "78502": "AB891X",
+        "78503": "AB891X",
+        "78504": "AB891X",
+        "78505": "AB891X",
+        "78516": "AB891X",
+        "78520": "AB891X",
+        "78521": "AB891X",
+        "78522": "AB891X",
+        "78523": "AB891X",
+        "78526": "AB891X",
+        "78535": "AB891X",
+        "78536": "AB891X",
+        "78537": "AB891X",
+        "78538": "AB891X",
+        "78539": "AB891X",
+        "78540": "AB891X",
+        "78541": "AB891X",
+        "78542": "AB891X",
+        "78543": "AB891X",
+        "78545": "AB891X",
+        "78547": "AB891X",
+        "78548": "AB891X",
+        "78549": "AB891X",
+        "78550": "AB891X",
+        "78551": "AB891X",
+        "78552": "AB891X",
+        "78553": "AB891X",
+        "78557": "AB891X",
+        "78558": "AB891X",
+        "78559": "AB891X",
+        "78560": "AB891X",
+        "78561": "AB891X",
+        "78562": "AB891X",
+        "78563": "AB891X",
+        "78564": "AB891X",
+        "78565": "AB891X",
+        "78566": "AB891X",
+        "78567": "AB891X",
+        "78568": "AB891X",
+        "78569": "AB891X",
+        "78570": "AB891X",
+        "78572": "AB891X",
+        "78573": "AB891X",
+        "78574": "AB891X",
+        "78575": "AB891X",
+        "78576": "AB891X",
+        "78577": "AB891X",
+        "78578": "AB891X",
+        "78579": "AB891X",
+        "78580": "AB891X",
+        "78582": "AB891X",
+        "78583": "AB891X",
+        "78584": "AB891X",
+        "78585": "AB891X",
+        "78586": "AB891X",
+        "78588": "AB891X",
+        "78589": "AB891X",
+        "78590": "AB891X",
+        "78591": "AB891X",
+        "78592": "AB891X",
+        "78593": "AB891X",
+        "78594": "AB891X",
+        "78595": "AB891X",
+        "78596": "AB891X",
+        "78597": "AB891X",
+        "78598": "AB891X",
+        "78599": "AB891X",
+        "78602": "AB890X",
+        "78604": "AB891X",
+        "78605": "AB890X",
+        "78606": "AB890X",
+        "78607": "AB890X",
+        "78608": "AB890X",
+        "78609": "AB890X",
+        "78610": "AB890X",
+        "78611": "AB890X",
+        "78612": "AB890X",
+        "78613": "AB890X",
+        "78614": "AB891X",
+        "78615": "AB890X",
+        "78616": "AB890X",
+        "78617": "AB890X",
+        "78618": "AB890X",
+        "78619": "AB890X",
+        "78620": "AB890X",
+        "78621": "AB890X",
+        "78622": "AB890X",
+        "78623": "AB890X",
+        "78624": "AB890X",
+        "78626": "AB890X",
+        "78627": "AB890X",
+        "78628": "AB890X",
+        "78629": "AB891X",
+        "78630": "AB890X",
+        "78631": "AB890X",
+        "78632": "AB891X",
+        "78633": "AB890X",
+        "78634": "AB890X",
+        "78635": "AB890X",
+        "78636": "AB890X",
+        "78638": "AB891X",
+        "78639": "AB890X",
+        "78640": "AB890X",
+        "78641": "AB890X",
+        "78642": "AB890X",
+        "78643": "AB890X",
+        "78644": "AB890X",
+        "78645": "AB890X",
+        "78646": "AB890X",
+        "78648": "AB890X",
+        "78650": "AB890X",
+        "78651": "AB890X",
+        "78652": "AB890X",
+        "78653": "AB890X",
+        "78654": "AB890X",
+        "78655": "AB890X",
+        "78656": "AB890X",
+        "78657": "AB890X",
+        "78658": "AB891X",
+        "78659": "AB890X",
+        "78660": "AB890X",
+        "78661": "AB890X",
+        "78662": "AB890X",
+        "78663": "AB890X",
+        "78664": "AB890X",
+        "78665": "AB890X",
+        "78666": "AB890X",
+        "78667": "AB890X",
+        "78669": "AB890X",
+        "78670": "AB891X",
+        "78671": "AB890X",
+        "78672": "AB890X",
+        "78673": "AB890X",
+        "78674": "AB890X",
+        "78675": "AB890X",
+        "78676": "AB890X",
+        "78677": "AB891X",
+        "78680": "AB890X",
+        "78681": "AB890X",
+        "78682": "AB890X",
+        "78683": "AB890X",
+        "78691": "AB890X",
+        "78701": "AB890X",
+        "78702": "AB890X",
+        "78703": "AB890X",
+        "78704": "AB890X",
+        "78705": "AB890X",
+        "78708": "AB890X",
+        "78709": "AB890X",
+        "78710": "AB890X",
+        "78711": "AB890X",
+        "78712": "AB890X",
+        "78713": "AB890X",
+        "78714": "AB890X",
+        "78715": "AB890X",
+        "78716": "AB890X",
+        "78717": "AB890X",
+        "78718": "AB890X",
+        "78719": "AB890X",
+        "78720": "AB890X",
+        "78721": "AB890X",
+        "78722": "AB890X",
+        "78723": "AB890X",
+        "78724": "AB890X",
+        "78725": "AB890X",
+        "78726": "AB890X",
+        "78727": "AB890X",
+        "78728": "AB890X",
+        "78729": "AB890X",
+        "78730": "AB890X",
+        "78731": "AB890X",
+        "78732": "AB890X",
+        "78733": "AB890X",
+        "78734": "AB890X",
+        "78735": "AB890X",
+        "78736": "AB890X",
+        "78737": "AB890X",
+        "78738": "AB890X",
+        "78739": "AB890X",
+        "78741": "AB890X",
+        "78742": "AB890X",
+        "78744": "AB890X",
+        "78745": "AB890X",
+        "78746": "AB890X",
+        "78747": "AB890X",
+        "78748": "AB890X",
+        "78749": "AB890X",
+        "78750": "AB890X",
+        "78751": "AB890X",
+        "78752": "AB890X",
+        "78753": "AB890X",
+        "78754": "AB890X",
+        "78755": "AB890X",
+        "78756": "AB890X",
+        "78757": "AB890X",
+        "78758": "AB890X",
+        "78759": "AB890X",
+        "78760": "AB890X",
+        "78761": "AB890X",
+        "78762": "AB890X",
+        "78763": "AB890X",
+        "78764": "AB890X",
+        "78765": "AB890X",
+        "78766": "AB890X",
+        "78767": "AB890X",
+        "78768": "AB890X",
+        "78769": "AB890X",
+        "78772": "AB890X",
+        "78773": "AB890X",
+        "78774": "AB890X",
+        "78778": "AB890X",
+        "78779": "AB890X",
+        "78780": "AB890X",
+        "78781": "AB890X",
+        "78783": "AB890X",
+        "78785": "AB890X",
+        "78786": "AB890X",
+        "78788": "AB890X",
+        "78789": "AB890X",
+        "78798": "AB890X",
+        "78799": "AB890X",
+        "78801": "AB891X",
+        "78802": "AB891X",
+        "78827": "AB891X",
+        "78828": "AB891X",
+        "78829": "AB891X",
+        "78830": "AB891X",
+        "78832": "AB891X",
+        "78833": "AB891X",
+        "78834": "AB891X",
+        "78836": "AB891X",
+        "78837": "AB891X",
+        "78838": "AB891X",
+        "78839": "AB891X",
+        "78840": "AB891X",
+        "78841": "AB891X",
+        "78842": "AB891X",
+        "78843": "AB891X",
+        "78847": "AB891X",
+        "78850": "AB891X",
+        "78851": "AB900X",
+        "78852": "AB891X",
+        "78853": "AB891X",
+        "78860": "AB891X",
+        "78861": "AB891X",
+        "78870": "AB891X",
+        "78871": "AB891X",
+        "78872": "AB891X",
+        "78873": "AB891X",
+        "78877": "AB891X",
+        "78879": "AB891X",
+        "78880": "AB891X",
+        "78881": "AB891X",
+        "78883": "AB891X",
+        "78884": "AB891X",
+        "78885": "AB891X",
+        "78886": "AB891X",
+        "78931": "AB890X",
+        "78932": "AB890X",
+        "78933": "AB890X",
+        "78934": "AB890X",
+        "78935": "AB890X",
+        "78938": "AB890X",
+        "78940": "AB890X",
+        "78941": "AB890X",
+        "78942": "AB890X",
+        "78943": "AB890X",
+        "78944": "AB890X",
+        "78945": "AB890X",
+        "78946": "AB890X",
+        "78947": "AB890X",
+        "78948": "AB890X",
+        "78949": "AB890X",
+        "78950": "AB890X",
+        "78951": "AB890X",
+        "78952": "AB890X",
+        "78953": "AB890X",
+        "78954": "AB890X",
+        "78956": "AB890X",
+        "78957": "AB890X",
+        "78959": "AB891X",
+        "78960": "AB890X",
+        "78961": "AB890X",
+        "78962": "AB890X",
+        "78963": "AB890X",
+        "79001": "AB900X",
+        "79002": "AB900X",
+        "79003": "AB900X",
+        "79005": "AB900X",
+        "79007": "AB900X",
+        "79008": "AB900X",
+        "79009": "AB900X",
+        "79010": "AB900X",
+        "79011": "AB900X",
+        "79012": "AB900X",
+        "79013": "AB900X",
+        "79014": "AB900X",
+        "79015": "AB900X",
+        "79016": "AB900X",
+        "79018": "AB900X",
+        "79019": "AB900X",
+        "79021": "AB900X",
+        "79022": "AB900X",
+        "79024": "AB900X",
+        "79025": "AB900X",
+        "79027": "AB900X",
+        "79029": "AB900X",
+        "79031": "AB900X",
+        "79032": "AB900X",
+        "79033": "AB890X",
+        "79034": "AB900X",
+        "79035": "AB900X",
+        "79036": "AB900X",
+        "79039": "AB900X",
+        "79040": "AB900X",
+        "79041": "AB900X",
+        "79042": "AB900X",
+        "79043": "AB900X",
+        "79044": "AB900X",
+        "79045": "AB900X",
+        "79046": "AB900X",
+        "79051": "AB900X",
+        "79052": "AB900X",
+        "79053": "AB900X",
+        "79054": "AB900X",
+        "79056": "AB900X",
+        "79057": "AB900X",
+        "79058": "AB900X",
+        "79059": "AB900X",
+        "79061": "AB900X",
+        "79062": "AB900X",
+        "79063": "AB900X",
+        "79064": "AB900X",
+        "79065": "AB900X",
+        "79066": "AB900X",
+        "79068": "AB900X",
+        "79070": "AB890X",
+        "79072": "AB900X",
+        "79073": "AB900X",
+        "79077": "AB900X",
+        "79078": "AB900X",
+        "79079": "AB900X",
+        "79080": "AB900X",
+        "79081": "AB900X",
+        "79082": "AB900X",
+        "79083": "AB900X",
+        "79084": "AB900X",
+        "79085": "AB900X",
+        "79086": "AB900X",
+        "79087": "AB900X",
+        "79088": "AB900X",
+        "79091": "AB900X",
+        "79092": "AB900X",
+        "79093": "AB890X",
+        "79094": "AB900X",
+        "79095": "AB900X",
+        "79096": "AB900X",
+        "79097": "AB900X",
+        "79098": "AB900X",
+        "79101": "AB900X",
+        "79102": "AB900X",
+        "79103": "AB900X",
+        "79104": "AB900X",
+        "79105": "AB900X",
+        "79106": "AB900X",
+        "79107": "AB900X",
+        "79108": "AB900X",
+        "79109": "AB900X",
+        "79110": "AB900X",
+        "79111": "AB900X",
+        "79114": "AB900X",
+        "79116": "AB900X",
+        "79117": "AB900X",
+        "79118": "AB900X",
+        "79119": "AB900X",
+        "79120": "AB900X",
+        "79121": "AB900X",
+        "79124": "AB900X",
+        "79159": "AB900X",
+        "79166": "AB900X",
+        "79168": "AB900X",
+        "79172": "AB900X",
+        "79174": "AB900X",
+        "79178": "AB900X",
+        "79185": "AB900X",
+        "79187": "AB900X",
+        "79189": "AB900X",
+        "79201": "AB900X",
+        "79220": "AB889X",
+        "79221": "AB900X",
+        "79223": "AB900X",
+        "79225": "AB900X",
+        "79226": "AB900X",
+        "79227": "AB900X",
+        "79229": "AB889X",
+        "79230": "AB900X",
+        "79231": "AB900X",
+        "79233": "AB900X",
+        "79234": "AB900X",
+        "79235": "AB900X",
+        "79236": "AB900X",
+        "79237": "AB900X",
+        "79239": "AB900X",
+        "79240": "AB900X",
+        "79241": "AB900X",
+        "79243": "AB889X",
+        "79244": "AB900X",
+        "79245": "AB900X",
+        "79247": "AB900X",
+        "79248": "AB900X",
+        "79250": "AB900X",
+        "79251": "AB900X",
+        "79252": "AB900X",
+        "79255": "AB900X",
+        "79256": "AB900X",
+        "79257": "AB900X",
+        "79258": "AB900X",
+        "79259": "AB900X",
+        "79261": "AB900X",
+        "79311": "AB900X",
+        "79312": "AB900X",
+        "79313": "AB900X",
+        "79314": "AB900X",
+        "79316": "AB900X",
+        "79320": "AB900X",
+        "79322": "AB900X",
+        "79323": "AB900X",
+        "79324": "AB900X",
+        "79325": "AB900X",
+        "79326": "AB900X",
+        "79329": "AB900X",
+        "79330": "AB900X",
+        "79331": "AB900X",
+        "79336": "AB900X",
+        "79338": "AB900X",
+        "79339": "AB900X",
+        "79342": "AB900X",
+        "79343": "AB900X",
+        "79344": "AB900X",
+        "79345": "AB900X",
+        "79346": "AB900X",
+        "79347": "AB900X",
+        "79350": "AB900X",
+        "79351": "AB900X",
+        "79353": "AB900X",
+        "79355": "AB900X",
+        "79356": "AB900X",
+        "79357": "AB900X",
+        "79358": "AB900X",
+        "79359": "AB900X",
+        "79360": "AB900X",
+        "79363": "AB900X",
+        "79364": "AB900X",
+        "79366": "AB900X",
+        "79367": "AB900X",
+        "79369": "AB900X",
+        "79370": "AB889X",
+        "79371": "AB900X",
+        "79372": "AB900X",
+        "79373": "AB900X",
+        "79376": "AB900X",
+        "79377": "AB900X",
+        "79378": "AB900X",
+        "79379": "AB900X",
+        "79380": "AB900X",
+        "79381": "AB900X",
+        "79382": "AB900X",
+        "79383": "AB900X",
+        "79401": "AB900X",
+        "79402": "AB900X",
+        "79403": "AB900X",
+        "79404": "AB900X",
+        "79405": "AB900X",
+        "79406": "AB900X",
+        "79407": "AB900X",
+        "79408": "AB900X",
+        "79409": "AB900X",
+        "79410": "AB900X",
+        "79411": "AB900X",
+        "79412": "AB900X",
+        "79413": "AB900X",
+        "79414": "AB900X",
+        "79415": "AB900X",
+        "79416": "AB900X",
+        "79423": "AB900X",
+        "79424": "AB900X",
+        "79430": "AB900X",
+        "79452": "AB900X",
+        "79453": "AB900X",
+        "79457": "AB900X",
+        "79464": "AB900X",
+        "79490": "AB900X",
+        "79491": "AB900X",
+        "79493": "AB900X",
+        "79499": "AB900X",
+        "79501": "AB900X",
+        "79502": "AB900X",
+        "79503": "AB900X",
+        "79504": "AB900X",
+        "79505": "AB900X",
+        "79506": "AB900X",
+        "79508": "AB900X",
+        "79510": "AB900X",
+        "79511": "AB900X",
+        "79512": "AB900X",
+        "79516": "AB900X",
+        "79517": "AB900X",
+        "79518": "AB900X",
+        "79519": "AB900X",
+        "79520": "AB900X",
+        "79521": "AB900X",
+        "79525": "AB900X",
+        "79526": "AB900X",
+        "79527": "AB900X",
+        "79528": "AB900X",
+        "79529": "AB900X",
+        "79530": "AB900X",
+        "79532": "AB900X",
+        "79533": "AB900X",
+        "79534": "AB900X",
+        "79535": "AB900X",
+        "79536": "AB900X",
+        "79537": "AB900X",
+        "79538": "AB900X",
+        "79539": "AB900X",
+        "79540": "AB900X",
+        "79541": "AB900X",
+        "79543": "AB900X",
+        "79544": "AB900X",
+        "79545": "AB900X",
+        "79546": "AB900X",
+        "79547": "AB900X",
+        "79548": "AB900X",
+        "79549": "AB900X",
+        "79550": "AB900X",
+        "79553": "AB900X",
+        "79556": "AB900X",
+        "79560": "AB900X",
+        "79561": "AB900X",
+        "79562": "AB900X",
+        "79563": "AB900X",
+        "79565": "AB900X",
+        "79566": "AB900X",
+        "79567": "AB900X",
+        "79601": "AB900X",
+        "79602": "AB900X",
+        "79603": "AB900X",
+        "79604": "AB900X",
+        "79605": "AB900X",
+        "79606": "AB900X",
+        "79607": "AB900X",
+        "79608": "AB900X",
+        "79697": "AB900X",
+        "79698": "AB900X",
+        "79699": "AB900X",
+        "79701": "AB900X",
+        "79702": "AB900X",
+        "79703": "AB900X",
+        "79704": "AB900X",
+        "79705": "AB900X",
+        "79706": "AB900X",
+        "79707": "AB900X",
+        "79708": "AB900X",
+        "79710": "AB900X",
+        "79711": "AB900X",
+        "79712": "AB900X",
+        "79713": "AB900X",
+        "79714": "AB900X",
+        "79718": "AB900X",
+        "79719": "AB900X",
+        "79720": "AB900X",
+        "79721": "AB900X",
+        "79730": "AB900X",
+        "79731": "AB900X",
+        "79733": "AB900X",
+        "79734": "AB900X",
+        "79735": "AB900X",
+        "79738": "AB900X",
+        "79739": "AB900X",
+        "79740": "AB900X",
+        "79741": "AB900X",
+        "79742": "AB900X",
+        "79743": "AB900X",
+        "79744": "AB900X",
+        "79745": "AB889X",
+        "79748": "AB900X",
+        "79749": "AB900X",
+        "79752": "AB900X",
+        "79754": "AB900X",
+        "79755": "AB900X",
+        "79756": "AB900X",
+        "79758": "AB900X",
+        "79759": "AB900X",
+        "79760": "AB900X",
+        "79761": "AB900X",
+        "79762": "AB900X",
+        "79763": "AB900X",
+        "79764": "AB900X",
+        "79765": "AB900X",
+        "79766": "AB900X",
+        "79768": "AB900X",
+        "79769": "AB900X",
+        "79770": "AB900X",
+        "79772": "AB900X",
+        "79776": "AB900X",
+        "79777": "AB900X",
+        "79778": "AB900X",
+        "79780": "AB900X",
+        "79781": "AB900X",
+        "79782": "AB900X",
+        "79783": "AB900X",
+        "79785": "AB900X",
+        "79786": "AB900X",
+        "79788": "AB900X",
+        "79789": "AB889X",
+        "79821": "AB889X",
+        "79830": "AB900X",
+        "79831": "AB900X",
+        "79832": "AB900X",
+        "79834": "AB900X",
+        "79835": "AB889X",
+        "79836": "AB889X",
+        "79837": "AB889X",
+        "79838": "AB889X",
+        "79839": "AB889X",
+        "79842": "AB900X",
+        "79843": "AB900X",
+        "79845": "AB900X",
+        "79846": "AB900X",
+        "79847": "AB889X",
+        "79848": "AB900X",
+        "79849": "AB889X",
+        "79851": "AB889X",
+        "79852": "AB900X",
+        "79853": "AB889X",
+        "79854": "AB900X",
+        "79855": "AB900X",
+        "79901": "AB889X",
+        "79902": "AB889X",
+        "79903": "AB889X",
+        "79904": "AB889X",
+        "79905": "AB889X",
+        "79906": "AB889X",
+        "79907": "AB889X",
+        "79908": "AB889X",
+        "79910": "AB889X",
+        "79911": "AB889X",
+        "79912": "AB889X",
+        "79913": "AB889X",
+        "79914": "AB889X",
+        "79915": "AB889X",
+        "79916": "AB889X",
+        "79917": "AB889X",
+        "79918": "AB889X",
+        "79920": "AB889X",
+        "79922": "AB889X",
+        "79923": "AB889X",
+        "79924": "AB889X",
+        "79925": "AB889X",
+        "79926": "AB889X",
+        "79927": "AB889X",
+        "79928": "AB889X",
+        "79929": "AB889X",
+        "79930": "AB889X",
+        "79931": "AB889X",
+        "79932": "AB889X",
+        "79934": "AB889X",
+        "79935": "AB889X",
+        "79936": "AB889X",
+        "79937": "AB889X",
+        "79938": "AB889X",
+        "79940": "AB889X",
+        "79941": "AB889X",
+        "79942": "AB889X",
+        "79943": "AB889X",
+        "79944": "AB889X",
+        "79945": "AB889X",
+        "79946": "AB889X",
+        "79947": "AB889X",
+        "79948": "AB889X",
+        "79949": "AB889X",
+        "79950": "AB889X",
+        "79951": "AB889X",
+        "79952": "AB889X",
+        "79953": "AB889X",
+        "79954": "AB889X",
+        "79955": "AB889X",
+        "79958": "AB889X",
+        "79960": "AB889X",
+        "79961": "AB889X",
+        "79968": "AB889X",
+        "79976": "AB889X",
+        "79978": "AB889X",
+        "79980": "AB889X",
+        "79990": "AB889X",
+        "79995": "AB889X",
+        "79996": "AB889X",
+        "79997": "AB889X",
+        "79998": "AB889X",
+        "79999": "AB889X",
+        "80001": "AB887X",
+        "80002": "AB887X",
+        "80003": "AB887X",
+        "80004": "AB887X",
+        "80005": "AB887X",
+        "80006": "AB887X",
+        "80007": "AB887X",
+        "80010": "AB887X",
+        "80011": "AB887X",
+        "80012": "AB887X",
+        "80013": "AB887X",
+        "80014": "AB887X",
+        "80015": "AB887X",
+        "80016": "AB887X",
+        "80017": "AB887X",
+        "80018": "AB887X",
+        "80019": "AB887X",
+        "80020": "AB887X",
+        "80021": "AB887X",
+        "80022": "AB887X",
+        "80023": "AB887X",
+        "80024": "AB887X",
+        "80025": "AB887X",
+        "80026": "AB887X",
+        "80027": "AB887X",
+        "80028": "AB887X",
+        "80030": "AB887X",
+        "80031": "AB887X",
+        "80033": "AB887X",
+        "80034": "AB887X",
+        "80035": "AB887X",
+        "80036": "AB887X",
+        "80037": "AB887X",
+        "80038": "AB887X",
+        "80040": "AB887X",
+        "80041": "AB887X",
+        "80042": "AB887X",
+        "80044": "AB887X",
+        "80045": "AB887X",
+        "80046": "AB887X",
+        "80047": "AB887X",
+        "80101": "AB887X",
+        "80102": "AB887X",
+        "80103": "AB887X",
+        "80104": "AB887X",
+        "80105": "AB887X",
+        "80106": "AB887X",
+        "80107": "AB887X",
+        "80108": "AB887X",
+        "80109": "AB887X",
+        "80110": "AB887X",
+        "80111": "AB887X",
+        "80112": "AB887X",
+        "80113": "AB887X",
+        "80116": "AB887X",
+        "80117": "AB887X",
+        "80118": "AB887X",
+        "80120": "AB887X",
+        "80121": "AB887X",
+        "80122": "AB887X",
+        "80123": "AB887X",
+        "80124": "AB887X",
+        "80125": "AB887X",
+        "80126": "AB887X",
+        "80127": "AB887X",
+        "80128": "AB887X",
+        "80129": "AB887X",
+        "80130": "AB887X",
+        "80131": "AB887X",
+        "80132": "AB887X",
+        "80133": "AB887X",
+        "80134": "AB887X",
+        "80135": "AB887X",
+        "80136": "AB887X",
+        "80137": "AB887X",
+        "80138": "AB887X",
+        "80150": "AB887X",
+        "80151": "AB887X",
+        "80155": "AB887X",
+        "80160": "AB887X",
+        "80161": "AB887X",
+        "80162": "AB887X",
+        "80163": "AB887X",
+        "80165": "AB887X",
+        "80166": "AB887X",
+        "80201": "AB887X",
+        "80202": "AB887X",
+        "80203": "AB887X",
+        "80204": "AB887X",
+        "80205": "AB887X",
+        "80206": "AB887X",
+        "80207": "AB887X",
+        "80208": "AB887X",
+        "80209": "AB887X",
+        "80210": "AB887X",
+        "80211": "AB887X",
+        "80212": "AB887X",
+        "80214": "AB887X",
+        "80215": "AB887X",
+        "80216": "AB887X",
+        "80217": "AB887X",
+        "80218": "AB887X",
+        "80219": "AB887X",
+        "80220": "AB887X",
+        "80221": "AB887X",
+        "80222": "AB887X",
+        "80223": "AB887X",
+        "80224": "AB887X",
+        "80225": "AB887X",
+        "80226": "AB887X",
+        "80227": "AB887X",
+        "80228": "AB887X",
+        "80229": "AB887X",
+        "80230": "AB887X",
+        "80231": "AB887X",
+        "80232": "AB887X",
+        "80233": "AB887X",
+        "80234": "AB887X",
+        "80235": "AB887X",
+        "80236": "AB887X",
+        "80237": "AB887X",
+        "80238": "AB887X",
+        "80239": "AB887X",
+        "80241": "AB887X",
+        "80243": "AB887X",
+        "80244": "AB887X",
+        "80246": "AB887X",
+        "80247": "AB887X",
+        "80248": "AB887X",
+        "80249": "AB887X",
+        "80250": "AB887X",
+        "80251": "AB887X",
+        "80252": "AB887X",
+        "80256": "AB887X",
+        "80257": "AB887X",
+        "80259": "AB887X",
+        "80260": "AB887X",
+        "80261": "AB887X",
+        "80262": "AB887X",
+        "80263": "AB887X",
+        "80264": "AB887X",
+        "80265": "AB887X",
+        "80266": "AB887X",
+        "80271": "AB887X",
+        "80273": "AB887X",
+        "80274": "AB887X",
+        "80279": "AB887X",
+        "80280": "AB887X",
+        "80281": "AB887X",
+        "80290": "AB887X",
+        "80291": "AB887X",
+        "80293": "AB887X",
+        "80294": "AB887X",
+        "80295": "AB887X",
+        "80299": "AB887X",
+        "80301": "AB887X",
+        "80302": "AB887X",
+        "80303": "AB887X",
+        "80304": "AB887X",
+        "80305": "AB887X",
+        "80306": "AB887X",
+        "80307": "AB887X",
+        "80308": "AB887X",
+        "80309": "AB887X",
+        "80310": "AB887X",
+        "80314": "AB887X",
+        "80321": "AB887X",
+        "80322": "AB887X",
+        "80323": "AB887X",
+        "80328": "AB887X",
+        "80329": "AB887X",
+        "80401": "AB887X",
+        "80402": "AB887X",
+        "80403": "AB887X",
+        "80419": "AB887X",
+        "80420": "AB887X",
+        "80421": "AB887X",
+        "80422": "AB887X",
+        "80423": "AB887X",
+        "80424": "AB887X",
+        "80425": "AB887X",
+        "80426": "AB887X",
+        "80427": "AB887X",
+        "80428": "AB887X",
+        "80429": "AB887X",
+        "80430": "AB887X",
+        "80432": "AB887X",
+        "80433": "AB887X",
+        "80434": "AB887X",
+        "80435": "AB887X",
+        "80436": "AB887X",
+        "80437": "AB887X",
+        "80438": "AB887X",
+        "80439": "AB887X",
+        "80440": "AB887X",
+        "80442": "AB887X",
+        "80443": "AB887X",
+        "80444": "AB887X",
+        "80446": "AB887X",
+        "80447": "AB887X",
+        "80448": "AB887X",
+        "80449": "AB887X",
+        "80451": "AB887X",
+        "80452": "AB887X",
+        "80453": "AB887X",
+        "80454": "AB887X",
+        "80455": "AB887X",
+        "80456": "AB887X",
+        "80457": "AB887X",
+        "80459": "AB887X",
+        "80461": "AB887X",
+        "80463": "AB887X",
+        "80465": "AB887X",
+        "80466": "AB887X",
+        "80467": "AB887X",
+        "80468": "AB887X",
+        "80469": "AB887X",
+        "80470": "AB887X",
+        "80471": "AB887X",
+        "80473": "AB887X",
+        "80474": "AB887X",
+        "80475": "AB887X",
+        "80476": "AB887X",
+        "80477": "AB887X",
+        "80478": "AB887X",
+        "80479": "AB887X",
+        "80480": "AB887X",
+        "80481": "AB887X",
+        "80482": "AB887X",
+        "80483": "AB887X",
+        "80487": "AB887X",
+        "80488": "AB887X",
+        "80497": "AB887X",
+        "80498": "AB887X",
+        "80501": "AB887X",
+        "80502": "AB887X",
+        "80503": "AB887X",
+        "80504": "AB887X",
+        "80510": "AB887X",
+        "80511": "AB887X",
+        "80512": "AB887X",
+        "80513": "AB887X",
+        "80514": "AB887X",
+        "80515": "AB887X",
+        "80516": "AB887X",
+        "80517": "AB887X",
+        "80520": "AB887X",
+        "80521": "AB887X",
+        "80522": "AB887X",
+        "80523": "AB887X",
+        "80524": "AB887X",
+        "80525": "AB887X",
+        "80526": "AB887X",
+        "80527": "AB887X",
+        "80528": "AB887X",
+        "80530": "AB887X",
+        "80532": "AB887X",
+        "80533": "AB887X",
+        "80534": "AB887X",
+        "80535": "AB887X",
+        "80536": "AB887X",
+        "80537": "AB887X",
+        "80538": "AB887X",
+        "80539": "AB887X",
+        "80540": "AB887X",
+        "80541": "AB887X",
+        "80542": "AB887X",
+        "80543": "AB887X",
+        "80544": "AB887X",
+        "80545": "AB887X",
+        "80546": "AB887X",
+        "80547": "AB887X",
+        "80549": "AB887X",
+        "80550": "AB887X",
+        "80551": "AB887X",
+        "80553": "AB887X",
+        "80601": "AB887X",
+        "80602": "AB887X",
+        "80603": "AB887X",
+        "80610": "AB887X",
+        "80611": "AB887X",
+        "80612": "AB887X",
+        "80614": "AB887X",
+        "80615": "AB887X",
+        "80620": "AB887X",
+        "80621": "AB887X",
+        "80622": "AB887X",
+        "80623": "AB887X",
+        "80624": "AB887X",
+        "80631": "AB887X",
+        "80632": "AB887X",
+        "80633": "AB887X",
+        "80634": "AB887X",
+        "80638": "AB887X",
+        "80639": "AB887X",
+        "80640": "AB887X",
+        "80642": "AB887X",
+        "80643": "AB887X",
+        "80644": "AB887X",
+        "80645": "AB887X",
+        "80646": "AB887X",
+        "80648": "AB887X",
+        "80649": "AB887X",
+        "80650": "AB887X",
+        "80651": "AB887X",
+        "80652": "AB887X",
+        "80653": "AB887X",
+        "80654": "AB887X",
+        "80701": "AB887X",
+        "80705": "AB887X",
+        "80720": "AB887X",
+        "80721": "AB887X",
+        "80722": "AB887X",
+        "80723": "AB887X",
+        "80725": "AB887X",
+        "80726": "AB887X",
+        "80727": "AB887X",
+        "80728": "AB887X",
+        "80729": "AB887X",
+        "80731": "AB887X",
+        "80732": "AB887X",
+        "80733": "AB887X",
+        "80734": "AB887X",
+        "80735": "AB887X",
+        "80736": "AB887X",
+        "80737": "AB887X",
+        "80740": "AB887X",
+        "80741": "AB887X",
+        "80742": "AB887X",
+        "80743": "AB887X",
+        "80744": "AB887X",
+        "80745": "AB887X",
+        "80746": "AB887X",
+        "80747": "AB887X",
+        "80749": "AB887X",
+        "80750": "AB887X",
+        "80751": "AB887X",
+        "80754": "AB887X",
+        "80755": "AB887X",
+        "80757": "AB887X",
+        "80758": "AB887X",
+        "80759": "AB887X",
+        "80801": "AB887X",
+        "80802": "AB887X",
+        "80804": "AB887X",
+        "80805": "AB887X",
+        "80807": "AB887X",
+        "80808": "AB887X",
+        "80809": "AB887X",
+        "80810": "AB887X",
+        "80812": "AB887X",
+        "80813": "AB887X",
+        "80814": "AB887X",
+        "80815": "AB887X",
+        "80816": "AB887X",
+        "80817": "AB887X",
+        "80818": "AB887X",
+        "80819": "AB887X",
+        "80820": "AB887X",
+        "80821": "AB887X",
+        "80822": "AB887X",
+        "80823": "AB887X",
+        "80824": "AB887X",
+        "80825": "AB887X",
+        "80826": "AB887X",
+        "80827": "AB887X",
+        "80828": "AB887X",
+        "80829": "AB887X",
+        "80830": "AB887X",
+        "80831": "AB887X",
+        "80832": "AB887X",
+        "80833": "AB887X",
+        "80834": "AB887X",
+        "80835": "AB887X",
+        "80836": "AB887X",
+        "80840": "AB887X",
+        "80841": "AB887X",
+        "80860": "AB887X",
+        "80861": "AB887X",
+        "80862": "AB887X",
+        "80863": "AB887X",
+        "80864": "AB887X",
+        "80866": "AB887X",
+        "80901": "AB887X",
+        "80903": "AB887X",
+        "80904": "AB887X",
+        "80905": "AB887X",
+        "80906": "AB887X",
+        "80907": "AB887X",
+        "80908": "AB887X",
+        "80909": "AB887X",
+        "80910": "AB887X",
+        "80911": "AB887X",
+        "80912": "AB887X",
+        "80913": "AB887X",
+        "80914": "AB887X",
+        "80915": "AB887X",
+        "80916": "AB887X",
+        "80917": "AB887X",
+        "80918": "AB887X",
+        "80919": "AB887X",
+        "80920": "AB887X",
+        "80921": "AB887X",
+        "80922": "AB887X",
+        "80923": "AB887X",
+        "80924": "AB887X",
+        "80925": "AB887X",
+        "80926": "AB887X",
+        "80927": "AB887X",
+        "80928": "AB887X",
+        "80929": "AB887X",
+        "80930": "AB887X",
+        "80931": "AB887X",
+        "80932": "AB887X",
+        "80933": "AB887X",
+        "80934": "AB887X",
+        "80935": "AB887X",
+        "80936": "AB887X",
+        "80937": "AB887X",
+        "80938": "AB887X",
+        "80939": "AB887X",
+        "80940": "AB887X",
+        "80941": "AB887X",
+        "80942": "AB887X",
+        "80943": "AB887X",
+        "80944": "AB887X",
+        "80945": "AB887X",
+        "80946": "AB887X",
+        "80947": "AB887X",
+        "80949": "AB887X",
+        "80950": "AB887X",
+        "80951": "AB887X",
+        "80960": "AB887X",
+        "80962": "AB887X",
+        "80970": "AB887X",
+        "80977": "AB887X",
+        "80995": "AB887X",
+        "80997": "AB887X",
+        "81001": "AB887X",
+        "81002": "AB887X",
+        "81003": "AB887X",
+        "81004": "AB887X",
+        "81005": "AB887X",
+        "81006": "AB887X",
+        "81007": "AB887X",
+        "81008": "AB887X",
+        "81009": "AB887X",
+        "81010": "AB887X",
+        "81011": "AB887X",
+        "81012": "AB887X",
+        "81019": "AB887X",
+        "81020": "AB887X",
+        "81021": "AB887X",
+        "81022": "AB887X",
+        "81023": "AB887X",
+        "81024": "AB887X",
+        "81025": "AB887X",
+        "81027": "AB887X",
+        "81029": "AB887X",
+        "81030": "AB887X",
+        "81031": "AB887X",
+        "81033": "AB887X",
+        "81034": "AB887X",
+        "81036": "AB887X",
+        "81038": "AB887X",
+        "81039": "AB887X",
+        "81040": "AB887X",
+        "81041": "AB887X",
+        "81043": "AB887X",
+        "81044": "AB887X",
+        "81045": "AB887X",
+        "81046": "AB887X",
+        "81047": "AB887X",
+        "81049": "AB887X",
+        "81050": "AB887X",
+        "81052": "AB887X",
+        "81054": "AB887X",
+        "81055": "AB887X",
+        "81057": "AB887X",
+        "81058": "AB887X",
+        "81059": "AB887X",
+        "81062": "AB887X",
+        "81063": "AB887X",
+        "81064": "AB887X",
+        "81067": "AB887X",
+        "81069": "AB887X",
+        "81071": "AB887X",
+        "81073": "AB887X",
+        "81076": "AB887X",
+        "81077": "AB887X",
+        "81081": "AB887X",
+        "81082": "AB887X",
+        "81084": "AB887X",
+        "81087": "AB887X",
+        "81089": "AB887X",
+        "81090": "AB887X",
+        "81091": "AB887X",
+        "81092": "AB887X",
+        "81101": "AB887X",
+        "81102": "AB887X",
+        "81120": "AB887X",
+        "81121": "AB887X",
+        "81122": "AB889X",
+        "81123": "AB887X",
+        "81124": "AB887X",
+        "81125": "AB887X",
+        "81126": "AB887X",
+        "81127": "AB887X",
+        "81128": "AB887X",
+        "81129": "AB887X",
+        "81130": "AB887X",
+        "81131": "AB887X",
+        "81132": "AB887X",
+        "81133": "AB887X",
+        "81134": "AB887X",
+        "81135": "AB887X",
+        "81136": "AB887X",
+        "81137": "AB889X",
+        "81138": "AB887X",
+        "81140": "AB887X",
+        "81141": "AB887X",
+        "81143": "AB887X",
+        "81144": "AB887X",
+        "81146": "AB887X",
+        "81147": "AB887X",
+        "81148": "AB887X",
+        "81149": "AB887X",
+        "81151": "AB887X",
+        "81152": "AB887X",
+        "81153": "AB887X",
+        "81154": "AB887X",
+        "81155": "AB887X",
+        "81157": "AB887X",
+        "81201": "AB887X",
+        "81210": "AB887X",
+        "81211": "AB887X",
+        "81212": "AB887X",
+        "81215": "AB887X",
+        "81220": "AB887X",
+        "81221": "AB887X",
+        "81222": "AB887X",
+        "81223": "AB887X",
+        "81224": "AB887X",
+        "81225": "AB887X",
+        "81226": "AB887X",
+        "81227": "AB887X",
+        "81228": "AB887X",
+        "81230": "AB887X",
+        "81231": "AB887X",
+        "81232": "AB887X",
+        "81233": "AB887X",
+        "81235": "AB887X",
+        "81236": "AB887X",
+        "81237": "AB887X",
+        "81239": "AB887X",
+        "81240": "AB887X",
+        "81241": "AB887X",
+        "81242": "AB887X",
+        "81243": "AB887X",
+        "81244": "AB887X",
+        "81247": "AB887X",
+        "81248": "AB887X",
+        "81251": "AB887X",
+        "81252": "AB887X",
+        "81253": "AB887X",
+        "81290": "AB887X",
+        "81301": "AB889X",
+        "81302": "AB889X",
+        "81303": "AB889X",
+        "81320": "AB889X",
+        "81321": "AB889X",
+        "81323": "AB889X",
+        "81324": "AB889X",
+        "81325": "AB887X",
+        "81326": "AB889X",
+        "81327": "AB889X",
+        "81328": "AB889X",
+        "81329": "AB889X",
+        "81330": "AB889X",
+        "81331": "AB889X",
+        "81332": "AB889X",
+        "81334": "AB889X",
+        "81335": "AB889X",
+        "81345": "AB887X",
+        "81401": "AB887X",
+        "81402": "AB887X",
+        "81410": "AB887X",
+        "81411": "AB887X",
+        "81413": "AB887X",
+        "81414": "AB887X",
+        "81415": "AB887X",
+        "81416": "AB887X",
+        "81418": "AB887X",
+        "81419": "AB887X",
+        "81420": "AB887X",
+        "81422": "AB887X",
+        "81423": "AB887X",
+        "81424": "AB887X",
+        "81425": "AB887X",
+        "81426": "AB887X",
+        "81427": "AB887X",
+        "81428": "AB887X",
+        "81429": "AB887X",
+        "81430": "AB887X",
+        "81431": "AB887X",
+        "81432": "AB887X",
+        "81433": "AB887X",
+        "81434": "AB887X",
+        "81435": "AB887X",
+        "81501": "AB887X",
+        "81502": "AB887X",
+        "81503": "AB887X",
+        "81504": "AB887X",
+        "81505": "AB887X",
+        "81506": "AB887X",
+        "81507": "AB887X",
+        "81520": "AB887X",
+        "81521": "AB887X",
+        "81522": "AB887X",
+        "81523": "AB887X",
+        "81524": "AB887X",
+        "81525": "AB887X",
+        "81526": "AB887X",
+        "81527": "AB887X",
+        "81601": "AB887X",
+        "81602": "AB887X",
+        "81610": "AB892X",
+        "81611": "AB887X",
+        "81612": "AB887X",
+        "81615": "AB887X",
+        "81620": "AB887X",
+        "81621": "AB887X",
+        "81623": "AB887X",
+        "81624": "AB887X",
+        "81625": "AB887X",
+        "81626": "AB887X",
+        "81630": "AB887X",
+        "81631": "AB887X",
+        "81632": "AB887X",
+        "81633": "AB887X",
+        "81635": "AB887X",
+        "81636": "AB887X",
+        "81637": "AB887X",
+        "81638": "AB887X",
+        "81639": "AB887X",
+        "81640": "AB887X",
+        "81641": "AB887X",
+        "81642": "AB887X",
+        "81643": "AB887X",
+        "81645": "AB887X",
+        "81646": "AB887X",
+        "81647": "AB887X",
+        "81648": "AB887X",
+        "81649": "AB887X",
+        "81650": "AB887X",
+        "81652": "AB887X",
+        "81653": "AB887X",
+        "81654": "AB887X",
+        "81655": "AB887X",
+        "81656": "AB887X",
+        "81657": "AB887X",
+        "81658": "AB887X",
+        "82001": "AB887X",
+        "82002": "AB887X",
+        "82003": "AB887X",
+        "82005": "AB887X",
+        "82006": "AB887X",
+        "82007": "AB887X",
+        "82008": "AB887X",
+        "82009": "AB887X",
+        "82010": "AB887X",
+        "82050": "AB887X",
+        "82051": "AB887X",
+        "82052": "AB887X",
+        "82053": "AB887X",
+        "82054": "AB887X",
+        "82055": "AB887X",
+        "82058": "AB887X",
+        "82059": "AB887X",
+        "82060": "AB887X",
+        "82061": "AB887X",
+        "82063": "AB887X",
+        "82070": "AB887X",
+        "82071": "AB887X",
+        "82072": "AB887X",
+        "82073": "AB887X",
+        "82081": "AB887X",
+        "82082": "AB887X",
+        "82083": "AB887X",
+        "82084": "AB887X",
+        "82190": "AB887X",
+        "82201": "AB887X",
+        "82210": "AB887X",
+        "82212": "AB887X",
+        "82213": "AB887X",
+        "82214": "AB887X",
+        "82215": "AB887X",
+        "82217": "AB887X",
+        "82218": "AB887X",
+        "82219": "AB887X",
+        "82221": "AB887X",
+        "82222": "AB887X",
+        "82223": "AB887X",
+        "82224": "AB887X",
+        "82225": "AB887X",
+        "82227": "AB887X",
+        "82229": "AB887X",
+        "82240": "AB887X",
+        "82242": "AB887X",
+        "82243": "AB887X",
+        "82244": "AB887X",
+        "82301": "AB887X",
+        "82310": "AB887X",
+        "82321": "AB887X",
+        "82322": "AB887X",
+        "82323": "AB887X",
+        "82324": "AB887X",
+        "82325": "AB887X",
+        "82327": "AB887X",
+        "82329": "AB887X",
+        "82331": "AB887X",
+        "82332": "AB887X",
+        "82334": "AB887X",
+        "82335": "AB887X",
+        "82336": "AB887X",
+        "82401": "AB887X",
+        "82410": "AB887X",
+        "82411": "AB887X",
+        "82412": "AB887X",
+        "82414": "AB887X",
+        "82420": "AB887X",
+        "82421": "AB887X",
+        "82422": "AB887X",
+        "82423": "AB887X",
+        "82426": "AB887X",
+        "82428": "AB887X",
+        "82430": "AB887X",
+        "82431": "AB887X",
+        "82432": "AB887X",
+        "82433": "AB887X",
+        "82434": "AB887X",
+        "82435": "AB887X",
+        "82440": "AB887X",
+        "82441": "AB887X",
+        "82442": "AB887X",
+        "82443": "AB887X",
+        "82450": "AB887X",
+        "82501": "AB887X",
+        "82510": "AB887X",
+        "82512": "AB887X",
+        "82513": "AB887X",
+        "82514": "AB887X",
+        "82515": "AB887X",
+        "82516": "AB887X",
+        "82520": "AB887X",
+        "82523": "AB887X",
+        "82524": "AB887X",
+        "82601": "AB887X",
+        "82602": "AB887X",
+        "82604": "AB887X",
+        "82605": "AB887X",
+        "82609": "AB887X",
+        "82615": "AB887X",
+        "82620": "AB887X",
+        "82630": "AB887X",
+        "82633": "AB887X",
+        "82635": "AB887X",
+        "82636": "AB887X",
+        "82637": "AB887X",
+        "82638": "AB887X",
+        "82639": "AB887X",
+        "82640": "AB887X",
+        "82642": "AB887X",
+        "82643": "AB887X",
+        "82644": "AB887X",
+        "82646": "AB887X",
+        "82648": "AB887X",
+        "82649": "AB887X",
+        "82701": "AB887X",
+        "82710": "AB887X",
+        "82711": "AB887X",
+        "82712": "AB887X",
+        "82714": "AB887X",
+        "82715": "AB887X",
+        "82716": "AB887X",
+        "82717": "AB887X",
+        "82718": "AB887X",
+        "82720": "AB887X",
+        "82721": "AB887X",
+        "82723": "AB887X",
+        "82725": "AB887X",
+        "82727": "AB887X",
+        "82729": "AB887X",
+        "82730": "AB887X",
+        "82731": "AB887X",
+        "82732": "AB887X",
+        "82801": "AB887X",
+        "82831": "AB887X",
+        "82832": "AB887X",
+        "82833": "AB887X",
+        "82834": "AB887X",
+        "82835": "AB887X",
+        "82836": "AB887X",
+        "82837": "AB887X",
+        "82838": "AB887X",
+        "82839": "AB887X",
+        "82840": "AB887X",
+        "82842": "AB887X",
+        "82844": "AB887X",
+        "82845": "AB887X",
+        "82901": "AB887X",
+        "82902": "AB887X",
+        "82922": "AB892X",
+        "82923": "AB892X",
+        "82925": "AB892X",
+        "82929": "AB887X",
+        "82930": "AB892X",
+        "82931": "AB892X",
+        "82932": "AB887X",
+        "82933": "AB892X",
+        "82934": "AB887X",
+        "82935": "AB887X",
+        "82936": "AB892X",
+        "82937": "AB892X",
+        "82938": "AB887X",
+        "82939": "AB892X",
+        "82941": "AB892X",
+        "82942": "AB887X",
+        "82943": "AB887X",
+        "82944": "AB892X",
+        "82945": "AB887X",
+        "83001": "AB892X",
+        "83002": "AB892X",
+        "83011": "AB892X",
+        "83012": "AB892X",
+        "83013": "AB892X",
+        "83014": "AB892X",
+        "83025": "AB892X",
+        "83101": "AB892X",
+        "83110": "AB892X",
+        "83111": "AB892X",
+        "83112": "AB892X",
+        "83113": "AB892X",
+        "83114": "AB892X",
+        "83115": "AB892X",
+        "83116": "AB892X",
+        "83118": "AB892X",
+        "83119": "AB892X",
+        "83120": "AB892X",
+        "83121": "AB892X",
+        "83122": "AB892X",
+        "83123": "AB892X",
+        "83124": "AB892X",
+        "83126": "AB892X",
+        "83127": "AB892X",
+        "83128": "AB892X",
+        "83201": "AB892X",
+        "83202": "AB892X",
+        "83203": "AB892X",
+        "83204": "AB892X",
+        "83205": "AB892X",
+        "83206": "AB892X",
+        "83209": "AB892X",
+        "83210": "AB892X",
+        "83211": "AB892X",
+        "83212": "AB892X",
+        "83213": "AB892X",
+        "83214": "AB892X",
+        "83215": "AB892X",
+        "83217": "AB892X",
+        "83218": "AB892X",
+        "83220": "AB892X",
+        "83221": "AB892X",
+        "83223": "AB892X",
+        "83226": "AB892X",
+        "83227": "AB892X",
+        "83228": "AB892X",
+        "83229": "AB892X",
+        "83230": "AB892X",
+        "83232": "AB892X",
+        "83233": "AB892X",
+        "83234": "AB892X",
+        "83235": "AB892X",
+        "83236": "AB892X",
+        "83237": "AB892X",
+        "83238": "AB892X",
+        "83239": "AB892X",
+        "83241": "AB892X",
+        "83243": "AB892X",
+        "83244": "AB892X",
+        "83245": "AB892X",
+        "83246": "AB892X",
+        "83250": "AB892X",
+        "83251": "AB892X",
+        "83252": "AB892X",
+        "83253": "AB892X",
+        "83254": "AB892X",
+        "83255": "AB892X",
+        "83256": "AB892X",
+        "83261": "AB892X",
+        "83262": "AB892X",
+        "83263": "AB892X",
+        "83271": "AB892X",
+        "83272": "AB892X",
+        "83274": "AB892X",
+        "83276": "AB892X",
+        "83277": "AB892X",
+        "83278": "AB892X",
+        "83281": "AB892X",
+        "83283": "AB892X",
+        "83285": "AB892X",
+        "83286": "AB892X",
+        "83287": "AB892X",
+        "83301": "AB892X",
+        "83302": "AB892X",
+        "83303": "AB892X",
+        "83311": "AB892X",
+        "83312": "AB892X",
+        "83313": "AB892X",
+        "83314": "AB892X",
+        "83316": "AB892X",
+        "83318": "AB892X",
+        "83320": "AB892X",
+        "83321": "AB892X",
+        "83322": "AB892X",
+        "83323": "AB892X",
+        "83324": "AB892X",
+        "83325": "AB892X",
+        "83327": "AB892X",
+        "83328": "AB892X",
+        "83330": "AB892X",
+        "83332": "AB892X",
+        "83333": "AB892X",
+        "83334": "AB892X",
+        "83335": "AB892X",
+        "83336": "AB892X",
+        "83337": "AB892X",
+        "83338": "AB892X",
+        "83340": "AB892X",
+        "83341": "AB892X",
+        "83342": "AB892X",
+        "83343": "AB892X",
+        "83344": "AB892X",
+        "83346": "AB892X",
+        "83347": "AB892X",
+        "83348": "AB892X",
+        "83349": "AB892X",
+        "83350": "AB892X",
+        "83352": "AB892X",
+        "83353": "AB892X",
+        "83354": "AB892X",
+        "83355": "AB892X",
+        "83401": "AB892X",
+        "83402": "AB892X",
+        "83403": "AB892X",
+        "83404": "AB892X",
+        "83405": "AB892X",
+        "83406": "AB892X",
+        "83414": "AB892X",
+        "83415": "AB892X",
+        "83420": "AB892X",
+        "83421": "AB892X",
+        "83422": "AB892X",
+        "83423": "AB892X",
+        "83424": "AB892X",
+        "83425": "AB892X",
+        "83427": "AB892X",
+        "83428": "AB892X",
+        "83429": "AB892X",
+        "83431": "AB892X",
+        "83433": "AB892X",
+        "83434": "AB892X",
+        "83435": "AB892X",
+        "83436": "AB892X",
+        "83438": "AB892X",
+        "83440": "AB892X",
+        "83441": "AB892X",
+        "83442": "AB892X",
+        "83443": "AB892X",
+        "83444": "AB892X",
+        "83445": "AB892X",
+        "83446": "AB892X",
+        "83448": "AB892X",
+        "83449": "AB892X",
+        "83450": "AB892X",
+        "83451": "AB892X",
+        "83452": "AB892X",
+        "83454": "AB892X",
+        "83455": "AB892X",
+        "83460": "AB892X",
+        "83462": "AB892X",
+        "83463": "AB892X",
+        "83464": "AB892X",
+        "83465": "AB892X",
+        "83466": "AB892X",
+        "83467": "AB892X",
+        "83468": "AB892X",
+        "83469": "AB892X",
+        "83501": "AB890X",
+        "83520": "AB890X",
+        "83522": "AB892X",
+        "83523": "AB892X",
+        "83524": "AB890X",
+        "83525": "AB892X",
+        "83526": "AB892X",
+        "83530": "AB892X",
+        "83531": "AB892X",
+        "83533": "AB892X",
+        "83535": "AB890X",
+        "83536": "AB892X",
+        "83537": "AB890X",
+        "83539": "AB892X",
+        "83540": "AB890X",
+        "83541": "AB890X",
+        "83542": "AB892X",
+        "83543": "AB892X",
+        "83544": "AB890X",
+        "83545": "AB890X",
+        "83546": "AB890X",
+        "83547": "AB892X",
+        "83548": "AB892X",
+        "83549": "AB892X",
+        "83552": "AB892X",
+        "83553": "AB890X",
+        "83554": "AB892X",
+        "83555": "AB892X",
+        "83601": "AB892X",
+        "83602": "AB892X",
+        "83604": "AB892X",
+        "83605": "AB892X",
+        "83606": "AB892X",
+        "83607": "AB892X",
+        "83610": "AB892X",
+        "83611": "AB892X",
+        "83612": "AB892X",
+        "83615": "AB892X",
+        "83616": "AB892X",
+        "83617": "AB892X",
+        "83619": "AB892X",
+        "83622": "AB892X",
+        "83623": "AB892X",
+        "83624": "AB892X",
+        "83626": "AB892X",
+        "83627": "AB892X",
+        "83628": "AB892X",
+        "83629": "AB892X",
+        "83630": "AB892X",
+        "83631": "AB892X",
+        "83632": "AB892X",
+        "83633": "AB892X",
+        "83634": "AB892X",
+        "83635": "AB892X",
+        "83636": "AB892X",
+        "83637": "AB892X",
+        "83638": "AB892X",
+        "83639": "AB892X",
+        "83641": "AB892X",
+        "83642": "AB892X",
+        "83643": "AB892X",
+        "83644": "AB892X",
+        "83645": "AB892X",
+        "83646": "AB892X",
+        "83647": "AB892X",
+        "83648": "AB892X",
+        "83650": "AB892X",
+        "83651": "AB892X",
+        "83652": "AB892X",
+        "83653": "AB892X",
+        "83654": "AB892X",
+        "83655": "AB892X",
+        "83656": "AB892X",
+        "83657": "AB892X",
+        "83660": "AB892X",
+        "83661": "AB892X",
+        "83666": "AB892X",
+        "83669": "AB892X",
+        "83670": "AB892X",
+        "83671": "AB892X",
+        "83672": "AB892X",
+        "83676": "AB892X",
+        "83677": "AB892X",
+        "83680": "AB892X",
+        "83686": "AB892X",
+        "83687": "AB892X",
+        "83701": "AB892X",
+        "83702": "AB892X",
+        "83703": "AB892X",
+        "83704": "AB892X",
+        "83705": "AB892X",
+        "83706": "AB892X",
+        "83707": "AB892X",
+        "83708": "AB892X",
+        "83709": "AB892X",
+        "83711": "AB892X",
+        "83712": "AB892X",
+        "83713": "AB892X",
+        "83714": "AB892X",
+        "83715": "AB892X",
+        "83716": "AB892X",
+        "83717": "AB892X",
+        "83719": "AB892X",
+        "83720": "AB892X",
+        "83721": "AB892X",
+        "83722": "AB892X",
+        "83724": "AB892X",
+        "83725": "AB892X",
+        "83726": "AB892X",
+        "83727": "AB892X",
+        "83728": "AB892X",
+        "83729": "AB892X",
+        "83730": "AB892X",
+        "83731": "AB892X",
+        "83732": "AB892X",
+        "83733": "AB892X",
+        "83735": "AB892X",
+        "83756": "AB892X",
+        "83757": "AB892X",
+        "83799": "AB892X",
+        "83801": "AB890X",
+        "83802": "AB890X",
+        "83803": "AB890X",
+        "83804": "AB890X",
+        "83805": "AB890X",
+        "83806": "AB890X",
+        "83808": "AB890X",
+        "83809": "AB890X",
+        "83810": "AB890X",
+        "83811": "AB890X",
+        "83812": "AB890X",
+        "83813": "AB890X",
+        "83814": "AB890X",
+        "83815": "AB890X",
+        "83816": "AB890X",
+        "83821": "AB890X",
+        "83822": "AB890X",
+        "83823": "AB890X",
+        "83824": "AB890X",
+        "83825": "AB890X",
+        "83826": "AB890X",
+        "83827": "AB890X",
+        "83830": "AB890X",
+        "83832": "AB890X",
+        "83833": "AB890X",
+        "83834": "AB890X",
+        "83835": "AB890X",
+        "83836": "AB890X",
+        "83837": "AB890X",
+        "83839": "AB890X",
+        "83840": "AB890X",
+        "83841": "AB890X",
+        "83842": "AB890X",
+        "83843": "AB890X",
+        "83844": "AB890X",
+        "83845": "AB890X",
+        "83846": "AB890X",
+        "83847": "AB890X",
+        "83848": "AB890X",
+        "83849": "AB890X",
+        "83850": "AB890X",
+        "83851": "AB890X",
+        "83852": "AB890X",
+        "83853": "AB890X",
+        "83854": "AB890X",
+        "83855": "AB890X",
+        "83856": "AB890X",
+        "83857": "AB890X",
+        "83858": "AB890X",
+        "83860": "AB890X",
+        "83861": "AB890X",
+        "83864": "AB890X",
+        "83865": "AB890X",
+        "83866": "AB890X",
+        "83867": "AB890X",
+        "83868": "AB890X",
+        "83869": "AB890X",
+        "83870": "AB890X",
+        "83871": "AB890X",
+        "83872": "AB890X",
+        "83873": "AB890X",
+        "83874": "AB890X",
+        "83876": "AB890X",
+        "83877": "AB890X",
+        "84001": "AB892X",
+        "84002": "AB892X",
+        "84003": "AB892X",
+        "84004": "AB892X",
+        "84005": "AB892X",
+        "84006": "AB892X",
+        "84007": "AB892X",
+        "84008": "AB892X",
+        "84010": "AB892X",
+        "84011": "AB892X",
+        "84013": "AB892X",
+        "84014": "AB892X",
+        "84015": "AB892X",
+        "84016": "AB892X",
+        "84017": "AB892X",
+        "84018": "AB892X",
+        "84020": "AB892X",
+        "84021": "AB892X",
+        "84022": "AB892X",
+        "84023": "AB892X",
+        "84024": "AB892X",
+        "84025": "AB892X",
+        "84026": "AB892X",
+        "84027": "AB892X",
+        "84028": "AB892X",
+        "84029": "AB892X",
+        "84031": "AB892X",
+        "84032": "AB892X",
+        "84033": "AB892X",
+        "84034": "AB892X",
+        "84035": "AB892X",
+        "84036": "AB892X",
+        "84037": "AB892X",
+        "84038": "AB892X",
+        "84039": "AB892X",
+        "84040": "AB892X",
+        "84041": "AB892X",
+        "84042": "AB892X",
+        "84043": "AB892X",
+        "84044": "AB892X",
+        "84045": "AB892X",
+        "84046": "AB892X",
+        "84047": "AB892X",
+        "84049": "AB892X",
+        "84050": "AB892X",
+        "84051": "AB892X",
+        "84052": "AB892X",
+        "84053": "AB892X",
+        "84054": "AB892X",
+        "84055": "AB892X",
+        "84056": "AB892X",
+        "84057": "AB892X",
+        "84058": "AB892X",
+        "84059": "AB892X",
+        "84060": "AB892X",
+        "84061": "AB892X",
+        "84062": "AB892X",
+        "84063": "AB892X",
+        "84064": "AB892X",
+        "84065": "AB892X",
+        "84066": "AB892X",
+        "84067": "AB892X",
+        "84068": "AB892X",
+        "84069": "AB892X",
+        "84070": "AB892X",
+        "84071": "AB892X",
+        "84072": "AB892X",
+        "84073": "AB892X",
+        "84074": "AB892X",
+        "84075": "AB892X",
+        "84076": "AB892X",
+        "84078": "AB892X",
+        "84079": "AB892X",
+        "84080": "AB892X",
+        "84081": "AB892X",
+        "84082": "AB892X",
+        "84083": "AB892X",
+        "84084": "AB892X",
+        "84085": "AB892X",
+        "84086": "AB892X",
+        "84087": "AB892X",
+        "84088": "AB892X",
+        "84089": "AB892X",
+        "84090": "AB892X",
+        "84091": "AB892X",
+        "84092": "AB892X",
+        "84093": "AB892X",
+        "84094": "AB892X",
+        "84095": "AB892X",
+        "84096": "AB892X",
+        "84097": "AB892X",
+        "84098": "AB892X",
+        "84101": "AB892X",
+        "84102": "AB892X",
+        "84103": "AB892X",
+        "84104": "AB892X",
+        "84105": "AB892X",
+        "84106": "AB892X",
+        "84107": "AB892X",
+        "84108": "AB892X",
+        "84109": "AB892X",
+        "84110": "AB892X",
+        "84111": "AB892X",
+        "84112": "AB892X",
+        "84113": "AB892X",
+        "84114": "AB892X",
+        "84115": "AB892X",
+        "84116": "AB892X",
+        "84117": "AB892X",
+        "84118": "AB892X",
+        "84119": "AB892X",
+        "84120": "AB892X",
+        "84121": "AB892X",
+        "84122": "AB892X",
+        "84123": "AB892X",
+        "84124": "AB892X",
+        "84125": "AB892X",
+        "84126": "AB892X",
+        "84127": "AB892X",
+        "84128": "AB892X",
+        "84130": "AB892X",
+        "84131": "AB892X",
+        "84132": "AB892X",
+        "84133": "AB892X",
+        "84134": "AB892X",
+        "84136": "AB892X",
+        "84138": "AB892X",
+        "84139": "AB892X",
+        "84141": "AB892X",
+        "84143": "AB892X",
+        "84144": "AB892X",
+        "84145": "AB892X",
+        "84147": "AB892X",
+        "84148": "AB892X",
+        "84150": "AB892X",
+        "84151": "AB892X",
+        "84152": "AB892X",
+        "84157": "AB892X",
+        "84158": "AB892X",
+        "84165": "AB892X",
+        "84170": "AB892X",
+        "84171": "AB892X",
+        "84180": "AB892X",
+        "84184": "AB892X",
+        "84189": "AB892X",
+        "84190": "AB892X",
+        "84199": "AB892X",
+        "84201": "AB892X",
+        "84244": "AB892X",
+        "84301": "AB892X",
+        "84302": "AB892X",
+        "84304": "AB892X",
+        "84305": "AB892X",
+        "84306": "AB892X",
+        "84307": "AB892X",
+        "84308": "AB892X",
+        "84309": "AB892X",
+        "84310": "AB892X",
+        "84311": "AB892X",
+        "84312": "AB892X",
+        "84313": "AB892X",
+        "84314": "AB892X",
+        "84315": "AB892X",
+        "84316": "AB892X",
+        "84317": "AB892X",
+        "84318": "AB892X",
+        "84319": "AB892X",
+        "84320": "AB892X",
+        "84321": "AB892X",
+        "84322": "AB892X",
+        "84323": "AB892X",
+        "84324": "AB892X",
+        "84325": "AB892X",
+        "84326": "AB892X",
+        "84327": "AB892X",
+        "84328": "AB892X",
+        "84329": "AB892X",
+        "84330": "AB892X",
+        "84331": "AB892X",
+        "84332": "AB892X",
+        "84333": "AB892X",
+        "84334": "AB892X",
+        "84335": "AB892X",
+        "84336": "AB892X",
+        "84337": "AB892X",
+        "84338": "AB892X",
+        "84339": "AB892X",
+        "84340": "AB892X",
+        "84341": "AB892X",
+        "84401": "AB892X",
+        "84402": "AB892X",
+        "84403": "AB892X",
+        "84404": "AB892X",
+        "84405": "AB892X",
+        "84407": "AB892X",
+        "84408": "AB892X",
+        "84409": "AB892X",
+        "84412": "AB892X",
+        "84414": "AB892X",
+        "84415": "AB892X",
+        "84501": "AB892X",
+        "84510": "AB892X",
+        "84511": "AB892X",
+        "84512": "AB892X",
+        "84513": "AB892X",
+        "84515": "AB892X",
+        "84516": "AB892X",
+        "84518": "AB892X",
+        "84520": "AB892X",
+        "84521": "AB892X",
+        "84522": "AB892X",
+        "84523": "AB892X",
+        "84525": "AB892X",
+        "84526": "AB892X",
+        "84528": "AB892X",
+        "84529": "AB892X",
+        "84530": "AB892X",
+        "84531": "AB892X",
+        "84532": "AB892X",
+        "84533": "AB892X",
+        "84534": "AB892X",
+        "84535": "AB892X",
+        "84536": "AB892X",
+        "84537": "AB892X",
+        "84539": "AB892X",
+        "84540": "AB892X",
+        "84542": "AB892X",
+        "84601": "AB892X",
+        "84602": "AB892X",
+        "84603": "AB892X",
+        "84604": "AB892X",
+        "84605": "AB892X",
+        "84606": "AB892X",
+        "84620": "AB892X",
+        "84621": "AB892X",
+        "84622": "AB892X",
+        "84623": "AB892X",
+        "84624": "AB892X",
+        "84626": "AB892X",
+        "84627": "AB892X",
+        "84628": "AB892X",
+        "84629": "AB892X",
+        "84630": "AB892X",
+        "84631": "AB892X",
+        "84632": "AB892X",
+        "84633": "AB892X",
+        "84634": "AB892X",
+        "84635": "AB892X",
+        "84636": "AB892X",
+        "84637": "AB892X",
+        "84638": "AB892X",
+        "84639": "AB892X",
+        "84640": "AB892X",
+        "84642": "AB892X",
+        "84643": "AB892X",
+        "84644": "AB892X",
+        "84645": "AB892X",
+        "84646": "AB892X",
+        "84647": "AB892X",
+        "84648": "AB892X",
+        "84649": "AB892X",
+        "84651": "AB892X",
+        "84652": "AB892X",
+        "84653": "AB892X",
+        "84654": "AB892X",
+        "84655": "AB892X",
+        "84656": "AB892X",
+        "84657": "AB892X",
+        "84660": "AB892X",
+        "84662": "AB892X",
+        "84663": "AB892X",
+        "84664": "AB892X",
+        "84665": "AB892X",
+        "84667": "AB892X",
+        "84701": "AB892X",
+        "84710": "AB892X",
+        "84711": "AB892X",
+        "84712": "AB892X",
+        "84713": "AB892X",
+        "84714": "AB892X",
+        "84715": "AB892X",
+        "84716": "AB892X",
+        "84718": "AB892X",
+        "84719": "AB892X",
+        "84720": "AB892X",
+        "84721": "AB892X",
+        "84722": "AB892X",
+        "84723": "AB892X",
+        "84724": "AB892X",
+        "84725": "AB892X",
+        "84726": "AB892X",
+        "84728": "AB892X",
+        "84729": "AB892X",
+        "84730": "AB892X",
+        "84731": "AB892X",
+        "84732": "AB892X",
+        "84733": "AB892X",
+        "84734": "AB892X",
+        "84735": "AB892X",
+        "84736": "AB892X",
+        "84737": "AB892X",
+        "84738": "AB892X",
+        "84739": "AB892X",
+        "84740": "AB892X",
+        "84741": "AB892X",
+        "84742": "AB892X",
+        "84743": "AB892X",
+        "84744": "AB892X",
+        "84745": "AB892X",
+        "84746": "AB892X",
+        "84747": "AB892X",
+        "84749": "AB892X",
+        "84750": "AB892X",
+        "84751": "AB892X",
+        "84752": "AB892X",
+        "84753": "AB892X",
+        "84754": "AB892X",
+        "84755": "AB892X",
+        "84756": "AB892X",
+        "84757": "AB892X",
+        "84758": "AB892X",
+        "84759": "AB892X",
+        "84760": "AB892X",
+        "84761": "AB892X",
+        "84762": "AB892X",
+        "84763": "AB892X",
+        "84764": "AB892X",
+        "84765": "AB892X",
+        "84766": "AB892X",
+        "84767": "AB892X",
+        "84770": "AB892X",
+        "84771": "AB892X",
+        "84772": "AB892X",
+        "84773": "AB892X",
+        "84774": "AB892X",
+        "84775": "AB892X",
+        "84776": "AB892X",
+        "84779": "AB892X",
+        "84780": "AB892X",
+        "84781": "AB892X",
+        "84782": "AB892X",
+        "84783": "AB892X",
+        "84784": "AB892X",
+        "84790": "AB892X",
+        "84791": "AB892X",
+        "85001": "AB887X",
+        "85002": "AB887X",
+        "85003": "AB887X",
+        "85004": "AB887X",
+        "85005": "AB887X",
+        "85006": "AB887X",
+        "85007": "AB887X",
+        "85008": "AB887X",
+        "85009": "AB887X",
+        "85010": "AB887X",
+        "85011": "AB887X",
+        "85012": "AB887X",
+        "85013": "AB887X",
+        "85014": "AB887X",
+        "85015": "AB887X",
+        "85016": "AB887X",
+        "85017": "AB887X",
+        "85018": "AB887X",
+        "85019": "AB887X",
+        "85020": "AB887X",
+        "85021": "AB887X",
+        "85022": "AB887X",
+        "85023": "AB887X",
+        "85024": "AB887X",
+        "85025": "AB887X",
+        "85026": "AB887X",
+        "85027": "AB887X",
+        "85028": "AB887X",
+        "85029": "AB887X",
+        "85030": "AB887X",
+        "85031": "AB887X",
+        "85032": "AB887X",
+        "85033": "AB887X",
+        "85034": "AB887X",
+        "85035": "AB887X",
+        "85036": "AB887X",
+        "85037": "AB887X",
+        "85038": "AB887X",
+        "85039": "AB887X",
+        "85040": "AB887X",
+        "85041": "AB887X",
+        "85042": "AB887X",
+        "85043": "AB887X",
+        "85044": "AB887X",
+        "85045": "AB887X",
+        "85046": "AB887X",
+        "85048": "AB887X",
+        "85050": "AB887X",
+        "85051": "AB887X",
+        "85053": "AB887X",
+        "85054": "AB887X",
+        "85055": "AB887X",
+        "85060": "AB887X",
+        "85061": "AB887X",
+        "85062": "AB887X",
+        "85063": "AB887X",
+        "85064": "AB887X",
+        "85065": "AB887X",
+        "85066": "AB887X",
+        "85067": "AB887X",
+        "85068": "AB887X",
+        "85069": "AB887X",
+        "85070": "AB887X",
+        "85071": "AB887X",
+        "85072": "AB887X",
+        "85073": "AB887X",
+        "85074": "AB887X",
+        "85075": "AB887X",
+        "85076": "AB887X",
+        "85077": "AB887X",
+        "85078": "AB887X",
+        "85079": "AB887X",
+        "85080": "AB887X",
+        "85082": "AB887X",
+        "85083": "AB887X",
+        "85085": "AB887X",
+        "85086": "AB887X",
+        "85087": "AB887X",
+        "85098": "AB887X",
+        "85099": "AB887X",
+        "85118": "AB887X",
+        "85119": "AB887X",
+        "85120": "AB887X",
+        "85121": "AB887X",
+        "85122": "AB887X",
+        "85123": "AB887X",
+        "85128": "AB887X",
+        "85130": "AB887X",
+        "85131": "AB887X",
+        "85132": "AB887X",
+        "85135": "AB887X",
+        "85137": "AB887X",
+        "85138": "AB887X",
+        "85139": "AB887X",
+        "85140": "AB887X",
+        "85141": "AB887X",
+        "85142": "AB887X",
+        "85143": "AB887X",
+        "85147": "AB887X",
+        "85172": "AB887X",
+        "85173": "AB887X",
+        "85191": "AB887X",
+        "85192": "AB887X",
+        "85193": "AB887X",
+        "85194": "AB887X",
+        "85201": "AB887X",
+        "85202": "AB887X",
+        "85203": "AB887X",
+        "85204": "AB887X",
+        "85205": "AB887X",
+        "85206": "AB887X",
+        "85207": "AB887X",
+        "85208": "AB887X",
+        "85209": "AB887X",
+        "85210": "AB887X",
+        "85211": "AB887X",
+        "85212": "AB887X",
+        "85213": "AB887X",
+        "85214": "AB887X",
+        "85215": "AB887X",
+        "85216": "AB887X",
+        "85217": "AB887X",
+        "85218": "AB887X",
+        "85219": "AB887X",
+        "85220": "AB887X",
+        "85221": "AB887X",
+        "85222": "AB887X",
+        "85223": "AB887X",
+        "85224": "AB887X",
+        "85225": "AB887X",
+        "85226": "AB887X",
+        "85227": "AB887X",
+        "85228": "AB887X",
+        "85230": "AB887X",
+        "85231": "AB887X",
+        "85232": "AB887X",
+        "85233": "AB887X",
+        "85234": "AB887X",
+        "85235": "AB887X",
+        "85236": "AB887X",
+        "85237": "AB887X",
+        "85239": "AB887X",
+        "85241": "AB887X",
+        "85242": "AB887X",
+        "85243": "AB887X",
+        "85244": "AB887X",
+        "85245": "AB887X",
+        "85246": "AB887X",
+        "85247": "AB887X",
+        "85248": "AB887X",
+        "85249": "AB887X",
+        "85250": "AB887X",
+        "85251": "AB887X",
+        "85252": "AB887X",
+        "85253": "AB887X",
+        "85254": "AB887X",
+        "85255": "AB887X",
+        "85256": "AB887X",
+        "85257": "AB887X",
+        "85258": "AB887X",
+        "85259": "AB887X",
+        "85260": "AB887X",
+        "85261": "AB887X",
+        "85262": "AB887X",
+        "85263": "AB887X",
+        "85264": "AB887X",
+        "85266": "AB887X",
+        "85267": "AB887X",
+        "85268": "AB887X",
+        "85269": "AB887X",
+        "85271": "AB887X",
+        "85272": "AB887X",
+        "85273": "AB887X",
+        "85274": "AB887X",
+        "85275": "AB887X",
+        "85277": "AB887X",
+        "85278": "AB887X",
+        "85279": "AB887X",
+        "85280": "AB887X",
+        "85281": "AB887X",
+        "85282": "AB887X",
+        "85283": "AB887X",
+        "85284": "AB887X",
+        "85285": "AB887X",
+        "85286": "AB887X",
+        "85287": "AB887X",
+        "85289": "AB887X",
+        "85290": "AB887X",
+        "85291": "AB887X",
+        "85292": "AB887X",
+        "85295": "AB887X",
+        "85296": "AB887X",
+        "85297": "AB887X",
+        "85298": "AB887X",
+        "85299": "AB887X",
+        "85301": "AB887X",
+        "85302": "AB887X",
+        "85303": "AB887X",
+        "85304": "AB887X",
+        "85305": "AB887X",
+        "85306": "AB887X",
+        "85307": "AB887X",
+        "85308": "AB887X",
+        "85309": "AB887X",
+        "85310": "AB887X",
+        "85311": "AB887X",
+        "85312": "AB887X",
+        "85313": "AB887X",
+        "85318": "AB887X",
+        "85320": "AB887X",
+        "85321": "AB887X",
+        "85322": "AB887X",
+        "85323": "AB887X",
+        "85324": "AB887X",
+        "85325": "AB887X",
+        "85326": "AB887X",
+        "85327": "AB887X",
+        "85328": "AB887X",
+        "85329": "AB887X",
+        "85331": "AB887X",
+        "85332": "AB887X",
+        "85333": "AB887X",
+        "85334": "AB887X",
+        "85335": "AB887X",
+        "85336": "AB887X",
+        "85337": "AB887X",
+        "85338": "AB887X",
+        "85339": "AB887X",
+        "85340": "AB887X",
+        "85341": "AB887X",
+        "85342": "AB887X",
+        "85343": "AB887X",
+        "85344": "AB887X",
+        "85345": "AB887X",
+        "85346": "AB887X",
+        "85347": "AB887X",
+        "85348": "AB887X",
+        "85349": "AB887X",
+        "85350": "AB887X",
+        "85351": "AB887X",
+        "85352": "AB887X",
+        "85353": "AB887X",
+        "85354": "AB887X",
+        "85355": "AB887X",
+        "85356": "AB887X",
+        "85357": "AB887X",
+        "85358": "AB887X",
+        "85359": "AB887X",
+        "85360": "AB887X",
+        "85361": "AB887X",
+        "85362": "AB887X",
+        "85363": "AB887X",
+        "85364": "AB887X",
+        "85365": "AB887X",
+        "85366": "AB887X",
+        "85367": "AB887X",
+        "85369": "AB887X",
+        "85371": "AB887X",
+        "85372": "AB887X",
+        "85373": "AB887X",
+        "85374": "AB887X",
+        "85375": "AB887X",
+        "85376": "AB887X",
+        "85377": "AB887X",
+        "85378": "AB887X",
+        "85379": "AB887X",
+        "85380": "AB887X",
+        "85381": "AB887X",
+        "85382": "AB887X",
+        "85383": "AB887X",
+        "85385": "AB887X",
+        "85387": "AB887X",
+        "85388": "AB887X",
+        "85390": "AB887X",
+        "85392": "AB887X",
+        "85395": "AB887X",
+        "85396": "AB887X",
+        "85437": "AB887X",
+        "85501": "AB887X",
+        "85502": "AB887X",
+        "85530": "AB887X",
+        "85531": "AB887X",
+        "85532": "AB887X",
+        "85533": "AB887X",
+        "85534": "AB887X",
+        "85535": "AB887X",
+        "85536": "AB887X",
+        "85539": "AB887X",
+        "85540": "AB887X",
+        "85541": "AB887X",
+        "85542": "AB887X",
+        "85543": "AB887X",
+        "85544": "AB887X",
+        "85545": "AB887X",
+        "85546": "AB887X",
+        "85547": "AB887X",
+        "85548": "AB887X",
+        "85550": "AB887X",
+        "85551": "AB887X",
+        "85552": "AB887X",
+        "85553": "AB887X",
+        "85554": "AB887X",
+        "85601": "AB887X",
+        "85602": "AB887X",
+        "85603": "AB887X",
+        "85604": "AB887X",
+        "85605": "AB887X",
+        "85606": "AB887X",
+        "85607": "AB887X",
+        "85608": "AB887X",
+        "85609": "AB887X",
+        "85610": "AB887X",
+        "85611": "AB887X",
+        "85613": "AB887X",
+        "85614": "AB887X",
+        "85615": "AB887X",
+        "85616": "AB887X",
+        "85617": "AB887X",
+        "85618": "AB887X",
+        "85619": "AB887X",
+        "85620": "AB887X",
+        "85621": "AB887X",
+        "85622": "AB887X",
+        "85623": "AB887X",
+        "85624": "AB887X",
+        "85625": "AB887X",
+        "85626": "AB887X",
+        "85627": "AB887X",
+        "85628": "AB887X",
+        "85629": "AB887X",
+        "85630": "AB887X",
+        "85631": "AB887X",
+        "85632": "AB887X",
+        "85633": "AB887X",
+        "85634": "AB887X",
+        "85635": "AB887X",
+        "85636": "AB887X",
+        "85637": "AB887X",
+        "85638": "AB887X",
+        "85639": "AB887X",
+        "85640": "AB887X",
+        "85641": "AB887X",
+        "85643": "AB887X",
+        "85644": "AB887X",
+        "85645": "AB887X",
+        "85646": "AB887X",
+        "85648": "AB887X",
+        "85650": "AB887X",
+        "85652": "AB887X",
+        "85653": "AB887X",
+        "85654": "AB887X",
+        "85655": "AB887X",
+        "85658": "AB887X",
+        "85662": "AB887X",
+        "85670": "AB887X",
+        "85671": "AB887X",
+        "85701": "AB887X",
+        "85702": "AB887X",
+        "85703": "AB887X",
+        "85704": "AB887X",
+        "85705": "AB887X",
+        "85706": "AB887X",
+        "85707": "AB887X",
+        "85708": "AB887X",
+        "85709": "AB887X",
+        "85710": "AB887X",
+        "85711": "AB887X",
+        "85712": "AB887X",
+        "85713": "AB887X",
+        "85714": "AB887X",
+        "85715": "AB887X",
+        "85716": "AB887X",
+        "85717": "AB887X",
+        "85718": "AB887X",
+        "85719": "AB887X",
+        "85720": "AB887X",
+        "85721": "AB887X",
+        "85722": "AB887X",
+        "85723": "AB887X",
+        "85724": "AB887X",
+        "85725": "AB887X",
+        "85726": "AB887X",
+        "85728": "AB887X",
+        "85730": "AB887X",
+        "85731": "AB887X",
+        "85732": "AB887X",
+        "85733": "AB887X",
+        "85734": "AB887X",
+        "85735": "AB887X",
+        "85736": "AB887X",
+        "85737": "AB887X",
+        "85738": "AB887X",
+        "85739": "AB887X",
+        "85740": "AB887X",
+        "85741": "AB887X",
+        "85742": "AB887X",
+        "85743": "AB887X",
+        "85744": "AB887X",
+        "85745": "AB887X",
+        "85746": "AB887X",
+        "85747": "AB887X",
+        "85748": "AB887X",
+        "85749": "AB887X",
+        "85750": "AB887X",
+        "85751": "AB887X",
+        "85752": "AB887X",
+        "85754": "AB887X",
+        "85755": "AB887X",
+        "85757": "AB887X",
+        "85775": "AB887X",
+        "85777": "AB887X",
+        "85901": "AB887X",
+        "85902": "AB887X",
+        "85911": "AB887X",
+        "85912": "AB887X",
+        "85920": "AB887X",
+        "85922": "AB887X",
+        "85923": "AB887X",
+        "85924": "AB887X",
+        "85925": "AB887X",
+        "85926": "AB887X",
+        "85927": "AB887X",
+        "85928": "AB887X",
+        "85929": "AB887X",
+        "85930": "AB887X",
+        "85931": "AB887X",
+        "85932": "AB887X",
+        "85933": "AB887X",
+        "85934": "AB887X",
+        "85935": "AB887X",
+        "85936": "AB887X",
+        "85937": "AB887X",
+        "85938": "AB887X",
+        "85939": "AB887X",
+        "85940": "AB887X",
+        "85941": "AB887X",
+        "85942": "AB887X",
+        "86001": "AB887X",
+        "86002": "AB887X",
+        "86003": "AB887X",
+        "86004": "AB887X",
+        "86005": "AB887X",
+        "86011": "AB887X",
+        "86014": "AB887X",
+        "86015": "AB887X",
+        "86016": "AB887X",
+        "86017": "AB887X",
+        "86018": "AB887X",
+        "86020": "AB887X",
+        "86021": "AB887X",
+        "86022": "AB887X",
+        "86023": "AB887X",
+        "86024": "AB887X",
+        "86025": "AB887X",
+        "86028": "AB887X",
+        "86029": "AB887X",
+        "86030": "AB887X",
+        "86031": "AB887X",
+        "86032": "AB887X",
+        "86033": "AB887X",
+        "86034": "AB887X",
+        "86035": "AB887X",
+        "86036": "AB887X",
+        "86038": "AB887X",
+        "86039": "AB887X",
+        "86040": "AB887X",
+        "86042": "AB887X",
+        "86043": "AB887X",
+        "86044": "AB887X",
+        "86045": "AB887X",
+        "86046": "AB887X",
+        "86047": "AB887X",
+        "86052": "AB887X",
+        "86053": "AB887X",
+        "86054": "AB887X",
+        "86301": "AB887X",
+        "86302": "AB887X",
+        "86303": "AB887X",
+        "86304": "AB887X",
+        "86305": "AB887X",
+        "86312": "AB887X",
+        "86313": "AB887X",
+        "86314": "AB887X",
+        "86315": "AB887X",
+        "86320": "AB887X",
+        "86321": "AB887X",
+        "86322": "AB887X",
+        "86323": "AB887X",
+        "86324": "AB887X",
+        "86325": "AB887X",
+        "86326": "AB887X",
+        "86327": "AB887X",
+        "86329": "AB887X",
+        "86330": "AB887X",
+        "86331": "AB887X",
+        "86332": "AB887X",
+        "86333": "AB887X",
+        "86334": "AB887X",
+        "86335": "AB887X",
+        "86336": "AB887X",
+        "86337": "AB887X",
+        "86338": "AB887X",
+        "86339": "AB887X",
+        "86340": "AB887X",
+        "86341": "AB887X",
+        "86342": "AB887X",
+        "86343": "AB887X",
+        "86351": "AB887X",
+        "86401": "AB887X",
+        "86402": "AB887X",
+        "86403": "AB887X",
+        "86404": "AB887X",
+        "86405": "AB887X",
+        "86406": "AB887X",
+        "86409": "AB887X",
+        "86411": "AB887X",
+        "86412": "AB887X",
+        "86413": "AB887X",
+        "86426": "AB887X",
+        "86427": "AB887X",
+        "86429": "AB887X",
+        "86430": "AB887X",
+        "86431": "AB887X",
+        "86432": "AB887X",
+        "86433": "AB887X",
+        "86434": "AB887X",
+        "86435": "AB887X",
+        "86436": "AB887X",
+        "86437": "AB887X",
+        "86438": "AB887X",
+        "86439": "AB887X",
+        "86440": "AB887X",
+        "86441": "AB887X",
+        "86442": "AB887X",
+        "86443": "AB887X",
+        "86444": "AB887X",
+        "86445": "AB887X",
+        "86446": "AB887X",
+        "86502": "AB889X",
+        "86503": "AB889X",
+        "86504": "AB889X",
+        "86505": "AB887X",
+        "86506": "AB889X",
+        "86507": "AB889X",
+        "86508": "AB889X",
+        "86510": "AB887X",
+        "86511": "AB889X",
+        "86512": "AB889X",
+        "86514": "AB889X",
+        "86515": "AB889X",
+        "86520": "AB887X",
+        "86535": "AB889X",
+        "86538": "AB889X",
+        "86540": "AB889X",
+        "86544": "AB889X",
+        "86545": "AB889X",
+        "86547": "AB889X",
+        "86556": "AB887X",
+        "87001": "AB889X",
+        "87002": "AB889X",
+        "87004": "AB889X",
+        "87005": "AB889X",
+        "87006": "AB889X",
+        "87007": "AB889X",
+        "87008": "AB889X",
+        "87009": "AB889X",
+        "87010": "AB889X",
+        "87011": "AB889X",
+        "87012": "AB889X",
+        "87013": "AB889X",
+        "87014": "AB889X",
+        "87015": "AB889X",
+        "87016": "AB889X",
+        "87017": "AB889X",
+        "87018": "AB889X",
+        "87020": "AB889X",
+        "87021": "AB889X",
+        "87022": "AB889X",
+        "87023": "AB889X",
+        "87024": "AB889X",
+        "87025": "AB889X",
+        "87026": "AB889X",
+        "87027": "AB889X",
+        "87028": "AB889X",
+        "87029": "AB889X",
+        "87031": "AB889X",
+        "87032": "AB889X",
+        "87034": "AB889X",
+        "87035": "AB889X",
+        "87036": "AB889X",
+        "87037": "AB889X",
+        "87038": "AB889X",
+        "87040": "AB889X",
+        "87041": "AB889X",
+        "87042": "AB889X",
+        "87043": "AB889X",
+        "87044": "AB889X",
+        "87045": "AB889X",
+        "87046": "AB889X",
+        "87047": "AB889X",
+        "87048": "AB889X",
+        "87049": "AB889X",
+        "87051": "AB889X",
+        "87052": "AB889X",
+        "87053": "AB889X",
+        "87056": "AB889X",
+        "87059": "AB889X",
+        "87060": "AB889X",
+        "87061": "AB889X",
+        "87062": "AB889X",
+        "87063": "AB889X",
+        "87064": "AB889X",
+        "87068": "AB889X",
+        "87070": "AB889X",
+        "87072": "AB889X",
+        "87083": "AB889X",
+        "87101": "AB889X",
+        "87102": "AB889X",
+        "87103": "AB889X",
+        "87104": "AB889X",
+        "87105": "AB889X",
+        "87106": "AB889X",
+        "87107": "AB889X",
+        "87108": "AB889X",
+        "87109": "AB889X",
+        "87110": "AB889X",
+        "87111": "AB889X",
+        "87112": "AB889X",
+        "87113": "AB889X",
+        "87114": "AB889X",
+        "87115": "AB889X",
+        "87116": "AB889X",
+        "87117": "AB889X",
+        "87119": "AB889X",
+        "87120": "AB889X",
+        "87121": "AB889X",
+        "87122": "AB889X",
+        "87123": "AB889X",
+        "87124": "AB889X",
+        "87125": "AB889X",
+        "87131": "AB889X",
+        "87144": "AB889X",
+        "87151": "AB889X",
+        "87153": "AB889X",
+        "87154": "AB889X",
+        "87158": "AB889X",
+        "87165": "AB889X",
+        "87174": "AB889X",
+        "87176": "AB889X",
+        "87181": "AB889X",
+        "87184": "AB889X",
+        "87185": "AB889X",
+        "87187": "AB889X",
+        "87190": "AB889X",
+        "87191": "AB889X",
+        "87192": "AB889X",
+        "87193": "AB889X",
+        "87194": "AB889X",
+        "87195": "AB889X",
+        "87196": "AB889X",
+        "87197": "AB889X",
+        "87198": "AB889X",
+        "87199": "AB889X",
+        "87301": "AB889X",
+        "87302": "AB889X",
+        "87305": "AB889X",
+        "87310": "AB889X",
+        "87311": "AB889X",
+        "87312": "AB889X",
+        "87313": "AB889X",
+        "87315": "AB889X",
+        "87316": "AB889X",
+        "87317": "AB889X",
+        "87319": "AB889X",
+        "87320": "AB889X",
+        "87321": "AB889X",
+        "87322": "AB889X",
+        "87323": "AB889X",
+        "87325": "AB889X",
+        "87326": "AB889X",
+        "87327": "AB889X",
+        "87328": "AB889X",
+        "87347": "AB889X",
+        "87357": "AB889X",
+        "87364": "AB889X",
+        "87365": "AB889X",
+        "87375": "AB889X",
+        "87401": "AB889X",
+        "87402": "AB889X",
+        "87410": "AB889X",
+        "87412": "AB889X",
+        "87413": "AB889X",
+        "87415": "AB889X",
+        "87416": "AB889X",
+        "87417": "AB889X",
+        "87418": "AB889X",
+        "87419": "AB889X",
+        "87420": "AB889X",
+        "87421": "AB889X",
+        "87455": "AB889X",
+        "87461": "AB889X",
+        "87499": "AB889X",
+        "87501": "AB889X",
+        "87502": "AB889X",
+        "87503": "AB889X",
+        "87504": "AB889X",
+        "87505": "AB889X",
+        "87506": "AB889X",
+        "87507": "AB889X",
+        "87508": "AB889X",
+        "87509": "AB889X",
+        "87510": "AB889X",
+        "87511": "AB889X",
+        "87512": "AB889X",
+        "87513": "AB889X",
+        "87514": "AB889X",
+        "87515": "AB889X",
+        "87516": "AB889X",
+        "87517": "AB889X",
+        "87518": "AB889X",
+        "87519": "AB889X",
+        "87520": "AB889X",
+        "87521": "AB889X",
+        "87522": "AB889X",
+        "87523": "AB889X",
+        "87524": "AB889X",
+        "87525": "AB889X",
+        "87527": "AB889X",
+        "87528": "AB889X",
+        "87529": "AB889X",
+        "87530": "AB889X",
+        "87531": "AB889X",
+        "87532": "AB889X",
+        "87533": "AB889X",
+        "87535": "AB889X",
+        "87537": "AB889X",
+        "87538": "AB889X",
+        "87539": "AB889X",
+        "87540": "AB889X",
+        "87543": "AB889X",
+        "87544": "AB890X",
+        "87545": "AB890X",
+        "87548": "AB889X",
+        "87549": "AB889X",
+        "87551": "AB889X",
+        "87552": "AB889X",
+        "87553": "AB889X",
+        "87554": "AB889X",
+        "87556": "AB889X",
+        "87557": "AB889X",
+        "87558": "AB889X",
+        "87560": "AB889X",
+        "87562": "AB889X",
+        "87564": "AB889X",
+        "87565": "AB889X",
+        "87566": "AB889X",
+        "87567": "AB889X",
+        "87569": "AB889X",
+        "87571": "AB889X",
+        "87573": "AB889X",
+        "87574": "AB889X",
+        "87575": "AB889X",
+        "87576": "AB889X",
+        "87577": "AB889X",
+        "87578": "AB889X",
+        "87579": "AB889X",
+        "87580": "AB889X",
+        "87581": "AB889X",
+        "87582": "AB889X",
+        "87583": "AB889X",
+        "87592": "AB889X",
+        "87594": "AB889X",
+        "87701": "AB889X",
+        "87710": "AB889X",
+        "87711": "AB889X",
+        "87712": "AB889X",
+        "87713": "AB889X",
+        "87714": "AB889X",
+        "87715": "AB889X",
+        "87718": "AB889X",
+        "87722": "AB889X",
+        "87723": "AB889X",
+        "87724": "AB889X",
+        "87728": "AB889X",
+        "87729": "AB889X",
+        "87730": "AB889X",
+        "87731": "AB889X",
+        "87732": "AB889X",
+        "87733": "AB889X",
+        "87734": "AB889X",
+        "87735": "AB889X",
+        "87736": "AB889X",
+        "87740": "AB889X",
+        "87742": "AB889X",
+        "87743": "AB889X",
+        "87745": "AB889X",
+        "87746": "AB889X",
+        "87747": "AB889X",
+        "87749": "AB889X",
+        "87750": "AB889X",
+        "87752": "AB889X",
+        "87753": "AB889X",
+        "87801": "AB889X",
+        "87820": "AB889X",
+        "87821": "AB889X",
+        "87823": "AB889X",
+        "87824": "AB889X",
+        "87825": "AB889X",
+        "87827": "AB889X",
+        "87828": "AB889X",
+        "87829": "AB889X",
+        "87830": "AB889X",
+        "87831": "AB889X",
+        "87832": "AB889X",
+        "87901": "AB889X",
+        "87930": "AB889X",
+        "87931": "AB889X",
+        "87933": "AB889X",
+        "87935": "AB889X",
+        "87936": "AB889X",
+        "87937": "AB889X",
+        "87939": "AB889X",
+        "87940": "AB889X",
+        "87941": "AB889X",
+        "87942": "AB889X",
+        "87943": "AB889X",
+        "88001": "AB889X",
+        "88002": "AB889X",
+        "88003": "AB889X",
+        "88004": "AB889X",
+        "88005": "AB889X",
+        "88006": "AB889X",
+        "88007": "AB889X",
+        "88008": "AB889X",
+        "88009": "AB889X",
+        "88011": "AB889X",
+        "88012": "AB889X",
+        "88013": "AB889X",
+        "88020": "AB889X",
+        "88021": "AB889X",
+        "88022": "AB889X",
+        "88023": "AB889X",
+        "88024": "AB889X",
+        "88025": "AB889X",
+        "88026": "AB889X",
+        "88027": "AB889X",
+        "88028": "AB889X",
+        "88029": "AB889X",
+        "88030": "AB889X",
+        "88031": "AB889X",
+        "88032": "AB889X",
+        "88033": "AB889X",
+        "88034": "AB889X",
+        "88036": "AB889X",
+        "88038": "AB889X",
+        "88039": "AB889X",
+        "88040": "AB889X",
+        "88041": "AB889X",
+        "88042": "AB889X",
+        "88043": "AB889X",
+        "88044": "AB889X",
+        "88045": "AB889X",
+        "88046": "AB889X",
+        "88047": "AB889X",
+        "88048": "AB889X",
+        "88049": "AB889X",
+        "88051": "AB889X",
+        "88052": "AB889X",
+        "88053": "AB889X",
+        "88054": "AB889X",
+        "88055": "AB889X",
+        "88056": "AB889X",
+        "88058": "AB889X",
+        "88061": "AB889X",
+        "88062": "AB889X",
+        "88063": "AB889X",
+        "88065": "AB889X",
+        "88072": "AB889X",
+        "88081": "AB889X",
+        "88101": "AB900X",
+        "88102": "AB900X",
+        "88103": "AB900X",
+        "88112": "AB900X",
+        "88113": "AB889X",
+        "88114": "AB889X",
+        "88115": "AB889X",
+        "88116": "AB889X",
+        "88118": "AB889X",
+        "88119": "AB900X",
+        "88120": "AB900X",
+        "88121": "AB889X",
+        "88122": "AB889X",
+        "88123": "AB889X",
+        "88124": "AB900X",
+        "88125": "AB889X",
+        "88126": "AB889X",
+        "88130": "AB889X",
+        "88132": "AB889X",
+        "88133": "AB900X",
+        "88134": "AB900X",
+        "88135": "AB900X",
+        "88136": "AB900X",
+        "88201": "AB889X",
+        "88202": "AB889X",
+        "88203": "AB889X",
+        "88210": "AB889X",
+        "88211": "AB889X",
+        "88213": "AB889X",
+        "88220": "AB889X",
+        "88221": "AB889X",
+        "88230": "AB889X",
+        "88231": "AB889X",
+        "88232": "AB889X",
+        "88240": "AB889X",
+        "88241": "AB889X",
+        "88242": "AB889X",
+        "88244": "AB889X",
+        "88250": "AB889X",
+        "88252": "AB889X",
+        "88253": "AB889X",
+        "88254": "AB889X",
+        "88255": "AB889X",
+        "88256": "AB889X",
+        "88260": "AB889X",
+        "88262": "AB889X",
+        "88263": "AB889X",
+        "88264": "AB889X",
+        "88265": "AB889X",
+        "88267": "AB889X",
+        "88268": "AB889X",
+        "88301": "AB889X",
+        "88310": "AB889X",
+        "88311": "AB889X",
+        "88312": "AB889X",
+        "88314": "AB889X",
+        "88316": "AB889X",
+        "88317": "AB889X",
+        "88318": "AB889X",
+        "88321": "AB889X",
+        "88323": "AB889X",
+        "88324": "AB889X",
+        "88325": "AB889X",
+        "88330": "AB889X",
+        "88336": "AB889X",
+        "88337": "AB889X",
+        "88338": "AB889X",
+        "88339": "AB889X",
+        "88340": "AB889X",
+        "88341": "AB889X",
+        "88342": "AB889X",
+        "88343": "AB889X",
+        "88344": "AB889X",
+        "88345": "AB889X",
+        "88346": "AB889X",
+        "88347": "AB889X",
+        "88348": "AB889X",
+        "88349": "AB889X",
+        "88350": "AB889X",
+        "88351": "AB889X",
+        "88352": "AB889X",
+        "88353": "AB889X",
+        "88354": "AB889X",
+        "88355": "AB889X",
+        "88401": "AB889X",
+        "88410": "AB889X",
+        "88411": "AB889X",
+        "88414": "AB889X",
+        "88415": "AB889X",
+        "88416": "AB889X",
+        "88417": "AB889X",
+        "88418": "AB889X",
+        "88419": "AB889X",
+        "88421": "AB889X",
+        "88422": "AB889X",
+        "88424": "AB889X",
+        "88426": "AB889X",
+        "88427": "AB889X",
+        "88430": "AB889X",
+        "88431": "AB889X",
+        "88433": "AB889X",
+        "88434": "AB889X",
+        "88435": "AB889X",
+        "88436": "AB889X",
+        "88439": "AB889X",
+        "88510": "AB889X",
+        "88511": "AB889X",
+        "88512": "AB889X",
+        "88513": "AB889X",
+        "88514": "AB889X",
+        "88515": "AB889X",
+        "88516": "AB889X",
+        "88517": "AB889X",
+        "88518": "AB889X",
+        "88519": "AB889X",
+        "88520": "AB889X",
+        "88521": "AB889X",
+        "88523": "AB889X",
+        "88524": "AB889X",
+        "88525": "AB889X",
+        "88526": "AB889X",
+        "88527": "AB889X",
+        "88528": "AB889X",
+        "88529": "AB889X",
+        "88530": "AB889X",
+        "88531": "AB889X",
+        "88532": "AB889X",
+        "88533": "AB889X",
+        "88534": "AB889X",
+        "88535": "AB889X",
+        "88536": "AB889X",
+        "88538": "AB889X",
+        "88539": "AB889X",
+        "88540": "AB889X",
+        "88541": "AB889X",
+        "88542": "AB889X",
+        "88543": "AB889X",
+        "88544": "AB889X",
+        "88545": "AB889X",
+        "88546": "AB889X",
+        "88547": "AB889X",
+        "88548": "AB889X",
+        "88549": "AB889X",
+        "88550": "AB889X",
+        "88553": "AB889X",
+        "88554": "AB889X",
+        "88555": "AB889X",
+        "88556": "AB889X",
+        "88557": "AB889X",
+        "88558": "AB889X",
+        "88559": "AB889X",
+        "88560": "AB889X",
+        "88561": "AB889X",
+        "88562": "AB889X",
+        "88563": "AB889X",
+        "88565": "AB889X",
+        "88566": "AB889X",
+        "88567": "AB889X",
+        "88568": "AB889X",
+        "88569": "AB889X",
+        "88570": "AB889X",
+        "88571": "AB889X",
+        "88572": "AB889X",
+        "88573": "AB889X",
+        "88574": "AB889X",
+        "88575": "AB889X",
+        "88576": "AB889X",
+        "88577": "AB889X",
+        "88578": "AB889X",
+        "88579": "AB889X",
+        "88580": "AB889X",
+        "88581": "AB889X",
+        "88582": "AB889X",
+        "88583": "AB889X",
+        "88584": "AB889X",
+        "88585": "AB889X",
+        "88586": "AB889X",
+        "88587": "AB889X",
+        "88588": "AB889X",
+        "88589": "AB889X",
+        "88590": "AB889X",
+        "88595": "AB889X",
+        "90001": "AB890X",
+        "90002": "AB890X",
+        "90003": "AB890X",
+        "90004": "AB890X",
+        "90005": "AB890X",
+        "90006": "AB890X",
+        "90007": "AB890X",
+        "90008": "AB890X",
+        "90009": "AB890X",
+        "90010": "AB890X",
+        "90011": "AB890X",
+        "90012": "AB890X",
+        "90013": "AB890X",
+        "90014": "AB890X",
+        "90015": "AB890X",
+        "90016": "AB890X",
+        "90017": "AB890X",
+        "90018": "AB890X",
+        "90019": "AB890X",
+        "90020": "AB890X",
+        "90021": "AB890X",
+        "90022": "AB890X",
+        "90023": "AB890X",
+        "90024": "AB890X",
+        "90025": "AB890X",
+        "90026": "AB890X",
+        "90027": "AB890X",
+        "90028": "AB890X",
+        "90029": "AB890X",
+        "90030": "AB890X",
+        "90031": "AB890X",
+        "90032": "AB890X",
+        "90033": "AB890X",
+        "90034": "AB890X",
+        "90035": "AB890X",
+        "90036": "AB890X",
+        "90037": "AB890X",
+        "90038": "AB890X",
+        "90039": "AB890X",
+        "90040": "AB890X",
+        "90041": "AB890X",
+        "90042": "AB890X",
+        "90043": "AB890X",
+        "90044": "AB890X",
+        "90045": "AB890X",
+        "90046": "AB890X",
+        "90047": "AB890X",
+        "90048": "AB890X",
+        "90049": "AB890X",
+        "90050": "AB890X",
+        "90051": "AB890X",
+        "90052": "AB890X",
+        "90053": "AB890X",
+        "90054": "AB890X",
+        "90055": "AB890X",
+        "90056": "AB890X",
+        "90057": "AB890X",
+        "90058": "AB890X",
+        "90059": "AB890X",
+        "90060": "AB890X",
+        "90061": "AB890X",
+        "90062": "AB890X",
+        "90063": "AB890X",
+        "90064": "AB890X",
+        "90065": "AB890X",
+        "90066": "AB890X",
+        "90067": "AB890X",
+        "90068": "AB890X",
+        "90069": "AB890X",
+        "90070": "AB890X",
+        "90071": "AB890X",
+        "90072": "AB890X",
+        "90073": "AB890X",
+        "90074": "AB890X",
+        "90075": "AB890X",
+        "90076": "AB890X",
+        "90077": "AB890X",
+        "90078": "AB890X",
+        "90079": "AB890X",
+        "90080": "AB890X",
+        "90081": "AB890X",
+        "90082": "AB890X",
+        "90083": "AB890X",
+        "90084": "AB890X",
+        "90086": "AB890X",
+        "90087": "AB890X",
+        "90088": "AB890X",
+        "90089": "AB890X",
+        "90091": "AB890X",
+        "90093": "AB890X",
+        "90094": "AB890X",
+        "90095": "AB890X",
+        "90096": "AB890X",
+        "90099": "AB890X",
+        "90101": "AB890X",
+        "90102": "AB890X",
+        "90103": "AB890X",
+        "90189": "AB890X",
+        "90201": "AB890X",
+        "90202": "AB890X",
+        "90209": "AB890X",
+        "90210": "AB890X",
+        "90211": "AB890X",
+        "90212": "AB890X",
+        "90213": "AB890X",
+        "90220": "AB890X",
+        "90221": "AB890X",
+        "90222": "AB890X",
+        "90223": "AB890X",
+        "90224": "AB890X",
+        "90230": "AB890X",
+        "90231": "AB890X",
+        "90232": "AB890X",
+        "90233": "AB890X",
+        "90239": "AB890X",
+        "90240": "AB890X",
+        "90241": "AB890X",
+        "90242": "AB890X",
+        "90245": "AB890X",
+        "90247": "AB890X",
+        "90248": "AB890X",
+        "90249": "AB890X",
+        "90250": "AB890X",
+        "90251": "AB890X",
+        "90254": "AB890X",
+        "90255": "AB890X",
+        "90260": "AB890X",
+        "90261": "AB890X",
+        "90262": "AB890X",
+        "90263": "AB890X",
+        "90264": "AB890X",
+        "90265": "AB890X",
+        "90266": "AB890X",
+        "90267": "AB890X",
+        "90270": "AB890X",
+        "90272": "AB890X",
+        "90274": "AB890X",
+        "90275": "AB890X",
+        "90277": "AB890X",
+        "90278": "AB890X",
+        "90280": "AB890X",
+        "90290": "AB890X",
+        "90291": "AB890X",
+        "90292": "AB890X",
+        "90293": "AB890X",
+        "90294": "AB890X",
+        "90295": "AB890X",
+        "90296": "AB890X",
+        "90301": "AB890X",
+        "90302": "AB890X",
+        "90303": "AB890X",
+        "90304": "AB890X",
+        "90305": "AB890X",
+        "90306": "AB890X",
+        "90307": "AB890X",
+        "90308": "AB890X",
+        "90309": "AB890X",
+        "90310": "AB890X",
+        "90311": "AB890X",
+        "90312": "AB890X",
+        "90313": "AB890X",
+        "90397": "AB890X",
+        "90398": "AB890X",
+        "90401": "AB890X",
+        "90402": "AB890X",
+        "90403": "AB890X",
+        "90404": "AB890X",
+        "90405": "AB890X",
+        "90406": "AB890X",
+        "90407": "AB890X",
+        "90408": "AB890X",
+        "90409": "AB890X",
+        "90410": "AB890X",
+        "90411": "AB890X",
+        "90501": "AB890X",
+        "90502": "AB890X",
+        "90503": "AB890X",
+        "90504": "AB890X",
+        "90505": "AB890X",
+        "90506": "AB890X",
+        "90507": "AB890X",
+        "90508": "AB890X",
+        "90509": "AB890X",
+        "90510": "AB890X",
+        "90601": "AB890X",
+        "90602": "AB890X",
+        "90603": "AB890X",
+        "90604": "AB890X",
+        "90605": "AB890X",
+        "90606": "AB890X",
+        "90607": "AB890X",
+        "90608": "AB890X",
+        "90609": "AB890X",
+        "90610": "AB890X",
+        "90612": "AB890X",
+        "90620": "AB890X",
+        "90621": "AB890X",
+        "90622": "AB890X",
+        "90623": "AB890X",
+        "90624": "AB890X",
+        "90630": "AB890X",
+        "90631": "AB890X",
+        "90632": "AB890X",
+        "90633": "AB890X",
+        "90637": "AB890X",
+        "90638": "AB890X",
+        "90639": "AB890X",
+        "90640": "AB890X",
+        "90650": "AB890X",
+        "90651": "AB890X",
+        "90652": "AB890X",
+        "90659": "AB890X",
+        "90660": "AB890X",
+        "90661": "AB890X",
+        "90662": "AB890X",
+        "90670": "AB890X",
+        "90671": "AB890X",
+        "90680": "AB890X",
+        "90701": "AB890X",
+        "90702": "AB890X",
+        "90703": "AB890X",
+        "90704": "AB890X",
+        "90706": "AB890X",
+        "90707": "AB890X",
+        "90710": "AB890X",
+        "90711": "AB890X",
+        "90712": "AB890X",
+        "90713": "AB890X",
+        "90714": "AB890X",
+        "90715": "AB890X",
+        "90716": "AB890X",
+        "90717": "AB890X",
+        "90720": "AB890X",
+        "90721": "AB890X",
+        "90723": "AB890X",
+        "90731": "AB890X",
+        "90732": "AB890X",
+        "90733": "AB890X",
+        "90734": "AB890X",
+        "90740": "AB890X",
+        "90742": "AB890X",
+        "90743": "AB890X",
+        "90744": "AB890X",
+        "90745": "AB890X",
+        "90746": "AB890X",
+        "90747": "AB890X",
+        "90748": "AB890X",
+        "90749": "AB890X",
+        "90755": "AB890X",
+        "90801": "AB890X",
+        "90802": "AB890X",
+        "90803": "AB890X",
+        "90804": "AB890X",
+        "90805": "AB890X",
+        "90806": "AB890X",
+        "90807": "AB890X",
+        "90808": "AB890X",
+        "90809": "AB890X",
+        "90810": "AB890X",
+        "90813": "AB890X",
+        "90814": "AB890X",
+        "90815": "AB890X",
+        "90822": "AB890X",
+        "90831": "AB890X",
+        "90832": "AB890X",
+        "90833": "AB890X",
+        "90834": "AB890X",
+        "90835": "AB890X",
+        "90840": "AB890X",
+        "90842": "AB890X",
+        "90844": "AB890X",
+        "90845": "AB890X",
+        "90846": "AB890X",
+        "90847": "AB890X",
+        "90848": "AB890X",
+        "90853": "AB890X",
+        "90888": "AB890X",
+        "90895": "AB890X",
+        "90899": "AB890X",
+        "91001": "AB890X",
+        "91003": "AB890X",
+        "91006": "AB890X",
+        "91007": "AB890X",
+        "91009": "AB890X",
+        "91010": "AB890X",
+        "91011": "AB890X",
+        "91012": "AB890X",
+        "91016": "AB890X",
+        "91017": "AB890X",
+        "91020": "AB890X",
+        "91021": "AB890X",
+        "91023": "AB890X",
+        "91024": "AB890X",
+        "91025": "AB890X",
+        "91030": "AB890X",
+        "91031": "AB890X",
+        "91040": "AB890X",
+        "91041": "AB890X",
+        "91042": "AB890X",
+        "91043": "AB890X",
+        "91046": "AB890X",
+        "91066": "AB890X",
+        "91077": "AB890X",
+        "91101": "AB890X",
+        "91102": "AB890X",
+        "91103": "AB890X",
+        "91104": "AB890X",
+        "91105": "AB890X",
+        "91106": "AB890X",
+        "91107": "AB890X",
+        "91108": "AB890X",
+        "91109": "AB890X",
+        "91110": "AB890X",
+        "91114": "AB890X",
+        "91115": "AB890X",
+        "91116": "AB890X",
+        "91117": "AB890X",
+        "91118": "AB890X",
+        "91121": "AB890X",
+        "91123": "AB890X",
+        "91124": "AB890X",
+        "91125": "AB890X",
+        "91126": "AB890X",
+        "91129": "AB890X",
+        "91131": "AB890X",
+        "91182": "AB890X",
+        "91184": "AB890X",
+        "91185": "AB890X",
+        "91188": "AB890X",
+        "91189": "AB890X",
+        "91191": "AB890X",
+        "91199": "AB890X",
+        "91201": "AB890X",
+        "91202": "AB890X",
+        "91203": "AB890X",
+        "91204": "AB890X",
+        "91205": "AB890X",
+        "91206": "AB890X",
+        "91207": "AB890X",
+        "91208": "AB890X",
+        "91209": "AB890X",
+        "91210": "AB890X",
+        "91214": "AB890X",
+        "91221": "AB890X",
+        "91222": "AB890X",
+        "91224": "AB890X",
+        "91225": "AB890X",
+        "91226": "AB890X",
+        "91301": "AB890X",
+        "91302": "AB890X",
+        "91303": "AB890X",
+        "91304": "AB890X",
+        "91305": "AB890X",
+        "91306": "AB890X",
+        "91307": "AB890X",
+        "91308": "AB890X",
+        "91309": "AB890X",
+        "91310": "AB890X",
+        "91311": "AB890X",
+        "91313": "AB890X",
+        "91316": "AB890X",
+        "91319": "AB890X",
+        "91320": "AB890X",
+        "91321": "AB890X",
+        "91322": "AB890X",
+        "91324": "AB890X",
+        "91325": "AB890X",
+        "91326": "AB890X",
+        "91327": "AB890X",
+        "91328": "AB890X",
+        "91329": "AB890X",
+        "91330": "AB890X",
+        "91331": "AB890X",
+        "91333": "AB890X",
+        "91334": "AB890X",
+        "91335": "AB890X",
+        "91337": "AB890X",
+        "91340": "AB890X",
+        "91341": "AB890X",
+        "91342": "AB890X",
+        "91343": "AB890X",
+        "91344": "AB890X",
+        "91345": "AB890X",
+        "91346": "AB890X",
+        "91350": "AB890X",
+        "91351": "AB890X",
+        "91352": "AB890X",
+        "91353": "AB890X",
+        "91354": "AB890X",
+        "91355": "AB890X",
+        "91356": "AB890X",
+        "91357": "AB890X",
+        "91358": "AB890X",
+        "91359": "AB890X",
+        "91360": "AB890X",
+        "91361": "AB890X",
+        "91362": "AB890X",
+        "91363": "AB890X",
+        "91364": "AB890X",
+        "91365": "AB890X",
+        "91367": "AB890X",
+        "91371": "AB890X",
+        "91372": "AB890X",
+        "91376": "AB890X",
+        "91377": "AB890X",
+        "91380": "AB890X",
+        "91381": "AB890X",
+        "91382": "AB890X",
+        "91383": "AB890X",
+        "91384": "AB890X",
+        "91385": "AB890X",
+        "91386": "AB890X",
+        "91387": "AB890X",
+        "91388": "AB890X",
+        "91390": "AB890X",
+        "91392": "AB890X",
+        "91393": "AB890X",
+        "91394": "AB890X",
+        "91395": "AB890X",
+        "91396": "AB890X",
+        "91399": "AB890X",
+        "91401": "AB890X",
+        "91402": "AB890X",
+        "91403": "AB890X",
+        "91404": "AB890X",
+        "91405": "AB890X",
+        "91406": "AB890X",
+        "91407": "AB890X",
+        "91408": "AB890X",
+        "91409": "AB890X",
+        "91410": "AB890X",
+        "91411": "AB890X",
+        "91412": "AB890X",
+        "91413": "AB890X",
+        "91416": "AB890X",
+        "91423": "AB890X",
+        "91426": "AB890X",
+        "91436": "AB890X",
+        "91470": "AB890X",
+        "91482": "AB890X",
+        "91495": "AB890X",
+        "91496": "AB890X",
+        "91497": "AB890X",
+        "91499": "AB890X",
+        "91501": "AB890X",
+        "91502": "AB890X",
+        "91503": "AB890X",
+        "91504": "AB890X",
+        "91505": "AB890X",
+        "91506": "AB890X",
+        "91507": "AB890X",
+        "91508": "AB890X",
+        "91510": "AB890X",
+        "91521": "AB890X",
+        "91522": "AB890X",
+        "91523": "AB890X",
+        "91526": "AB890X",
+        "91601": "AB890X",
+        "91602": "AB890X",
+        "91603": "AB890X",
+        "91604": "AB890X",
+        "91605": "AB890X",
+        "91606": "AB890X",
+        "91607": "AB890X",
+        "91608": "AB890X",
+        "91609": "AB890X",
+        "91610": "AB890X",
+        "91611": "AB890X",
+        "91612": "AB890X",
+        "91614": "AB890X",
+        "91615": "AB890X",
+        "91616": "AB890X",
+        "91617": "AB890X",
+        "91618": "AB890X",
+        "91701": "AB890X",
+        "91702": "AB890X",
+        "91706": "AB890X",
+        "91708": "AB890X",
+        "91709": "AB890X",
+        "91710": "AB890X",
+        "91711": "AB890X",
+        "91714": "AB890X",
+        "91715": "AB890X",
+        "91716": "AB890X",
+        "91722": "AB890X",
+        "91723": "AB890X",
+        "91724": "AB890X",
+        "91729": "AB890X",
+        "91730": "AB890X",
+        "91731": "AB890X",
+        "91732": "AB890X",
+        "91733": "AB890X",
+        "91734": "AB890X",
+        "91735": "AB890X",
+        "91737": "AB890X",
+        "91739": "AB890X",
+        "91740": "AB890X",
+        "91741": "AB890X",
+        "91743": "AB890X",
+        "91744": "AB890X",
+        "91745": "AB890X",
+        "91746": "AB890X",
+        "91747": "AB890X",
+        "91748": "AB890X",
+        "91749": "AB890X",
+        "91750": "AB890X",
+        "91752": "AB890X",
+        "91754": "AB890X",
+        "91755": "AB890X",
+        "91756": "AB890X",
+        "91758": "AB890X",
+        "91759": "AB890X",
+        "91761": "AB890X",
+        "91762": "AB890X",
+        "91763": "AB890X",
+        "91764": "AB890X",
+        "91765": "AB890X",
+        "91766": "AB890X",
+        "91767": "AB890X",
+        "91768": "AB890X",
+        "91769": "AB890X",
+        "91770": "AB890X",
+        "91771": "AB890X",
+        "91772": "AB890X",
+        "91773": "AB890X",
+        "91775": "AB890X",
+        "91776": "AB890X",
+        "91778": "AB890X",
+        "91780": "AB890X",
+        "91784": "AB890X",
+        "91785": "AB890X",
+        "91786": "AB890X",
+        "91788": "AB890X",
+        "91789": "AB890X",
+        "91790": "AB890X",
+        "91791": "AB890X",
+        "91792": "AB890X",
+        "91793": "AB890X",
+        "91795": "AB890X",
+        "91797": "AB890X",
+        "91798": "AB890X",
+        "91799": "AB890X",
+        "91801": "AB890X",
+        "91802": "AB890X",
+        "91803": "AB890X",
+        "91804": "AB890X",
+        "91841": "AB890X",
+        "91896": "AB890X",
+        "91899": "AB890X",
+        "91901": "AB890X",
+        "91902": "AB890X",
+        "91903": "AB890X",
+        "91905": "AB890X",
+        "91906": "AB890X",
+        "91908": "AB890X",
+        "91909": "AB890X",
+        "91910": "AB890X",
+        "91911": "AB890X",
+        "91912": "AB890X",
+        "91913": "AB890X",
+        "91914": "AB890X",
+        "91915": "AB890X",
+        "91916": "AB890X",
+        "91917": "AB890X",
+        "91921": "AB890X",
+        "91931": "AB890X",
+        "91932": "AB890X",
+        "91933": "AB890X",
+        "91934": "AB890X",
+        "91935": "AB890X",
+        "91941": "AB890X",
+        "91942": "AB890X",
+        "91943": "AB890X",
+        "91944": "AB890X",
+        "91945": "AB890X",
+        "91946": "AB890X",
+        "91947": "AB890X",
+        "91948": "AB890X",
+        "91950": "AB890X",
+        "91951": "AB890X",
+        "91962": "AB890X",
+        "91963": "AB890X",
+        "91976": "AB890X",
+        "91977": "AB890X",
+        "91978": "AB890X",
+        "91979": "AB890X",
+        "91980": "AB890X",
+        "91987": "AB890X",
+        "91990": "AB890X",
+        "92003": "AB890X",
+        "92004": "AB890X",
+        "92007": "AB890X",
+        "92008": "AB890X",
+        "92009": "AB890X",
+        "92010": "AB890X",
+        "92011": "AB890X",
+        "92013": "AB890X",
+        "92014": "AB890X",
+        "92018": "AB890X",
+        "92019": "AB890X",
+        "92020": "AB890X",
+        "92021": "AB890X",
+        "92022": "AB890X",
+        "92023": "AB890X",
+        "92024": "AB890X",
+        "92025": "AB890X",
+        "92026": "AB890X",
+        "92027": "AB890X",
+        "92028": "AB890X",
+        "92029": "AB890X",
+        "92030": "AB890X",
+        "92033": "AB890X",
+        "92036": "AB890X",
+        "92037": "AB890X",
+        "92038": "AB890X",
+        "92039": "AB890X",
+        "92040": "AB890X",
+        "92046": "AB890X",
+        "92049": "AB890X",
+        "92051": "AB890X",
+        "92052": "AB890X",
+        "92054": "AB890X",
+        "92055": "AB890X",
+        "92056": "AB890X",
+        "92057": "AB890X",
+        "92058": "AB890X",
+        "92059": "AB890X",
+        "92060": "AB890X",
+        "92061": "AB890X",
+        "92064": "AB890X",
+        "92065": "AB890X",
+        "92066": "AB890X",
+        "92067": "AB890X",
+        "92068": "AB890X",
+        "92069": "AB890X",
+        "92070": "AB890X",
+        "92071": "AB890X",
+        "92072": "AB890X",
+        "92074": "AB890X",
+        "92075": "AB890X",
+        "92078": "AB890X",
+        "92079": "AB890X",
+        "92081": "AB890X",
+        "92082": "AB890X",
+        "92083": "AB890X",
+        "92084": "AB890X",
+        "92085": "AB890X",
+        "92086": "AB890X",
+        "92088": "AB890X",
+        "92090": "AB890X",
+        "92091": "AB890X",
+        "92092": "AB890X",
+        "92093": "AB890X",
+        "92096": "AB890X",
+        "92101": "AB890X",
+        "92102": "AB890X",
+        "92103": "AB890X",
+        "92104": "AB890X",
+        "92105": "AB890X",
+        "92106": "AB890X",
+        "92107": "AB890X",
+        "92108": "AB890X",
+        "92109": "AB890X",
+        "92110": "AB890X",
+        "92111": "AB890X",
+        "92112": "AB890X",
+        "92113": "AB890X",
+        "92114": "AB890X",
+        "92115": "AB890X",
+        "92116": "AB890X",
+        "92117": "AB890X",
+        "92118": "AB890X",
+        "92119": "AB890X",
+        "92120": "AB890X",
+        "92121": "AB890X",
+        "92122": "AB890X",
+        "92123": "AB890X",
+        "92124": "AB890X",
+        "92126": "AB890X",
+        "92127": "AB890X",
+        "92128": "AB890X",
+        "92129": "AB890X",
+        "92130": "AB890X",
+        "92131": "AB890X",
+        "92132": "AB890X",
+        "92133": "AB890X",
+        "92134": "AB890X",
+        "92135": "AB890X",
+        "92136": "AB890X",
+        "92137": "AB890X",
+        "92138": "AB890X",
+        "92139": "AB890X",
+        "92140": "AB890X",
+        "92142": "AB890X",
+        "92143": "AB890X",
+        "92145": "AB890X",
+        "92147": "AB890X",
+        "92149": "AB890X",
+        "92150": "AB890X",
+        "92152": "AB890X",
+        "92153": "AB890X",
+        "92154": "AB890X",
+        "92155": "AB890X",
+        "92158": "AB890X",
+        "92159": "AB890X",
+        "92160": "AB890X",
+        "92161": "AB890X",
+        "92162": "AB890X",
+        "92163": "AB890X",
+        "92164": "AB890X",
+        "92165": "AB890X",
+        "92166": "AB890X",
+        "92167": "AB890X",
+        "92168": "AB890X",
+        "92169": "AB890X",
+        "92170": "AB890X",
+        "92171": "AB890X",
+        "92172": "AB890X",
+        "92173": "AB890X",
+        "92174": "AB890X",
+        "92175": "AB890X",
+        "92176": "AB890X",
+        "92177": "AB890X",
+        "92178": "AB890X",
+        "92179": "AB890X",
+        "92182": "AB890X",
+        "92184": "AB890X",
+        "92186": "AB890X",
+        "92187": "AB890X",
+        "92190": "AB890X",
+        "92191": "AB890X",
+        "92192": "AB890X",
+        "92193": "AB890X",
+        "92194": "AB890X",
+        "92195": "AB890X",
+        "92196": "AB890X",
+        "92197": "AB890X",
+        "92198": "AB890X",
+        "92199": "AB890X",
+        "92201": "AB890X",
+        "92202": "AB890X",
+        "92203": "AB890X",
+        "92210": "AB890X",
+        "92211": "AB890X",
+        "92220": "AB890X",
+        "92222": "AB887X",
+        "92223": "AB890X",
+        "92225": "AB887X",
+        "92226": "AB890X",
+        "92227": "AB887X",
+        "92230": "AB890X",
+        "92231": "AB887X",
+        "92232": "AB887X",
+        "92233": "AB887X",
+        "92234": "AB890X",
+        "92235": "AB890X",
+        "92236": "AB890X",
+        "92239": "AB890X",
+        "92240": "AB890X",
+        "92241": "AB890X",
+        "92242": "AB890X",
+        "92243": "AB887X",
+        "92244": "AB887X",
+        "92247": "AB890X",
+        "92248": "AB890X",
+        "92249": "AB887X",
+        "92250": "AB887X",
+        "92251": "AB887X",
+        "92252": "AB890X",
+        "92253": "AB890X",
+        "92254": "AB890X",
+        "92255": "AB890X",
+        "92256": "AB890X",
+        "92257": "AB887X",
+        "92258": "AB890X",
+        "92259": "AB887X",
+        "92260": "AB890X",
+        "92261": "AB890X",
+        "92262": "AB890X",
+        "92263": "AB890X",
+        "92264": "AB890X",
+        "92266": "AB887X",
+        "92267": "AB890X",
+        "92268": "AB890X",
+        "92270": "AB890X",
+        "92273": "AB887X",
+        "92274": "AB890X",
+        "92275": "AB887X",
+        "92276": "AB890X",
+        "92277": "AB890X",
+        "92278": "AB890X",
+        "92280": "AB890X",
+        "92281": "AB887X",
+        "92282": "AB890X",
+        "92283": "AB887X",
+        "92284": "AB890X",
+        "92285": "AB890X",
+        "92286": "AB890X",
+        "92292": "AB890X",
+        "92301": "AB890X",
+        "92304": "AB890X",
+        "92305": "AB890X",
+        "92307": "AB890X",
+        "92308": "AB890X",
+        "92309": "AB890X",
+        "92310": "AB890X",
+        "92311": "AB890X",
+        "92312": "AB890X",
+        "92313": "AB890X",
+        "92314": "AB890X",
+        "92315": "AB890X",
+        "92316": "AB890X",
+        "92317": "AB890X",
+        "92318": "AB890X",
+        "92320": "AB890X",
+        "92321": "AB890X",
+        "92322": "AB890X",
+        "92323": "AB890X",
+        "92324": "AB890X",
+        "92325": "AB890X",
+        "92326": "AB890X",
+        "92327": "AB890X",
+        "92328": "AB890X",
+        "92329": "AB890X",
+        "92331": "AB890X",
+        "92332": "AB890X",
+        "92333": "AB890X",
+        "92334": "AB890X",
+        "92335": "AB890X",
+        "92336": "AB890X",
+        "92337": "AB890X",
+        "92338": "AB890X",
+        "92339": "AB890X",
+        "92340": "AB890X",
+        "92341": "AB890X",
+        "92342": "AB890X",
+        "92344": "AB890X",
+        "92345": "AB890X",
+        "92346": "AB890X",
+        "92347": "AB890X",
+        "92350": "AB890X",
+        "92352": "AB890X",
+        "92354": "AB890X",
+        "92356": "AB890X",
+        "92357": "AB890X",
+        "92358": "AB890X",
+        "92359": "AB890X",
+        "92363": "AB890X",
+        "92364": "AB890X",
+        "92365": "AB890X",
+        "92366": "AB890X",
+        "92368": "AB890X",
+        "92369": "AB890X",
+        "92371": "AB890X",
+        "92372": "AB890X",
+        "92373": "AB890X",
+        "92374": "AB890X",
+        "92375": "AB890X",
+        "92376": "AB890X",
+        "92377": "AB890X",
+        "92378": "AB890X",
+        "92382": "AB890X",
+        "92384": "AB890X",
+        "92385": "AB890X",
+        "92386": "AB890X",
+        "92389": "AB890X",
+        "92391": "AB890X",
+        "92392": "AB890X",
+        "92393": "AB890X",
+        "92394": "AB890X",
+        "92395": "AB890X",
+        "92397": "AB890X",
+        "92398": "AB890X",
+        "92399": "AB890X",
+        "92401": "AB890X",
+        "92402": "AB890X",
+        "92403": "AB890X",
+        "92404": "AB890X",
+        "92405": "AB890X",
+        "92406": "AB890X",
+        "92407": "AB890X",
+        "92408": "AB890X",
+        "92410": "AB890X",
+        "92411": "AB890X",
+        "92412": "AB890X",
+        "92413": "AB890X",
+        "92414": "AB890X",
+        "92415": "AB890X",
+        "92418": "AB890X",
+        "92423": "AB890X",
+        "92424": "AB890X",
+        "92427": "AB890X",
+        "92501": "AB890X",
+        "92502": "AB890X",
+        "92503": "AB890X",
+        "92504": "AB890X",
+        "92505": "AB890X",
+        "92506": "AB890X",
+        "92507": "AB889X",
+        "92508": "AB890X",
+        "92509": "AB890X",
+        "92513": "AB890X",
+        "92514": "AB890X",
+        "92515": "AB890X",
+        "92516": "AB890X",
+        "92517": "AB890X",
+        "92518": "AB890X",
+        "92519": "AB890X",
+        "92521": "AB890X",
+        "92522": "AB890X",
+        "92530": "AB890X",
+        "92531": "AB890X",
+        "92532": "AB890X",
+        "92536": "AB890X",
+        "92539": "AB890X",
+        "92543": "AB890X",
+        "92544": "AB890X",
+        "92545": "AB890X",
+        "92546": "AB890X",
+        "92548": "AB890X",
+        "92549": "AB890X",
+        "92551": "AB890X",
+        "92552": "AB890X",
+        "92553": "AB890X",
+        "92554": "AB890X",
+        "92555": "AB890X",
+        "92556": "AB890X",
+        "92557": "AB890X",
+        "92561": "AB890X",
+        "92562": "AB890X",
+        "92563": "AB890X",
+        "92564": "AB890X",
+        "92567": "AB890X",
+        "92570": "AB890X",
+        "92571": "AB890X",
+        "92572": "AB890X",
+        "92581": "AB890X",
+        "92582": "AB890X",
+        "92583": "AB890X",
+        "92584": "AB890X",
+        "92585": "AB890X",
+        "92586": "AB890X",
+        "92587": "AB890X",
+        "92589": "AB890X",
+        "92590": "AB890X",
+        "92591": "AB890X",
+        "92592": "AB890X",
+        "92593": "AB890X",
+        "92595": "AB890X",
+        "92596": "AB890X",
+        "92599": "AB890X",
+        "92602": "AB890X",
+        "92603": "AB890X",
+        "92604": "AB890X",
+        "92605": "AB890X",
+        "92606": "AB890X",
+        "92607": "AB890X",
+        "92609": "AB890X",
+        "92610": "AB890X",
+        "92612": "AB890X",
+        "92614": "AB890X",
+        "92615": "AB890X",
+        "92616": "AB890X",
+        "92617": "AB890X",
+        "92618": "AB890X",
+        "92619": "AB890X",
+        "92620": "AB890X",
+        "92623": "AB890X",
+        "92624": "AB890X",
+        "92625": "AB890X",
+        "92626": "AB890X",
+        "92627": "AB890X",
+        "92628": "AB890X",
+        "92629": "AB890X",
+        "92630": "AB890X",
+        "92637": "AB890X",
+        "92646": "AB890X",
+        "92647": "AB890X",
+        "92648": "AB890X",
+        "92649": "AB890X",
+        "92650": "AB890X",
+        "92651": "AB890X",
+        "92652": "AB890X",
+        "92653": "AB890X",
+        "92654": "AB890X",
+        "92655": "AB890X",
+        "92656": "AB890X",
+        "92657": "AB890X",
+        "92658": "AB890X",
+        "92659": "AB890X",
+        "92660": "AB890X",
+        "92661": "AB890X",
+        "92662": "AB890X",
+        "92663": "AB890X",
+        "92672": "AB890X",
+        "92673": "AB890X",
+        "92674": "AB890X",
+        "92675": "AB890X",
+        "92676": "AB890X",
+        "92677": "AB890X",
+        "92678": "AB890X",
+        "92679": "AB890X",
+        "92683": "AB890X",
+        "92684": "AB890X",
+        "92685": "AB890X",
+        "92688": "AB890X",
+        "92690": "AB890X",
+        "92691": "AB890X",
+        "92692": "AB890X",
+        "92693": "AB890X",
+        "92694": "AB890X",
+        "92697": "AB890X",
+        "92698": "AB890X",
+        "92701": "AB890X",
+        "92702": "AB890X",
+        "92703": "AB890X",
+        "92704": "AB890X",
+        "92705": "AB890X",
+        "92706": "AB890X",
+        "92707": "AB890X",
+        "92708": "AB890X",
+        "92709": "AB890X",
+        "92710": "AB890X",
+        "92711": "AB890X",
+        "92712": "AB890X",
+        "92725": "AB890X",
+        "92728": "AB890X",
+        "92735": "AB890X",
+        "92780": "AB890X",
+        "92781": "AB890X",
+        "92782": "AB890X",
+        "92799": "AB890X",
+        "92801": "AB890X",
+        "92802": "AB890X",
+        "92803": "AB890X",
+        "92804": "AB890X",
+        "92805": "AB890X",
+        "92806": "AB890X",
+        "92807": "AB890X",
+        "92808": "AB890X",
+        "92809": "AB890X",
+        "92811": "AB890X",
+        "92812": "AB890X",
+        "92814": "AB890X",
+        "92815": "AB890X",
+        "92816": "AB890X",
+        "92817": "AB890X",
+        "92821": "AB890X",
+        "92822": "AB890X",
+        "92823": "AB890X",
+        "92825": "AB890X",
+        "92831": "AB890X",
+        "92832": "AB890X",
+        "92833": "AB890X",
+        "92834": "AB890X",
+        "92835": "AB890X",
+        "92836": "AB890X",
+        "92837": "AB890X",
+        "92838": "AB890X",
+        "92840": "AB890X",
+        "92841": "AB890X",
+        "92842": "AB890X",
+        "92843": "AB890X",
+        "92844": "AB890X",
+        "92845": "AB890X",
+        "92846": "AB890X",
+        "92850": "AB890X",
+        "92856": "AB890X",
+        "92857": "AB890X",
+        "92859": "AB890X",
+        "92860": "AB890X",
+        "92861": "AB890X",
+        "92862": "AB890X",
+        "92863": "AB890X",
+        "92864": "AB890X",
+        "92865": "AB890X",
+        "92866": "AB890X",
+        "92867": "AB890X",
+        "92868": "AB890X",
+        "92869": "AB890X",
+        "92870": "AB890X",
+        "92871": "AB890X",
+        "92877": "AB890X",
+        "92878": "AB890X",
+        "92879": "AB890X",
+        "92880": "AB890X",
+        "92881": "AB890X",
+        "92882": "AB890X",
+        "92883": "AB890X",
+        "92885": "AB890X",
+        "92886": "AB890X",
+        "92887": "AB890X",
+        "92899": "AB890X",
+        "93001": "AB890X",
+        "93002": "AB890X",
+        "93003": "AB890X",
+        "93004": "AB890X",
+        "93005": "AB890X",
+        "93006": "AB890X",
+        "93007": "AB890X",
+        "93009": "AB890X",
+        "93010": "AB890X",
+        "93011": "AB890X",
+        "93012": "AB890X",
+        "93013": "AB890X",
+        "93014": "AB890X",
+        "93015": "AB890X",
+        "93016": "AB890X",
+        "93020": "AB890X",
+        "93021": "AB890X",
+        "93022": "AB890X",
+        "93023": "AB890X",
+        "93024": "AB890X",
+        "93030": "AB890X",
+        "93031": "AB890X",
+        "93032": "AB890X",
+        "93033": "AB890X",
+        "93034": "AB890X",
+        "93035": "AB890X",
+        "93036": "AB890X",
+        "93040": "AB890X",
+        "93041": "AB890X",
+        "93042": "AB890X",
+        "93043": "AB890X",
+        "93044": "AB890X",
+        "93060": "AB890X",
+        "93061": "AB890X",
+        "93062": "AB890X",
+        "93063": "AB890X",
+        "93064": "AB890X",
+        "93065": "AB890X",
+        "93066": "AB890X",
+        "93067": "AB890X",
+        "93093": "AB890X",
+        "93094": "AB890X",
+        "93099": "AB890X",
+        "93101": "AB890X",
+        "93102": "AB890X",
+        "93103": "AB890X",
+        "93105": "AB890X",
+        "93106": "AB890X",
+        "93107": "AB890X",
+        "93108": "AB890X",
+        "93109": "AB890X",
+        "93110": "AB890X",
+        "93111": "AB890X",
+        "93116": "AB890X",
+        "93117": "AB890X",
+        "93118": "AB890X",
+        "93120": "AB890X",
+        "93121": "AB890X",
+        "93130": "AB890X",
+        "93140": "AB890X",
+        "93150": "AB890X",
+        "93160": "AB890X",
+        "93190": "AB890X",
+        "93199": "AB890X",
+        "93201": "AB887X",
+        "93202": "AB887X",
+        "93203": "AB890X",
+        "93204": "AB887X",
+        "93205": "AB890X",
+        "93206": "AB890X",
+        "93207": "AB887X",
+        "93208": "AB887X",
+        "93210": "AB887X",
+        "93212": "AB887X",
+        "93215": "AB890X",
+        "93216": "AB890X",
+        "93218": "AB887X",
+        "93219": "AB887X",
+        "93220": "AB890X",
+        "93221": "AB887X",
+        "93222": "AB890X",
+        "93223": "AB887X",
+        "93224": "AB890X",
+        "93225": "AB890X",
+        "93226": "AB890X",
+        "93227": "AB887X",
+        "93230": "AB887X",
+        "93232": "AB887X",
+        "93234": "AB887X",
+        "93235": "AB887X",
+        "93237": "AB887X",
+        "93238": "AB890X",
+        "93239": "AB887X",
+        "93240": "AB890X",
+        "93241": "AB890X",
+        "93242": "AB887X",
+        "93243": "AB890X",
+        "93244": "AB887X",
+        "93245": "AB887X",
+        "93246": "AB887X",
+        "93247": "AB887X",
+        "93249": "AB890X",
+        "93250": "AB890X",
+        "93251": "AB890X",
+        "93252": "AB890X",
+        "93254": "AB890X",
+        "93255": "AB890X",
+        "93256": "AB887X",
+        "93257": "AB887X",
+        "93258": "AB887X",
+        "93260": "AB887X",
+        "93261": "AB887X",
+        "93262": "AB887X",
+        "93263": "AB890X",
+        "93265": "AB887X",
+        "93266": "AB887X",
+        "93267": "AB887X",
+        "93268": "AB890X",
+        "93270": "AB887X",
+        "93271": "AB887X",
+        "93272": "AB887X",
+        "93274": "AB887X",
+        "93275": "AB887X",
+        "93276": "AB890X",
+        "93277": "AB887X",
+        "93278": "AB887X",
+        "93279": "AB887X",
+        "93280": "AB890X",
+        "93282": "AB887X",
+        "93283": "AB890X",
+        "93285": "AB890X",
+        "93286": "AB887X",
+        "93287": "AB890X",
+        "93290": "AB887X",
+        "93291": "AB887X",
+        "93292": "AB887X",
+        "93301": "AB890X",
+        "93302": "AB890X",
+        "93303": "AB890X",
+        "93304": "AB890X",
+        "93305": "AB890X",
+        "93306": "AB890X",
+        "93307": "AB890X",
+        "93308": "AB890X",
+        "93309": "AB890X",
+        "93311": "AB890X",
+        "93312": "AB890X",
+        "93313": "AB890X",
+        "93314": "AB890X",
+        "93380": "AB890X",
+        "93381": "AB890X",
+        "93382": "AB890X",
+        "93383": "AB890X",
+        "93384": "AB890X",
+        "93385": "AB890X",
+        "93386": "AB890X",
+        "93387": "AB890X",
+        "93388": "AB890X",
+        "93389": "AB890X",
+        "93390": "AB890X",
+        "93401": "AB890X",
+        "93402": "AB890X",
+        "93403": "AB890X",
+        "93405": "AB890X",
+        "93406": "AB890X",
+        "93407": "AB890X",
+        "93408": "AB890X",
+        "93409": "AB890X",
+        "93410": "AB890X",
+        "93412": "AB890X",
+        "93420": "AB890X",
+        "93421": "AB890X",
+        "93422": "AB890X",
+        "93423": "AB890X",
+        "93424": "AB890X",
+        "93426": "AB887X",
+        "93427": "AB890X",
+        "93428": "AB890X",
+        "93429": "AB890X",
+        "93430": "AB890X",
+        "93432": "AB890X",
+        "93433": "AB890X",
+        "93434": "AB890X",
+        "93435": "AB890X",
+        "93436": "AB890X",
+        "93437": "AB890X",
+        "93438": "AB890X",
+        "93440": "AB890X",
+        "93441": "AB890X",
+        "93442": "AB890X",
+        "93443": "AB890X",
+        "93444": "AB890X",
+        "93445": "AB890X",
+        "93446": "AB890X",
+        "93447": "AB890X",
+        "93448": "AB890X",
+        "93449": "AB890X",
+        "93450": "AB887X",
+        "93451": "AB890X",
+        "93452": "AB890X",
+        "93453": "AB890X",
+        "93454": "AB890X",
+        "93455": "AB890X",
+        "93456": "AB890X",
+        "93457": "AB890X",
+        "93458": "AB890X",
+        "93460": "AB890X",
+        "93461": "AB890X",
+        "93463": "AB890X",
+        "93464": "AB890X",
+        "93465": "AB890X",
+        "93475": "AB890X",
+        "93483": "AB890X",
+        "93501": "AB890X",
+        "93502": "AB890X",
+        "93504": "AB890X",
+        "93505": "AB890X",
+        "93510": "AB890X",
+        "93512": "AB890X",
+        "93513": "AB890X",
+        "93514": "AB890X",
+        "93515": "AB890X",
+        "93516": "AB890X",
+        "93517": "AB890X",
+        "93518": "AB890X",
+        "93519": "AB890X",
+        "93522": "AB890X",
+        "93523": "AB890X",
+        "93524": "AB890X",
+        "93526": "AB890X",
+        "93527": "AB890X",
+        "93528": "AB890X",
+        "93529": "AB890X",
+        "93530": "AB890X",
+        "93531": "AB890X",
+        "93532": "AB890X",
+        "93534": "AB890X",
+        "93535": "AB890X",
+        "93536": "AB890X",
+        "93539": "AB890X",
+        "93541": "AB890X",
+        "93542": "AB890X",
+        "93543": "AB890X",
+        "93544": "AB890X",
+        "93545": "AB890X",
+        "93546": "AB890X",
+        "93549": "AB890X",
+        "93550": "AB890X",
+        "93551": "AB890X",
+        "93552": "AB890X",
+        "93553": "AB890X",
+        "93554": "AB890X",
+        "93555": "AB890X",
+        "93556": "AB890X",
+        "93558": "AB890X",
+        "93560": "AB890X",
+        "93561": "AB890X",
+        "93562": "AB890X",
+        "93563": "AB890X",
+        "93581": "AB890X",
+        "93584": "AB890X",
+        "93586": "AB890X",
+        "93590": "AB890X",
+        "93591": "AB890X",
+        "93592": "AB890X",
+        "93596": "AB890X",
+        "93599": "AB890X",
+        "93601": "AB887X",
+        "93602": "AB887X",
+        "93603": "AB887X",
+        "93604": "AB887X",
+        "93605": "AB887X",
+        "93606": "AB887X",
+        "93607": "AB887X",
+        "93608": "AB887X",
+        "93609": "AB887X",
+        "93610": "AB887X",
+        "93611": "AB887X",
+        "93612": "AB887X",
+        "93613": "AB887X",
+        "93614": "AB887X",
+        "93615": "AB887X",
+        "93616": "AB887X",
+        "93618": "AB887X",
+        "93619": "AB887X",
+        "93620": "AB887X",
+        "93621": "AB887X",
+        "93622": "AB887X",
+        "93623": "AB887X",
+        "93624": "AB887X",
+        "93625": "AB887X",
+        "93626": "AB887X",
+        "93627": "AB887X",
+        "93628": "AB887X",
+        "93630": "AB887X",
+        "93631": "AB887X",
+        "93633": "AB887X",
+        "93634": "AB887X",
+        "93635": "AB887X",
+        "93636": "AB887X",
+        "93637": "AB887X",
+        "93638": "AB887X",
+        "93639": "AB887X",
+        "93640": "AB887X",
+        "93641": "AB887X",
+        "93642": "AB887X",
+        "93643": "AB887X",
+        "93644": "AB887X",
+        "93645": "AB887X",
+        "93646": "AB887X",
+        "93647": "AB887X",
+        "93648": "AB887X",
+        "93649": "AB887X",
+        "93650": "AB887X",
+        "93651": "AB887X",
+        "93652": "AB887X",
+        "93653": "AB887X",
+        "93654": "AB887X",
+        "93656": "AB887X",
+        "93657": "AB887X",
+        "93660": "AB887X",
+        "93661": "AB887X",
+        "93662": "AB887X",
+        "93664": "AB887X",
+        "93665": "AB887X",
+        "93666": "AB887X",
+        "93667": "AB887X",
+        "93668": "AB887X",
+        "93669": "AB887X",
+        "93670": "AB887X",
+        "93673": "AB887X",
+        "93675": "AB887X",
+        "93701": "AB887X",
+        "93702": "AB887X",
+        "93703": "AB887X",
+        "93704": "AB887X",
+        "93705": "AB887X",
+        "93706": "AB887X",
+        "93707": "AB887X",
+        "93708": "AB887X",
+        "93709": "AB887X",
+        "93710": "AB887X",
+        "93711": "AB887X",
+        "93712": "AB887X",
+        "93714": "AB887X",
+        "93715": "AB887X",
+        "93716": "AB887X",
+        "93717": "AB887X",
+        "93718": "AB887X",
+        "93720": "AB887X",
+        "93721": "AB887X",
+        "93722": "AB887X",
+        "93723": "AB887X",
+        "93724": "AB887X",
+        "93725": "AB887X",
+        "93726": "AB887X",
+        "93727": "AB887X",
+        "93728": "AB887X",
+        "93729": "AB887X",
+        "93730": "AB887X",
+        "93740": "AB887X",
+        "93741": "AB887X",
+        "93744": "AB887X",
+        "93745": "AB887X",
+        "93747": "AB887X",
+        "93750": "AB887X",
+        "93755": "AB887X",
+        "93760": "AB887X",
+        "93761": "AB887X",
+        "93764": "AB887X",
+        "93765": "AB887X",
+        "93771": "AB887X",
+        "93772": "AB887X",
+        "93773": "AB887X",
+        "93774": "AB887X",
+        "93775": "AB887X",
+        "93776": "AB887X",
+        "93777": "AB887X",
+        "93778": "AB887X",
+        "93779": "AB887X",
+        "93780": "AB887X",
+        "93784": "AB887X",
+        "93786": "AB887X",
+        "93790": "AB887X",
+        "93791": "AB887X",
+        "93792": "AB887X",
+        "93793": "AB887X",
+        "93794": "AB887X",
+        "93844": "AB887X",
+        "93888": "AB887X",
+        "93901": "AB887X",
+        "93902": "AB887X",
+        "93905": "AB887X",
+        "93906": "AB887X",
+        "93907": "AB887X",
+        "93908": "AB887X",
+        "93912": "AB887X",
+        "93915": "AB887X",
+        "93920": "AB887X",
+        "93921": "AB887X",
+        "93922": "AB887X",
+        "93923": "AB887X",
+        "93924": "AB887X",
+        "93925": "AB887X",
+        "93926": "AB887X",
+        "93927": "AB887X",
+        "93928": "AB887X",
+        "93930": "AB887X",
+        "93932": "AB887X",
+        "93933": "AB887X",
+        "93940": "AB887X",
+        "93942": "AB887X",
+        "93943": "AB887X",
+        "93944": "AB887X",
+        "93950": "AB887X",
+        "93953": "AB887X",
+        "93954": "AB887X",
+        "93955": "AB887X",
+        "93960": "AB887X",
+        "93962": "AB887X",
+        "94002": "AB887X",
+        "94005": "AB887X",
+        "94010": "AB887X",
+        "94011": "AB887X",
+        "94013": "AB887X",
+        "94014": "AB887X",
+        "94015": "AB887X",
+        "94016": "AB887X",
+        "94017": "AB887X",
+        "94018": "AB887X",
+        "94019": "AB887X",
+        "94020": "AB887X",
+        "94021": "AB887X",
+        "94022": "AB887X",
+        "94023": "AB887X",
+        "94024": "AB887X",
+        "94025": "AB887X",
+        "94026": "AB887X",
+        "94027": "AB887X",
+        "94028": "AB887X",
+        "94030": "AB887X",
+        "94035": "AB887X",
+        "94037": "AB887X",
+        "94038": "AB887X",
+        "94039": "AB887X",
+        "94040": "AB887X",
+        "94041": "AB887X",
+        "94042": "AB887X",
+        "94043": "AB887X",
+        "94044": "AB887X",
+        "94060": "AB887X",
+        "94061": "AB887X",
+        "94062": "AB887X",
+        "94063": "AB887X",
+        "94064": "AB887X",
+        "94065": "AB887X",
+        "94066": "AB887X",
+        "94070": "AB887X",
+        "94074": "AB887X",
+        "94080": "AB887X",
+        "94083": "AB887X",
+        "94085": "AB887X",
+        "94086": "AB887X",
+        "94087": "AB887X",
+        "94088": "AB887X",
+        "94089": "AB887X",
+        "94096": "AB887X",
+        "94098": "AB887X",
+        "94101": "AB887X",
+        "94102": "AB887X",
+        "94103": "AB887X",
+        "94104": "AB887X",
+        "94105": "AB887X",
+        "94106": "AB887X",
+        "94107": "AB887X",
+        "94108": "AB887X",
+        "94109": "AB887X",
+        "94110": "AB887X",
+        "94111": "AB887X",
+        "94112": "AB887X",
+        "94114": "AB887X",
+        "94115": "AB887X",
+        "94116": "AB887X",
+        "94117": "AB887X",
+        "94118": "AB887X",
+        "94119": "AB887X",
+        "94120": "AB887X",
+        "94121": "AB887X",
+        "94122": "AB887X",
+        "94123": "AB887X",
+        "94124": "AB887X",
+        "94125": "AB887X",
+        "94126": "AB887X",
+        "94127": "AB887X",
+        "94128": "AB887X",
+        "94129": "AB887X",
+        "94130": "AB887X",
+        "94131": "AB887X",
+        "94132": "AB887X",
+        "94133": "AB887X",
+        "94134": "AB887X",
+        "94135": "AB887X",
+        "94136": "AB887X",
+        "94137": "AB887X",
+        "94138": "AB887X",
+        "94139": "AB887X",
+        "94140": "AB887X",
+        "94141": "AB887X",
+        "94142": "AB887X",
+        "94143": "AB887X",
+        "94144": "AB887X",
+        "94145": "AB887X",
+        "94146": "AB887X",
+        "94147": "AB887X",
+        "94150": "AB887X",
+        "94151": "AB887X",
+        "94152": "AB887X",
+        "94153": "AB887X",
+        "94154": "AB887X",
+        "94155": "AB887X",
+        "94156": "AB887X",
+        "94157": "AB887X",
+        "94158": "AB887X",
+        "94159": "AB887X",
+        "94160": "AB887X",
+        "94161": "AB887X",
+        "94162": "AB887X",
+        "94163": "AB887X",
+        "94164": "AB887X",
+        "94165": "AB887X",
+        "94166": "AB887X",
+        "94167": "AB887X",
+        "94168": "AB887X",
+        "94169": "AB887X",
+        "94170": "AB887X",
+        "94171": "AB887X",
+        "94172": "AB887X",
+        "94175": "AB887X",
+        "94177": "AB887X",
+        "94188": "AB887X",
+        "94199": "AB887X",
+        "94203": "AB887X",
+        "94204": "AB887X",
+        "94205": "AB887X",
+        "94206": "AB887X",
+        "94207": "AB887X",
+        "94208": "AB887X",
+        "94209": "AB887X",
+        "94211": "AB887X",
+        "94229": "AB887X",
+        "94230": "AB887X",
+        "94232": "AB887X",
+        "94234": "AB887X",
+        "94235": "AB887X",
+        "94236": "AB887X",
+        "94237": "AB887X",
+        "94239": "AB887X",
+        "94240": "AB887X",
+        "94244": "AB887X",
+        "94245": "AB887X",
+        "94246": "AB887X",
+        "94247": "AB887X",
+        "94248": "AB887X",
+        "94249": "AB887X",
+        "94250": "AB887X",
+        "94252": "AB887X",
+        "94254": "AB887X",
+        "94256": "AB887X",
+        "94257": "AB887X",
+        "94258": "AB887X",
+        "94259": "AB887X",
+        "94261": "AB887X",
+        "94262": "AB887X",
+        "94263": "AB887X",
+        "94267": "AB887X",
+        "94268": "AB887X",
+        "94269": "AB887X",
+        "94271": "AB887X",
+        "94273": "AB887X",
+        "94274": "AB887X",
+        "94277": "AB887X",
+        "94278": "AB887X",
+        "94279": "AB887X",
+        "94280": "AB887X",
+        "94282": "AB887X",
+        "94283": "AB887X",
+        "94284": "AB887X",
+        "94285": "AB887X",
+        "94286": "AB887X",
+        "94287": "AB887X",
+        "94288": "AB887X",
+        "94289": "AB887X",
+        "94290": "AB887X",
+        "94291": "AB887X",
+        "94293": "AB887X",
+        "94294": "AB887X",
+        "94295": "AB887X",
+        "94296": "AB887X",
+        "94297": "AB887X",
+        "94298": "AB887X",
+        "94299": "AB887X",
+        "94301": "AB887X",
+        "94302": "AB887X",
+        "94303": "AB887X",
+        "94304": "AB887X",
+        "94305": "AB887X",
+        "94306": "AB887X",
+        "94309": "AB887X",
+        "94401": "AB887X",
+        "94402": "AB887X",
+        "94403": "AB887X",
+        "94404": "AB887X",
+        "94497": "AB887X",
+        "94501": "AB887X",
+        "94502": "AB887X",
+        "94503": "AB887X",
+        "94506": "AB887X",
+        "94507": "AB887X",
+        "94508": "AB887X",
+        "94509": "AB887X",
+        "94510": "AB887X",
+        "94511": "AB887X",
+        "94512": "AB887X",
+        "94513": "AB887X",
+        "94514": "AB887X",
+        "94515": "AB887X",
+        "94516": "AB887X",
+        "94517": "AB887X",
+        "94518": "AB887X",
+        "94519": "AB887X",
+        "94520": "AB887X",
+        "94521": "AB887X",
+        "94522": "AB887X",
+        "94523": "AB887X",
+        "94524": "AB887X",
+        "94525": "AB887X",
+        "94526": "AB887X",
+        "94527": "AB887X",
+        "94528": "AB887X",
+        "94529": "AB887X",
+        "94530": "AB887X",
+        "94531": "AB887X",
+        "94533": "AB887X",
+        "94534": "AB887X",
+        "94535": "AB887X",
+        "94536": "AB887X",
+        "94537": "AB887X",
+        "94538": "AB887X",
+        "94539": "AB887X",
+        "94540": "AB887X",
+        "94541": "AB887X",
+        "94542": "AB887X",
+        "94543": "AB887X",
+        "94544": "AB887X",
+        "94545": "AB887X",
+        "94546": "AB887X",
+        "94547": "AB887X",
+        "94548": "AB887X",
+        "94549": "AB887X",
+        "94550": "AB887X",
+        "94551": "AB887X",
+        "94552": "AB887X",
+        "94553": "AB887X",
+        "94555": "AB887X",
+        "94556": "AB887X",
+        "94557": "AB887X",
+        "94558": "AB887X",
+        "94559": "AB887X",
+        "94560": "AB887X",
+        "94561": "AB887X",
+        "94562": "AB887X",
+        "94563": "AB887X",
+        "94564": "AB887X",
+        "94565": "AB887X",
+        "94566": "AB887X",
+        "94567": "AB887X",
+        "94568": "AB887X",
+        "94569": "AB887X",
+        "94570": "AB887X",
+        "94571": "AB887X",
+        "94572": "AB887X",
+        "94573": "AB887X",
+        "94574": "AB887X",
+        "94575": "AB887X",
+        "94576": "AB887X",
+        "94577": "AB887X",
+        "94578": "AB887X",
+        "94579": "AB887X",
+        "94580": "AB887X",
+        "94581": "AB887X",
+        "94582": "AB887X",
+        "94583": "AB887X",
+        "94585": "AB887X",
+        "94586": "AB887X",
+        "94587": "AB887X",
+        "94588": "AB887X",
+        "94589": "AB887X",
+        "94590": "AB887X",
+        "94591": "AB887X",
+        "94592": "AB887X",
+        "94595": "AB887X",
+        "94596": "AB887X",
+        "94597": "AB887X",
+        "94598": "AB887X",
+        "94599": "AB887X",
+        "94601": "AB887X",
+        "94602": "AB887X",
+        "94603": "AB887X",
+        "94604": "AB887X",
+        "94605": "AB887X",
+        "94606": "AB887X",
+        "94607": "AB887X",
+        "94608": "AB887X",
+        "94609": "AB887X",
+        "94610": "AB887X",
+        "94611": "AB887X",
+        "94612": "AB887X",
+        "94613": "AB887X",
+        "94614": "AB887X",
+        "94615": "AB887X",
+        "94617": "AB887X",
+        "94618": "AB887X",
+        "94619": "AB887X",
+        "94620": "AB887X",
+        "94621": "AB887X",
+        "94622": "AB887X",
+        "94623": "AB887X",
+        "94624": "AB887X",
+        "94625": "AB887X",
+        "94649": "AB887X",
+        "94659": "AB887X",
+        "94660": "AB887X",
+        "94661": "AB887X",
+        "94662": "AB887X",
+        "94666": "AB887X",
+        "94701": "AB887X",
+        "94702": "AB887X",
+        "94703": "AB887X",
+        "94704": "AB887X",
+        "94705": "AB887X",
+        "94706": "AB887X",
+        "94707": "AB887X",
+        "94708": "AB887X",
+        "94709": "AB887X",
+        "94710": "AB887X",
+        "94712": "AB887X",
+        "94720": "AB887X",
+        "94801": "AB887X",
+        "94802": "AB887X",
+        "94803": "AB887X",
+        "94804": "AB887X",
+        "94805": "AB887X",
+        "94806": "AB887X",
+        "94807": "AB887X",
+        "94808": "AB887X",
+        "94820": "AB887X",
+        "94850": "AB887X",
+        "94901": "AB887X",
+        "94903": "AB887X",
+        "94904": "AB887X",
+        "94912": "AB887X",
+        "94913": "AB887X",
+        "94914": "AB887X",
+        "94915": "AB887X",
+        "94920": "AB887X",
+        "94922": "AB887X",
+        "94923": "AB887X",
+        "94924": "AB887X",
+        "94925": "AB887X",
+        "94926": "AB887X",
+        "94927": "AB887X",
+        "94928": "AB887X",
+        "94929": "AB887X",
+        "94930": "AB887X",
+        "94931": "AB887X",
+        "94933": "AB887X",
+        "94937": "AB887X",
+        "94938": "AB887X",
+        "94939": "AB887X",
+        "94940": "AB887X",
+        "94941": "AB887X",
+        "94942": "AB887X",
+        "94945": "AB887X",
+        "94946": "AB887X",
+        "94947": "AB887X",
+        "94948": "AB887X",
+        "94949": "AB887X",
+        "94950": "AB887X",
+        "94951": "AB887X",
+        "94952": "AB887X",
+        "94953": "AB887X",
+        "94954": "AB887X",
+        "94955": "AB887X",
+        "94956": "AB887X",
+        "94957": "AB887X",
+        "94960": "AB887X",
+        "94963": "AB887X",
+        "94964": "AB887X",
+        "94965": "AB887X",
+        "94966": "AB887X",
+        "94970": "AB887X",
+        "94971": "AB887X",
+        "94972": "AB887X",
+        "94973": "AB887X",
+        "94974": "AB887X",
+        "94975": "AB887X",
+        "94976": "AB887X",
+        "94977": "AB887X",
+        "94978": "AB887X",
+        "94979": "AB887X",
+        "94998": "AB887X",
+        "94999": "AB887X",
+        "95001": "AB887X",
+        "95002": "AB887X",
+        "95003": "AB887X",
+        "95004": "AB887X",
+        "95005": "AB887X",
+        "95006": "AB887X",
+        "95007": "AB887X",
+        "95008": "AB887X",
+        "95009": "AB887X",
+        "95010": "AB887X",
+        "95011": "AB887X",
+        "95012": "AB887X",
+        "95013": "AB887X",
+        "95014": "AB887X",
+        "95015": "AB887X",
+        "95017": "AB887X",
+        "95018": "AB887X",
+        "95019": "AB887X",
+        "95020": "AB887X",
+        "95021": "AB887X",
+        "95023": "AB887X",
+        "95024": "AB887X",
+        "95026": "AB887X",
+        "95030": "AB887X",
+        "95031": "AB887X",
+        "95032": "AB887X",
+        "95033": "AB887X",
+        "95035": "AB887X",
+        "95036": "AB887X",
+        "95037": "AB887X",
+        "95038": "AB887X",
+        "95039": "AB887X",
+        "95041": "AB887X",
+        "95042": "AB887X",
+        "95043": "AB887X",
+        "95044": "AB887X",
+        "95045": "AB887X",
+        "95046": "AB887X",
+        "95050": "AB887X",
+        "95051": "AB887X",
+        "95052": "AB887X",
+        "95053": "AB887X",
+        "95054": "AB887X",
+        "95055": "AB887X",
+        "95056": "AB887X",
+        "95060": "AB887X",
+        "95061": "AB887X",
+        "95062": "AB887X",
+        "95063": "AB887X",
+        "95064": "AB887X",
+        "95065": "AB887X",
+        "95066": "AB887X",
+        "95067": "AB887X",
+        "95070": "AB887X",
+        "95071": "AB887X",
+        "95073": "AB887X",
+        "95075": "AB887X",
+        "95076": "AB887X",
+        "95077": "AB887X",
+        "95101": "AB887X",
+        "95103": "AB887X",
+        "95106": "AB887X",
+        "95108": "AB887X",
+        "95109": "AB887X",
+        "95110": "AB887X",
+        "95111": "AB887X",
+        "95112": "AB887X",
+        "95113": "AB887X",
+        "95115": "AB887X",
+        "95116": "AB887X",
+        "95117": "AB887X",
+        "95118": "AB887X",
+        "95119": "AB887X",
+        "95120": "AB887X",
+        "95121": "AB887X",
+        "95122": "AB887X",
+        "95123": "AB887X",
+        "95124": "AB887X",
+        "95125": "AB887X",
+        "95126": "AB887X",
+        "95127": "AB887X",
+        "95128": "AB887X",
+        "95129": "AB887X",
+        "95130": "AB887X",
+        "95131": "AB887X",
+        "95132": "AB887X",
+        "95133": "AB887X",
+        "95134": "AB887X",
+        "95135": "AB887X",
+        "95136": "AB887X",
+        "95138": "AB887X",
+        "95139": "AB887X",
+        "95140": "AB887X",
+        "95141": "AB887X",
+        "95148": "AB887X",
+        "95150": "AB887X",
+        "95151": "AB887X",
+        "95152": "AB887X",
+        "95153": "AB887X",
+        "95154": "AB887X",
+        "95155": "AB887X",
+        "95156": "AB887X",
+        "95157": "AB887X",
+        "95158": "AB887X",
+        "95159": "AB887X",
+        "95160": "AB887X",
+        "95161": "AB887X",
+        "95164": "AB887X",
+        "95170": "AB887X",
+        "95172": "AB887X",
+        "95173": "AB887X",
+        "95190": "AB887X",
+        "95191": "AB887X",
+        "95192": "AB887X",
+        "95193": "AB887X",
+        "95194": "AB887X",
+        "95196": "AB887X",
+        "95201": "AB887X",
+        "95202": "AB887X",
+        "95203": "AB887X",
+        "95204": "AB887X",
+        "95205": "AB887X",
+        "95206": "AB887X",
+        "95207": "AB887X",
+        "95208": "AB887X",
+        "95209": "AB887X",
+        "95210": "AB887X",
+        "95211": "AB887X",
+        "95212": "AB887X",
+        "95213": "AB887X",
+        "95215": "AB887X",
+        "95219": "AB887X",
+        "95220": "AB887X",
+        "95221": "AB887X",
+        "95222": "AB887X",
+        "95223": "AB887X",
+        "95224": "AB887X",
+        "95225": "AB887X",
+        "95226": "AB887X",
+        "95227": "AB887X",
+        "95228": "AB887X",
+        "95229": "AB887X",
+        "95230": "AB887X",
+        "95231": "AB887X",
+        "95232": "AB887X",
+        "95233": "AB887X",
+        "95234": "AB887X",
+        "95236": "AB887X",
+        "95237": "AB887X",
+        "95240": "AB887X",
+        "95241": "AB887X",
+        "95242": "AB887X",
+        "95245": "AB887X",
+        "95246": "AB887X",
+        "95247": "AB887X",
+        "95248": "AB887X",
+        "95249": "AB887X",
+        "95250": "AB887X",
+        "95251": "AB887X",
+        "95252": "AB887X",
+        "95253": "AB887X",
+        "95254": "AB887X",
+        "95255": "AB887X",
+        "95257": "AB887X",
+        "95258": "AB887X",
+        "95267": "AB887X",
+        "95269": "AB887X",
+        "95296": "AB887X",
+        "95297": "AB887X",
+        "95301": "AB887X",
+        "95303": "AB887X",
+        "95304": "AB887X",
+        "95305": "AB887X",
+        "95306": "AB887X",
+        "95307": "AB887X",
+        "95309": "AB887X",
+        "95310": "AB887X",
+        "95311": "AB887X",
+        "95312": "AB887X",
+        "95313": "AB887X",
+        "95314": "AB887X",
+        "95315": "AB887X",
+        "95316": "AB887X",
+        "95317": "AB887X",
+        "95318": "AB887X",
+        "95319": "AB887X",
+        "95320": "AB887X",
+        "95321": "AB887X",
+        "95322": "AB887X",
+        "95323": "AB887X",
+        "95324": "AB887X",
+        "95325": "AB887X",
+        "95326": "AB887X",
+        "95327": "AB887X",
+        "95328": "AB887X",
+        "95329": "AB887X",
+        "95330": "AB887X",
+        "95333": "AB887X",
+        "95334": "AB887X",
+        "95335": "AB887X",
+        "95336": "AB887X",
+        "95337": "AB887X",
+        "95338": "AB887X",
+        "95340": "AB887X",
+        "95341": "AB887X",
+        "95343": "AB887X",
+        "95344": "AB887X",
+        "95345": "AB887X",
+        "95346": "AB887X",
+        "95347": "AB887X",
+        "95348": "AB887X",
+        "95350": "AB887X",
+        "95351": "AB887X",
+        "95352": "AB887X",
+        "95353": "AB887X",
+        "95354": "AB887X",
+        "95355": "AB887X",
+        "95356": "AB887X",
+        "95357": "AB887X",
+        "95358": "AB887X",
+        "95360": "AB887X",
+        "95361": "AB887X",
+        "95363": "AB887X",
+        "95364": "AB887X",
+        "95365": "AB887X",
+        "95366": "AB887X",
+        "95367": "AB887X",
+        "95368": "AB887X",
+        "95369": "AB887X",
+        "95370": "AB887X",
+        "95372": "AB887X",
+        "95373": "AB887X",
+        "95374": "AB887X",
+        "95375": "AB887X",
+        "95376": "AB887X",
+        "95377": "AB887X",
+        "95378": "AB887X",
+        "95379": "AB887X",
+        "95380": "AB887X",
+        "95381": "AB887X",
+        "95382": "AB887X",
+        "95383": "AB887X",
+        "95385": "AB887X",
+        "95386": "AB887X",
+        "95387": "AB887X",
+        "95388": "AB887X",
+        "95389": "AB887X",
+        "95391": "AB887X",
+        "95397": "AB887X",
+        "95401": "AB887X",
+        "95402": "AB887X",
+        "95403": "AB887X",
+        "95404": "AB887X",
+        "95405": "AB887X",
+        "95406": "AB887X",
+        "95407": "AB887X",
+        "95408": "AB887X",
+        "95409": "AB887X",
+        "95410": "AB887X",
+        "95412": "AB887X",
+        "95415": "AB887X",
+        "95416": "AB887X",
+        "95417": "AB887X",
+        "95418": "AB887X",
+        "95419": "AB887X",
+        "95420": "AB887X",
+        "95421": "AB887X",
+        "95422": "AB887X",
+        "95423": "AB887X",
+        "95424": "AB887X",
+        "95425": "AB887X",
+        "95426": "AB887X",
+        "95427": "AB887X",
+        "95428": "AB887X",
+        "95429": "AB887X",
+        "95430": "AB887X",
+        "95431": "AB887X",
+        "95432": "AB887X",
+        "95433": "AB887X",
+        "95435": "AB887X",
+        "95436": "AB887X",
+        "95437": "AB887X",
+        "95439": "AB887X",
+        "95441": "AB887X",
+        "95442": "AB887X",
+        "95443": "AB887X",
+        "95444": "AB887X",
+        "95445": "AB887X",
+        "95446": "AB887X",
+        "95448": "AB887X",
+        "95449": "AB887X",
+        "95450": "AB887X",
+        "95451": "AB887X",
+        "95452": "AB887X",
+        "95453": "AB887X",
+        "95454": "AB887X",
+        "95456": "AB887X",
+        "95457": "AB887X",
+        "95458": "AB887X",
+        "95459": "AB887X",
+        "95460": "AB887X",
+        "95461": "AB887X",
+        "95462": "AB887X",
+        "95463": "AB887X",
+        "95464": "AB887X",
+        "95465": "AB887X",
+        "95466": "AB887X",
+        "95467": "AB887X",
+        "95468": "AB887X",
+        "95469": "AB887X",
+        "95470": "AB887X",
+        "95471": "AB887X",
+        "95472": "AB887X",
+        "95473": "AB887X",
+        "95476": "AB887X",
+        "95480": "AB887X",
+        "95481": "AB887X",
+        "95482": "AB887X",
+        "95485": "AB887X",
+        "95486": "AB887X",
+        "95487": "AB887X",
+        "95488": "AB887X",
+        "95490": "AB887X",
+        "95492": "AB887X",
+        "95493": "AB887X",
+        "95494": "AB887X",
+        "95497": "AB887X",
+        "95501": "AB890X",
+        "95502": "AB890X",
+        "95503": "AB890X",
+        "95511": "AB890X",
+        "95514": "AB890X",
+        "95518": "AB890X",
+        "95519": "AB890X",
+        "95521": "AB890X",
+        "95524": "AB890X",
+        "95525": "AB890X",
+        "95526": "AB890X",
+        "95527": "AB890X",
+        "95528": "AB890X",
+        "95531": "AB890X",
+        "95532": "AB890X",
+        "95534": "AB890X",
+        "95536": "AB890X",
+        "95537": "AB890X",
+        "95538": "AB890X",
+        "95540": "AB890X",
+        "95542": "AB890X",
+        "95543": "AB890X",
+        "95545": "AB890X",
+        "95546": "AB890X",
+        "95547": "AB890X",
+        "95548": "AB890X",
+        "95549": "AB890X",
+        "95550": "AB890X",
+        "95551": "AB890X",
+        "95552": "AB890X",
+        "95553": "AB890X",
+        "95554": "AB890X",
+        "95555": "AB890X",
+        "95556": "AB890X",
+        "95558": "AB890X",
+        "95559": "AB890X",
+        "95560": "AB890X",
+        "95562": "AB890X",
+        "95563": "AB890X",
+        "95564": "AB890X",
+        "95565": "AB890X",
+        "95567": "AB890X",
+        "95568": "AB890X",
+        "95569": "AB890X",
+        "95570": "AB890X",
+        "95571": "AB890X",
+        "95573": "AB890X",
+        "95585": "AB887X",
+        "95587": "AB887X",
+        "95589": "AB890X",
+        "95595": "AB890X",
+        "95601": "AB887X",
+        "95602": "AB887X",
+        "95603": "AB887X",
+        "95604": "AB887X",
+        "95605": "AB887X",
+        "95606": "AB887X",
+        "95607": "AB887X",
+        "95608": "AB887X",
+        "95609": "AB887X",
+        "95610": "AB887X",
+        "95611": "AB887X",
+        "95612": "AB887X",
+        "95613": "AB887X",
+        "95614": "AB887X",
+        "95615": "AB887X",
+        "95616": "AB887X",
+        "95617": "AB887X",
+        "95618": "AB887X",
+        "95619": "AB887X",
+        "95620": "AB887X",
+        "95621": "AB887X",
+        "95623": "AB887X",
+        "95624": "AB887X",
+        "95625": "AB887X",
+        "95626": "AB887X",
+        "95627": "AB887X",
+        "95628": "AB887X",
+        "95629": "AB887X",
+        "95630": "AB887X",
+        "95631": "AB887X",
+        "95632": "AB887X",
+        "95633": "AB887X",
+        "95634": "AB887X",
+        "95635": "AB887X",
+        "95636": "AB887X",
+        "95637": "AB887X",
+        "95638": "AB887X",
+        "95639": "AB887X",
+        "95640": "AB887X",
+        "95641": "AB887X",
+        "95642": "AB887X",
+        "95644": "AB887X",
+        "95645": "AB887X",
+        "95646": "AB887X",
+        "95648": "AB887X",
+        "95650": "AB887X",
+        "95651": "AB887X",
+        "95652": "AB887X",
+        "95653": "AB887X",
+        "95654": "AB887X",
+        "95655": "AB887X",
+        "95656": "AB887X",
+        "95658": "AB887X",
+        "95659": "AB887X",
+        "95660": "AB887X",
+        "95661": "AB887X",
+        "95662": "AB887X",
+        "95663": "AB887X",
+        "95664": "AB887X",
+        "95665": "AB887X",
+        "95666": "AB887X",
+        "95667": "AB887X",
+        "95668": "AB887X",
+        "95669": "AB887X",
+        "95670": "AB887X",
+        "95671": "AB887X",
+        "95672": "AB887X",
+        "95673": "AB887X",
+        "95674": "AB887X",
+        "95675": "AB887X",
+        "95676": "AB887X",
+        "95677": "AB887X",
+        "95678": "AB887X",
+        "95679": "AB887X",
+        "95680": "AB887X",
+        "95681": "AB887X",
+        "95682": "AB887X",
+        "95683": "AB887X",
+        "95684": "AB887X",
+        "95685": "AB887X",
+        "95686": "AB887X",
+        "95687": "AB887X",
+        "95688": "AB887X",
+        "95689": "AB887X",
+        "95690": "AB887X",
+        "95691": "AB887X",
+        "95692": "AB887X",
+        "95693": "AB887X",
+        "95694": "AB887X",
+        "95695": "AB887X",
+        "95696": "AB887X",
+        "95697": "AB887X",
+        "95698": "AB887X",
+        "95699": "AB887X",
+        "95701": "AB887X",
+        "95703": "AB887X",
+        "95709": "AB887X",
+        "95712": "AB887X",
+        "95713": "AB887X",
+        "95714": "AB887X",
+        "95715": "AB887X",
+        "95717": "AB887X",
+        "95720": "AB887X",
+        "95721": "AB887X",
+        "95722": "AB887X",
+        "95724": "AB887X",
+        "95726": "AB887X",
+        "95728": "AB887X",
+        "95735": "AB887X",
+        "95736": "AB887X",
+        "95741": "AB887X",
+        "95742": "AB887X",
+        "95746": "AB887X",
+        "95747": "AB887X",
+        "95757": "AB887X",
+        "95758": "AB887X",
+        "95759": "AB887X",
+        "95762": "AB887X",
+        "95763": "AB887X",
+        "95765": "AB887X",
+        "95776": "AB887X",
+        "95798": "AB887X",
+        "95799": "AB887X",
+        "95812": "AB887X",
+        "95813": "AB887X",
+        "95814": "AB887X",
+        "95815": "AB887X",
+        "95816": "AB887X",
+        "95817": "AB887X",
+        "95818": "AB887X",
+        "95819": "AB887X",
+        "95820": "AB887X",
+        "95821": "AB887X",
+        "95822": "AB887X",
+        "95823": "AB887X",
+        "95824": "AB887X",
+        "95825": "AB887X",
+        "95826": "AB887X",
+        "95827": "AB887X",
+        "95828": "AB887X",
+        "95829": "AB887X",
+        "95830": "AB887X",
+        "95831": "AB887X",
+        "95832": "AB887X",
+        "95833": "AB887X",
+        "95834": "AB887X",
+        "95835": "AB887X",
+        "95836": "AB887X",
+        "95837": "AB887X",
+        "95838": "AB887X",
+        "95840": "AB887X",
+        "95841": "AB887X",
+        "95842": "AB887X",
+        "95843": "AB887X",
+        "95851": "AB887X",
+        "95852": "AB887X",
+        "95853": "AB887X",
+        "95860": "AB887X",
+        "95864": "AB887X",
+        "95865": "AB887X",
+        "95866": "AB887X",
+        "95867": "AB887X",
+        "95887": "AB887X",
+        "95894": "AB887X",
+        "95899": "AB887X",
+        "95901": "AB887X",
+        "95903": "AB887X",
+        "95910": "AB887X",
+        "95912": "AB887X",
+        "95913": "AB887X",
+        "95914": "AB887X",
+        "95915": "AB887X",
+        "95916": "AB887X",
+        "95917": "AB887X",
+        "95918": "AB887X",
+        "95919": "AB887X",
+        "95920": "AB887X",
+        "95922": "AB887X",
+        "95923": "AB887X",
+        "95924": "AB887X",
+        "95925": "AB887X",
+        "95926": "AB887X",
+        "95927": "AB887X",
+        "95928": "AB887X",
+        "95929": "AB887X",
+        "95930": "AB887X",
+        "95932": "AB887X",
+        "95934": "AB887X",
+        "95935": "AB887X",
+        "95936": "AB887X",
+        "95937": "AB887X",
+        "95938": "AB887X",
+        "95939": "AB887X",
+        "95940": "AB887X",
+        "95941": "AB887X",
+        "95942": "AB887X",
+        "95943": "AB887X",
+        "95944": "AB887X",
+        "95945": "AB887X",
+        "95946": "AB887X",
+        "95947": "AB887X",
+        "95948": "AB887X",
+        "95949": "AB887X",
+        "95950": "AB887X",
+        "95951": "AB887X",
+        "95953": "AB887X",
+        "95954": "AB887X",
+        "95955": "AB887X",
+        "95956": "AB887X",
+        "95957": "AB887X",
+        "95958": "AB887X",
+        "95959": "AB887X",
+        "95960": "AB887X",
+        "95961": "AB887X",
+        "95962": "AB887X",
+        "95963": "AB887X",
+        "95965": "AB887X",
+        "95966": "AB887X",
+        "95967": "AB887X",
+        "95968": "AB887X",
+        "95969": "AB887X",
+        "95970": "AB887X",
+        "95971": "AB887X",
+        "95972": "AB887X",
+        "95973": "AB887X",
+        "95974": "AB887X",
+        "95975": "AB887X",
+        "95976": "AB887X",
+        "95977": "AB887X",
+        "95978": "AB887X",
+        "95979": "AB887X",
+        "95980": "AB887X",
+        "95981": "AB887X",
+        "95982": "AB887X",
+        "95983": "AB887X",
+        "95984": "AB887X",
+        "95986": "AB887X",
+        "95987": "AB887X",
+        "95988": "AB887X",
+        "95991": "AB887X",
+        "95992": "AB887X",
+        "95993": "AB887X",
+        "96001": "AB887X",
+        "96002": "AB887X",
+        "96003": "AB887X",
+        "96006": "AB890X",
+        "96007": "AB887X",
+        "96008": "AB887X",
+        "96009": "AB887X",
+        "96010": "AB890X",
+        "96011": "AB887X",
+        "96013": "AB887X",
+        "96014": "AB890X",
+        "96015": "AB890X",
+        "96016": "AB887X",
+        "96017": "AB887X",
+        "96019": "AB887X",
+        "96020": "AB887X",
+        "96021": "AB887X",
+        "96022": "AB887X",
+        "96023": "AB890X",
+        "96024": "AB890X",
+        "96025": "AB890X",
+        "96027": "AB890X",
+        "96028": "AB887X",
+        "96029": "AB887X",
+        "96031": "AB890X",
+        "96032": "AB890X",
+        "96033": "AB887X",
+        "96034": "AB890X",
+        "96035": "AB887X",
+        "96037": "AB890X",
+        "96038": "AB890X",
+        "96039": "AB890X",
+        "96040": "AB887X",
+        "96041": "AB890X",
+        "96044": "AB890X",
+        "96046": "AB890X",
+        "96047": "AB887X",
+        "96048": "AB890X",
+        "96049": "AB887X",
+        "96050": "AB890X",
+        "96051": "AB887X",
+        "96052": "AB890X",
+        "96054": "AB890X",
+        "96055": "AB887X",
+        "96056": "AB887X",
+        "96057": "AB890X",
+        "96058": "AB890X",
+        "96059": "AB887X",
+        "96061": "AB887X",
+        "96062": "AB887X",
+        "96063": "AB887X",
+        "96064": "AB890X",
+        "96065": "AB887X",
+        "96067": "AB890X",
+        "96068": "AB887X",
+        "96069": "AB887X",
+        "96070": "AB887X",
+        "96071": "AB887X",
+        "96073": "AB887X",
+        "96074": "AB887X",
+        "96075": "AB887X",
+        "96076": "AB887X",
+        "96078": "AB887X",
+        "96079": "AB887X",
+        "96080": "AB887X",
+        "96084": "AB887X",
+        "96085": "AB890X",
+        "96086": "AB890X",
+        "96087": "AB887X",
+        "96088": "AB887X",
+        "96089": "AB887X",
+        "96090": "AB887X",
+        "96091": "AB890X",
+        "96092": "AB887X",
+        "96093": "AB890X",
+        "96094": "AB890X",
+        "96095": "AB887X",
+        "96096": "AB887X",
+        "96097": "AB890X",
+        "96099": "AB887X",
+        "96101": "AB890X",
+        "96103": "AB887X",
+        "96104": "AB890X",
+        "96105": "AB887X",
+        "96106": "AB887X",
+        "96107": "AB890X",
+        "96108": "AB890X",
+        "96109": "AB887X",
+        "96110": "AB890X",
+        "96111": "AB887X",
+        "96112": "AB890X",
+        "96113": "AB887X",
+        "96114": "AB887X",
+        "96115": "AB890X",
+        "96116": "AB890X",
+        "96117": "AB887X",
+        "96118": "AB887X",
+        "96119": "AB887X",
+        "96120": "AB887X",
+        "96121": "AB887X",
+        "96122": "AB887X",
+        "96123": "AB887X",
+        "96124": "AB887X",
+        "96125": "AB887X",
+        "96126": "AB887X",
+        "96127": "AB887X",
+        "96128": "AB887X",
+        "96129": "AB887X",
+        "96130": "AB887X",
+        "96132": "AB887X",
+        "96133": "AB890X",
+        "96134": "AB890X",
+        "96135": "AB887X",
+        "96136": "AB887X",
+        "96137": "AB887X",
+        "96140": "AB887X",
+        "96141": "AB887X",
+        "96142": "AB887X",
+        "96143": "AB887X",
+        "96145": "AB887X",
+        "96146": "AB887X",
+        "96148": "AB887X",
+        "96150": "AB887X",
+        "96151": "AB887X",
+        "96152": "AB887X",
+        "96154": "AB887X",
+        "96155": "AB887X",
+        "96156": "AB887X",
+        "96157": "AB887X",
+        "96158": "AB887X",
+        "96160": "AB887X",
+        "96161": "AB887X",
+        "96162": "AB887X",
+        "97001": "AB890X",
+        "97002": "AB890X",
+        "97004": "AB890X",
+        "97005": "AB890X",
+        "97006": "AB890X",
+        "97007": "AB890X",
+        "97008": "AB890X",
+        "97009": "AB890X",
+        "97010": "AB890X",
+        "97011": "AB890X",
+        "97013": "AB890X",
+        "97014": "AB890X",
+        "97015": "AB890X",
+        "97016": "AB890X",
+        "97017": "AB890X",
+        "97018": "AB890X",
+        "97019": "AB890X",
+        "97020": "AB890X",
+        "97021": "AB890X",
+        "97022": "AB890X",
+        "97023": "AB890X",
+        "97024": "AB890X",
+        "97026": "AB890X",
+        "97027": "AB890X",
+        "97028": "AB890X",
+        "97029": "AB890X",
+        "97030": "AB890X",
+        "97031": "AB890X",
+        "97032": "AB890X",
+        "97033": "AB890X",
+        "97034": "AB890X",
+        "97035": "AB890X",
+        "97036": "AB890X",
+        "97037": "AB890X",
+        "97038": "AB890X",
+        "97039": "AB890X",
+        "97040": "AB890X",
+        "97041": "AB890X",
+        "97042": "AB890X",
+        "97044": "AB890X",
+        "97045": "AB890X",
+        "97048": "AB890X",
+        "97049": "AB890X",
+        "97050": "AB890X",
+        "97051": "AB890X",
+        "97053": "AB890X",
+        "97054": "AB890X",
+        "97055": "AB890X",
+        "97056": "AB890X",
+        "97057": "AB890X",
+        "97058": "AB890X",
+        "97060": "AB890X",
+        "97062": "AB890X",
+        "97063": "AB890X",
+        "97064": "AB890X",
+        "97065": "AB890X",
+        "97067": "AB890X",
+        "97068": "AB890X",
+        "97070": "AB890X",
+        "97071": "AB890X",
+        "97075": "AB890X",
+        "97076": "AB890X",
+        "97077": "AB890X",
+        "97078": "AB890X",
+        "97080": "AB890X",
+        "97086": "AB890X",
+        "97089": "AB890X",
+        "97101": "AB890X",
+        "97102": "AB890X",
+        "97103": "AB890X",
+        "97106": "AB890X",
+        "97107": "AB890X",
+        "97108": "AB890X",
+        "97109": "AB890X",
+        "97110": "AB890X",
+        "97111": "AB890X",
+        "97112": "AB890X",
+        "97113": "AB890X",
+        "97114": "AB890X",
+        "97115": "AB890X",
+        "97116": "AB890X",
+        "97117": "AB890X",
+        "97118": "AB890X",
+        "97119": "AB890X",
+        "97121": "AB890X",
+        "97122": "AB890X",
+        "97123": "AB890X",
+        "97124": "AB890X",
+        "97125": "AB890X",
+        "97127": "AB890X",
+        "97128": "AB890X",
+        "97130": "AB890X",
+        "97131": "AB890X",
+        "97132": "AB890X",
+        "97133": "AB890X",
+        "97134": "AB890X",
+        "97135": "AB890X",
+        "97136": "AB890X",
+        "97137": "AB890X",
+        "97138": "AB890X",
+        "97140": "AB890X",
+        "97141": "AB890X",
+        "97143": "AB890X",
+        "97144": "AB890X",
+        "97145": "AB890X",
+        "97146": "AB890X",
+        "97147": "AB890X",
+        "97148": "AB890X",
+        "97149": "AB890X",
+        "97201": "AB890X",
+        "97202": "AB890X",
+        "97203": "AB890X",
+        "97204": "AB890X",
+        "97205": "AB890X",
+        "97206": "AB890X",
+        "97207": "AB890X",
+        "97208": "AB890X",
+        "97209": "AB890X",
+        "97210": "AB890X",
+        "97211": "AB890X",
+        "97212": "AB890X",
+        "97213": "AB890X",
+        "97214": "AB890X",
+        "97215": "AB890X",
+        "97216": "AB890X",
+        "97217": "AB890X",
+        "97218": "AB890X",
+        "97219": "AB890X",
+        "97220": "AB890X",
+        "97221": "AB890X",
+        "97222": "AB890X",
+        "97223": "AB890X",
+        "97224": "AB890X",
+        "97225": "AB890X",
+        "97227": "AB890X",
+        "97228": "AB890X",
+        "97229": "AB890X",
+        "97230": "AB890X",
+        "97231": "AB890X",
+        "97232": "AB890X",
+        "97233": "AB890X",
+        "97236": "AB890X",
+        "97238": "AB890X",
+        "97239": "AB890X",
+        "97240": "AB890X",
+        "97242": "AB890X",
+        "97251": "AB890X",
+        "97253": "AB890X",
+        "97254": "AB890X",
+        "97255": "AB890X",
+        "97256": "AB890X",
+        "97258": "AB890X",
+        "97259": "AB890X",
+        "97266": "AB890X",
+        "97267": "AB890X",
+        "97268": "AB890X",
+        "97269": "AB890X",
+        "97271": "AB890X",
+        "97272": "AB890X",
+        "97280": "AB890X",
+        "97281": "AB890X",
+        "97282": "AB890X",
+        "97283": "AB890X",
+        "97286": "AB890X",
+        "97290": "AB890X",
+        "97291": "AB890X",
+        "97292": "AB890X",
+        "97293": "AB890X",
+        "97294": "AB890X",
+        "97296": "AB890X",
+        "97298": "AB890X",
+        "97299": "AB890X",
+        "97301": "AB890X",
+        "97302": "AB890X",
+        "97303": "AB890X",
+        "97304": "AB890X",
+        "97305": "AB890X",
+        "97306": "AB890X",
+        "97307": "AB890X",
+        "97308": "AB890X",
+        "97309": "AB890X",
+        "97310": "AB890X",
+        "97311": "AB890X",
+        "97312": "AB890X",
+        "97313": "AB890X",
+        "97314": "AB890X",
+        "97317": "AB890X",
+        "97321": "AB890X",
+        "97322": "AB890X",
+        "97324": "AB890X",
+        "97325": "AB890X",
+        "97326": "AB890X",
+        "97327": "AB890X",
+        "97329": "AB890X",
+        "97330": "AB890X",
+        "97331": "AB890X",
+        "97333": "AB890X",
+        "97335": "AB890X",
+        "97336": "AB890X",
+        "97338": "AB890X",
+        "97339": "AB890X",
+        "97341": "AB890X",
+        "97342": "AB890X",
+        "97343": "AB890X",
+        "97344": "AB890X",
+        "97345": "AB890X",
+        "97346": "AB890X",
+        "97347": "AB890X",
+        "97348": "AB890X",
+        "97350": "AB890X",
+        "97351": "AB890X",
+        "97352": "AB890X",
+        "97355": "AB890X",
+        "97357": "AB890X",
+        "97358": "AB890X",
+        "97360": "AB890X",
+        "97361": "AB890X",
+        "97362": "AB890X",
+        "97364": "AB890X",
+        "97365": "AB890X",
+        "97366": "AB890X",
+        "97367": "AB890X",
+        "97368": "AB890X",
+        "97369": "AB890X",
+        "97370": "AB890X",
+        "97371": "AB890X",
+        "97372": "AB890X",
+        "97373": "AB890X",
+        "97374": "AB890X",
+        "97375": "AB890X",
+        "97376": "AB890X",
+        "97377": "AB890X",
+        "97378": "AB890X",
+        "97380": "AB890X",
+        "97381": "AB890X",
+        "97383": "AB890X",
+        "97384": "AB890X",
+        "97385": "AB890X",
+        "97386": "AB890X",
+        "97388": "AB890X",
+        "97389": "AB890X",
+        "97390": "AB890X",
+        "97391": "AB890X",
+        "97392": "AB890X",
+        "97394": "AB890X",
+        "97396": "AB890X",
+        "97401": "AB890X",
+        "97402": "AB890X",
+        "97403": "AB890X",
+        "97404": "AB890X",
+        "97405": "AB890X",
+        "97406": "AB890X",
+        "97407": "AB890X",
+        "97408": "AB890X",
+        "97409": "AB890X",
+        "97410": "AB890X",
+        "97411": "AB890X",
+        "97412": "AB890X",
+        "97413": "AB890X",
+        "97414": "AB890X",
+        "97415": "AB890X",
+        "97416": "AB890X",
+        "97417": "AB890X",
+        "97419": "AB890X",
+        "97420": "AB890X",
+        "97423": "AB890X",
+        "97424": "AB890X",
+        "97425": "AB890X",
+        "97426": "AB890X",
+        "97427": "AB890X",
+        "97428": "AB890X",
+        "97429": "AB890X",
+        "97430": "AB890X",
+        "97431": "AB890X",
+        "97432": "AB890X",
+        "97434": "AB890X",
+        "97435": "AB890X",
+        "97436": "AB890X",
+        "97437": "AB890X",
+        "97438": "AB890X",
+        "97439": "AB890X",
+        "97440": "AB890X",
+        "97441": "AB890X",
+        "97442": "AB890X",
+        "97443": "AB890X",
+        "97444": "AB890X",
+        "97446": "AB890X",
+        "97447": "AB890X",
+        "97448": "AB890X",
+        "97449": "AB890X",
+        "97450": "AB890X",
+        "97451": "AB890X",
+        "97452": "AB890X",
+        "97453": "AB890X",
+        "97454": "AB890X",
+        "97455": "AB890X",
+        "97456": "AB890X",
+        "97457": "AB890X",
+        "97458": "AB890X",
+        "97459": "AB890X",
+        "97461": "AB890X",
+        "97462": "AB890X",
+        "97463": "AB890X",
+        "97464": "AB890X",
+        "97465": "AB890X",
+        "97466": "AB890X",
+        "97467": "AB890X",
+        "97469": "AB890X",
+        "97470": "AB890X",
+        "97471": "AB890X",
+        "97472": "AB890X",
+        "97473": "AB890X",
+        "97476": "AB890X",
+        "97477": "AB890X",
+        "97478": "AB890X",
+        "97479": "AB890X",
+        "97480": "AB890X",
+        "97481": "AB890X",
+        "97482": "AB890X",
+        "97484": "AB890X",
+        "97486": "AB890X",
+        "97487": "AB890X",
+        "97488": "AB890X",
+        "97489": "AB890X",
+        "97490": "AB890X",
+        "97491": "AB890X",
+        "97492": "AB890X",
+        "97493": "AB890X",
+        "97494": "AB890X",
+        "97495": "AB890X",
+        "97496": "AB890X",
+        "97497": "AB890X",
+        "97498": "AB890X",
+        "97499": "AB890X",
+        "97501": "AB890X",
+        "97502": "AB890X",
+        "97503": "AB890X",
+        "97504": "AB890X",
+        "97520": "AB890X",
+        "97522": "AB890X",
+        "97523": "AB890X",
+        "97524": "AB890X",
+        "97525": "AB890X",
+        "97526": "AB890X",
+        "97527": "AB890X",
+        "97528": "AB890X",
+        "97530": "AB890X",
+        "97531": "AB890X",
+        "97532": "AB890X",
+        "97533": "AB890X",
+        "97534": "AB890X",
+        "97535": "AB890X",
+        "97536": "AB890X",
+        "97537": "AB890X",
+        "97538": "AB890X",
+        "97539": "AB890X",
+        "97540": "AB890X",
+        "97541": "AB890X",
+        "97543": "AB890X",
+        "97544": "AB890X",
+        "97601": "AB890X",
+        "97602": "AB890X",
+        "97603": "AB890X",
+        "97604": "AB890X",
+        "97620": "AB890X",
+        "97621": "AB890X",
+        "97622": "AB890X",
+        "97623": "AB890X",
+        "97624": "AB890X",
+        "97625": "AB890X",
+        "97626": "AB890X",
+        "97627": "AB890X",
+        "97630": "AB890X",
+        "97632": "AB890X",
+        "97633": "AB890X",
+        "97634": "AB890X",
+        "97635": "AB890X",
+        "97636": "AB890X",
+        "97637": "AB890X",
+        "97638": "AB890X",
+        "97639": "AB890X",
+        "97640": "AB890X",
+        "97641": "AB890X",
+        "97701": "AB890X",
+        "97702": "AB890X",
+        "97707": "AB890X",
+        "97708": "AB890X",
+        "97709": "AB890X",
+        "97710": "AB890X",
+        "97711": "AB890X",
+        "97712": "AB890X",
+        "97720": "AB890X",
+        "97721": "AB890X",
+        "97722": "AB890X",
+        "97730": "AB890X",
+        "97731": "AB890X",
+        "97732": "AB890X",
+        "97733": "AB890X",
+        "97734": "AB890X",
+        "97735": "AB890X",
+        "97736": "AB890X",
+        "97737": "AB890X",
+        "97738": "AB890X",
+        "97739": "AB890X",
+        "97741": "AB890X",
+        "97750": "AB890X",
+        "97751": "AB890X",
+        "97752": "AB890X",
+        "97753": "AB890X",
+        "97754": "AB890X",
+        "97756": "AB890X",
+        "97758": "AB890X",
+        "97759": "AB890X",
+        "97760": "AB890X",
+        "97761": "AB890X",
+        "97801": "AB890X",
+        "97810": "AB890X",
+        "97812": "AB890X",
+        "97813": "AB890X",
+        "97814": "AB890X",
+        "97817": "AB890X",
+        "97818": "AB890X",
+        "97819": "AB890X",
+        "97820": "AB890X",
+        "97823": "AB890X",
+        "97824": "AB890X",
+        "97825": "AB890X",
+        "97826": "AB890X",
+        "97827": "AB890X",
+        "97828": "AB890X",
+        "97830": "AB890X",
+        "97833": "AB890X",
+        "97834": "AB890X",
+        "97835": "AB890X",
+        "97836": "AB890X",
+        "97837": "AB890X",
+        "97838": "AB890X",
+        "97839": "AB890X",
+        "97840": "AB890X",
+        "97841": "AB890X",
+        "97842": "AB890X",
+        "97843": "AB890X",
+        "97844": "AB890X",
+        "97845": "AB890X",
+        "97846": "AB890X",
+        "97848": "AB890X",
+        "97850": "AB890X",
+        "97856": "AB890X",
+        "97857": "AB890X",
+        "97859": "AB890X",
+        "97861": "AB890X",
+        "97862": "AB890X",
+        "97864": "AB890X",
+        "97865": "AB890X",
+        "97867": "AB890X",
+        "97868": "AB890X",
+        "97869": "AB890X",
+        "97870": "AB890X",
+        "97873": "AB890X",
+        "97874": "AB890X",
+        "97875": "AB890X",
+        "97876": "AB890X",
+        "97877": "AB890X",
+        "97880": "AB890X",
+        "97882": "AB890X",
+        "97883": "AB890X",
+        "97884": "AB890X",
+        "97885": "AB890X",
+        "97886": "AB890X",
+        "97901": "AB890X",
+        "97902": "AB890X",
+        "97903": "AB890X",
+        "97904": "AB890X",
+        "97905": "AB890X",
+        "97906": "AB890X",
+        "97907": "AB890X",
+        "97908": "AB890X",
+        "97909": "AB890X",
+        "97910": "AB890X",
+        "97911": "AB890X",
+        "97913": "AB890X",
+        "97914": "AB890X",
+        "97917": "AB890X",
+        "97918": "AB890X",
+        "97920": "AB890X",
+        "98001": "AB890X",
+        "98002": "AB890X",
+        "98003": "AB890X",
+        "98004": "AB890X",
+        "98005": "AB890X",
+        "98006": "AB890X",
+        "98007": "AB890X",
+        "98008": "AB890X",
+        "98009": "AB890X",
+        "98010": "AB890X",
+        "98011": "AB890X",
+        "98012": "AB890X",
+        "98013": "AB890X",
+        "98014": "AB890X",
+        "98015": "AB890X",
+        "98019": "AB890X",
+        "98020": "AB890X",
+        "98021": "AB890X",
+        "98022": "AB890X",
+        "98023": "AB890X",
+        "98024": "AB890X",
+        "98025": "AB890X",
+        "98026": "AB890X",
+        "98027": "AB890X",
+        "98028": "AB890X",
+        "98029": "AB890X",
+        "98030": "AB890X",
+        "98031": "AB890X",
+        "98032": "AB890X",
+        "98033": "AB890X",
+        "98034": "AB890X",
+        "98035": "AB890X",
+        "98036": "AB890X",
+        "98037": "AB890X",
+        "98038": "AB890X",
+        "98039": "AB890X",
+        "98040": "AB890X",
+        "98041": "AB890X",
+        "98042": "AB890X",
+        "98043": "AB890X",
+        "98045": "AB890X",
+        "98046": "AB890X",
+        "98047": "AB890X",
+        "98050": "AB890X",
+        "98051": "AB890X",
+        "98052": "AB890X",
+        "98053": "AB890X",
+        "98054": "AB890X",
+        "98055": "AB890X",
+        "98056": "AB890X",
+        "98057": "AB890X",
+        "98058": "AB890X",
+        "98059": "AB890X",
+        "98061": "AB890X",
+        "98062": "AB890X",
+        "98063": "AB890X",
+        "98064": "AB890X",
+        "98065": "AB890X",
+        "98068": "AB890X",
+        "98070": "AB890X",
+        "98071": "AB890X",
+        "98072": "AB890X",
+        "98073": "AB890X",
+        "98074": "AB890X",
+        "98075": "AB890X",
+        "98077": "AB890X",
+        "98082": "AB890X",
+        "98083": "AB890X",
+        "98087": "AB890X",
+        "98089": "AB890X",
+        "98092": "AB890X",
+        "98093": "AB890X",
+        "98101": "AB890X",
+        "98102": "AB890X",
+        "98103": "AB890X",
+        "98104": "AB890X",
+        "98105": "AB890X",
+        "98106": "AB890X",
+        "98107": "AB890X",
+        "98108": "AB890X",
+        "98109": "AB890X",
+        "98110": "AB890X",
+        "98111": "AB890X",
+        "98112": "AB890X",
+        "98113": "AB890X",
+        "98114": "AB890X",
+        "98115": "AB890X",
+        "98116": "AB890X",
+        "98117": "AB890X",
+        "98118": "AB890X",
+        "98119": "AB890X",
+        "98121": "AB890X",
+        "98122": "AB890X",
+        "98124": "AB890X",
+        "98125": "AB890X",
+        "98126": "AB890X",
+        "98127": "AB890X",
+        "98129": "AB890X",
+        "98131": "AB890X",
+        "98132": "AB890X",
+        "98133": "AB890X",
+        "98134": "AB890X",
+        "98136": "AB890X",
+        "98138": "AB890X",
+        "98139": "AB890X",
+        "98141": "AB890X",
+        "98144": "AB890X",
+        "98145": "AB890X",
+        "98146": "AB890X",
+        "98148": "AB890X",
+        "98151": "AB890X",
+        "98154": "AB890X",
+        "98155": "AB890X",
+        "98158": "AB890X",
+        "98160": "AB890X",
+        "98161": "AB890X",
+        "98164": "AB890X",
+        "98165": "AB890X",
+        "98166": "AB890X",
+        "98168": "AB890X",
+        "98170": "AB890X",
+        "98171": "AB890X",
+        "98174": "AB890X",
+        "98175": "AB890X",
+        "98177": "AB890X",
+        "98178": "AB890X",
+        "98181": "AB890X",
+        "98184": "AB890X",
+        "98185": "AB890X",
+        "98188": "AB890X",
+        "98190": "AB890X",
+        "98191": "AB890X",
+        "98194": "AB890X",
+        "98195": "AB890X",
+        "98198": "AB890X",
+        "98199": "AB890X",
+        "98201": "AB890X",
+        "98203": "AB890X",
+        "98204": "AB890X",
+        "98205": "AB890X",
+        "98206": "AB890X",
+        "98207": "AB890X",
+        "98208": "AB890X",
+        "98213": "AB890X",
+        "98220": "AB890X",
+        "98221": "AB890X",
+        "98222": "AB890X",
+        "98223": "AB890X",
+        "98224": "AB890X",
+        "98225": "AB890X",
+        "98226": "AB890X",
+        "98227": "AB890X",
+        "98228": "AB890X",
+        "98229": "AB890X",
+        "98230": "AB890X",
+        "98231": "AB890X",
+        "98232": "AB890X",
+        "98233": "AB890X",
+        "98235": "AB890X",
+        "98236": "AB890X",
+        "98237": "AB890X",
+        "98238": "AB890X",
+        "98239": "AB890X",
+        "98240": "AB890X",
+        "98241": "AB890X",
+        "98243": "AB890X",
+        "98244": "AB890X",
+        "98245": "AB890X",
+        "98247": "AB890X",
+        "98248": "AB890X",
+        "98249": "AB890X",
+        "98250": "AB890X",
+        "98251": "AB890X",
+        "98252": "AB890X",
+        "98253": "AB890X",
+        "98255": "AB890X",
+        "98256": "AB890X",
+        "98257": "AB890X",
+        "98258": "AB890X",
+        "98259": "AB890X",
+        "98260": "AB890X",
+        "98261": "AB890X",
+        "98262": "AB890X",
+        "98263": "AB890X",
+        "98264": "AB890X",
+        "98266": "AB890X",
+        "98267": "AB890X",
+        "98270": "AB890X",
+        "98271": "AB890X",
+        "98272": "AB890X",
+        "98273": "AB890X",
+        "98274": "AB890X",
+        "98275": "AB890X",
+        "98276": "AB890X",
+        "98277": "AB890X",
+        "98278": "AB890X",
+        "98279": "AB890X",
+        "98280": "AB890X",
+        "98281": "AB890X",
+        "98282": "AB890X",
+        "98283": "AB890X",
+        "98284": "AB890X",
+        "98286": "AB890X",
+        "98287": "AB890X",
+        "98288": "AB890X",
+        "98290": "AB890X",
+        "98291": "AB890X",
+        "98292": "AB890X",
+        "98293": "AB890X",
+        "98294": "AB890X",
+        "98295": "AB890X",
+        "98296": "AB890X",
+        "98297": "AB890X",
+        "98303": "AB890X",
+        "98304": "AB890X",
+        "98305": "AB890X",
+        "98310": "AB890X",
+        "98311": "AB890X",
+        "98312": "AB890X",
+        "98314": "AB890X",
+        "98315": "AB890X",
+        "98320": "AB890X",
+        "98321": "AB890X",
+        "98322": "AB890X",
+        "98323": "AB890X",
+        "98324": "AB890X",
+        "98325": "AB890X",
+        "98326": "AB890X",
+        "98327": "AB890X",
+        "98328": "AB890X",
+        "98329": "AB890X",
+        "98330": "AB890X",
+        "98331": "AB890X",
+        "98332": "AB890X",
+        "98333": "AB890X",
+        "98335": "AB890X",
+        "98336": "AB890X",
+        "98337": "AB890X",
+        "98338": "AB890X",
+        "98339": "AB890X",
+        "98340": "AB890X",
+        "98342": "AB890X",
+        "98343": "AB890X",
+        "98344": "AB890X",
+        "98345": "AB890X",
+        "98346": "AB890X",
+        "98348": "AB890X",
+        "98349": "AB890X",
+        "98350": "AB890X",
+        "98351": "AB890X",
+        "98352": "AB890X",
+        "98353": "AB890X",
+        "98354": "AB890X",
+        "98355": "AB890X",
+        "98356": "AB890X",
+        "98357": "AB890X",
+        "98358": "AB890X",
+        "98359": "AB890X",
+        "98360": "AB890X",
+        "98361": "AB890X",
+        "98362": "AB890X",
+        "98363": "AB890X",
+        "98364": "AB890X",
+        "98365": "AB890X",
+        "98366": "AB890X",
+        "98367": "AB890X",
+        "98368": "AB890X",
+        "98370": "AB890X",
+        "98371": "AB890X",
+        "98372": "AB890X",
+        "98373": "AB890X",
+        "98374": "AB890X",
+        "98375": "AB890X",
+        "98376": "AB890X",
+        "98377": "AB890X",
+        "98378": "AB890X",
+        "98380": "AB890X",
+        "98381": "AB890X",
+        "98382": "AB890X",
+        "98383": "AB890X",
+        "98384": "AB890X",
+        "98385": "AB890X",
+        "98386": "AB890X",
+        "98387": "AB890X",
+        "98388": "AB890X",
+        "98390": "AB890X",
+        "98391": "AB890X",
+        "98392": "AB890X",
+        "98393": "AB890X",
+        "98394": "AB890X",
+        "98395": "AB890X",
+        "98396": "AB890X",
+        "98397": "AB890X",
+        "98398": "AB890X",
+        "98401": "AB890X",
+        "98402": "AB890X",
+        "98403": "AB890X",
+        "98404": "AB890X",
+        "98405": "AB890X",
+        "98406": "AB890X",
+        "98407": "AB890X",
+        "98408": "AB890X",
+        "98409": "AB890X",
+        "98411": "AB890X",
+        "98412": "AB890X",
+        "98413": "AB890X",
+        "98415": "AB890X",
+        "98416": "AB890X",
+        "98417": "AB890X",
+        "98418": "AB890X",
+        "98419": "AB890X",
+        "98421": "AB890X",
+        "98422": "AB890X",
+        "98424": "AB890X",
+        "98430": "AB890X",
+        "98431": "AB890X",
+        "98433": "AB890X",
+        "98438": "AB890X",
+        "98439": "AB890X",
+        "98442": "AB890X",
+        "98443": "AB890X",
+        "98444": "AB890X",
+        "98445": "AB890X",
+        "98446": "AB890X",
+        "98447": "AB890X",
+        "98448": "AB890X",
+        "98450": "AB890X",
+        "98455": "AB890X",
+        "98460": "AB890X",
+        "98464": "AB890X",
+        "98465": "AB890X",
+        "98466": "AB890X",
+        "98467": "AB890X",
+        "98471": "AB890X",
+        "98477": "AB890X",
+        "98481": "AB890X",
+        "98490": "AB890X",
+        "98492": "AB890X",
+        "98493": "AB890X",
+        "98496": "AB890X",
+        "98497": "AB890X",
+        "98498": "AB890X",
+        "98499": "AB890X",
+        "98501": "AB890X",
+        "98502": "AB890X",
+        "98503": "AB890X",
+        "98504": "AB890X",
+        "98505": "AB890X",
+        "98506": "AB890X",
+        "98507": "AB890X",
+        "98508": "AB890X",
+        "98509": "AB890X",
+        "98511": "AB890X",
+        "98512": "AB890X",
+        "98513": "AB890X",
+        "98516": "AB890X",
+        "98520": "AB890X",
+        "98522": "AB890X",
+        "98524": "AB890X",
+        "98526": "AB890X",
+        "98527": "AB890X",
+        "98528": "AB890X",
+        "98530": "AB890X",
+        "98531": "AB890X",
+        "98532": "AB890X",
+        "98533": "AB890X",
+        "98535": "AB890X",
+        "98536": "AB890X",
+        "98537": "AB890X",
+        "98538": "AB890X",
+        "98539": "AB890X",
+        "98540": "AB890X",
+        "98541": "AB890X",
+        "98542": "AB890X",
+        "98544": "AB890X",
+        "98546": "AB890X",
+        "98547": "AB890X",
+        "98548": "AB890X",
+        "98550": "AB890X",
+        "98552": "AB890X",
+        "98554": "AB890X",
+        "98555": "AB890X",
+        "98556": "AB890X",
+        "98557": "AB890X",
+        "98558": "AB890X",
+        "98559": "AB890X",
+        "98560": "AB890X",
+        "98561": "AB890X",
+        "98562": "AB890X",
+        "98563": "AB890X",
+        "98564": "AB890X",
+        "98565": "AB890X",
+        "98566": "AB890X",
+        "98568": "AB890X",
+        "98569": "AB890X",
+        "98570": "AB890X",
+        "98571": "AB890X",
+        "98572": "AB890X",
+        "98575": "AB890X",
+        "98576": "AB890X",
+        "98577": "AB890X",
+        "98579": "AB890X",
+        "98580": "AB890X",
+        "98581": "AB890X",
+        "98582": "AB890X",
+        "98583": "AB890X",
+        "98584": "AB890X",
+        "98585": "AB890X",
+        "98586": "AB890X",
+        "98587": "AB890X",
+        "98588": "AB890X",
+        "98589": "AB890X",
+        "98590": "AB890X",
+        "98591": "AB890X",
+        "98592": "AB890X",
+        "98593": "AB890X",
+        "98595": "AB890X",
+        "98596": "AB890X",
+        "98597": "AB890X",
+        "98599": "AB890X",
+        "98601": "AB890X",
+        "98602": "AB890X",
+        "98603": "AB890X",
+        "98604": "AB890X",
+        "98605": "AB890X",
+        "98606": "AB890X",
+        "98607": "AB890X",
+        "98609": "AB890X",
+        "98610": "AB890X",
+        "98611": "AB890X",
+        "98612": "AB890X",
+        "98613": "AB890X",
+        "98614": "AB890X",
+        "98616": "AB890X",
+        "98617": "AB890X",
+        "98619": "AB890X",
+        "98620": "AB890X",
+        "98621": "AB890X",
+        "98622": "AB890X",
+        "98623": "AB890X",
+        "98624": "AB890X",
+        "98625": "AB890X",
+        "98626": "AB890X",
+        "98628": "AB890X",
+        "98629": "AB890X",
+        "98631": "AB890X",
+        "98632": "AB890X",
+        "98635": "AB890X",
+        "98637": "AB890X",
+        "98638": "AB890X",
+        "98639": "AB890X",
+        "98640": "AB890X",
+        "98641": "AB890X",
+        "98642": "AB890X",
+        "98643": "AB890X",
+        "98644": "AB890X",
+        "98645": "AB890X",
+        "98647": "AB890X",
+        "98648": "AB890X",
+        "98649": "AB890X",
+        "98650": "AB890X",
+        "98651": "AB890X",
+        "98660": "AB890X",
+        "98661": "AB890X",
+        "98662": "AB890X",
+        "98663": "AB890X",
+        "98664": "AB890X",
+        "98665": "AB890X",
+        "98666": "AB890X",
+        "98667": "AB890X",
+        "98668": "AB890X",
+        "98670": "AB890X",
+        "98671": "AB890X",
+        "98672": "AB890X",
+        "98673": "AB890X",
+        "98674": "AB890X",
+        "98675": "AB890X",
+        "98682": "AB890X",
+        "98683": "AB890X",
+        "98684": "AB890X",
+        "98685": "AB890X",
+        "98686": "AB890X",
+        "98687": "AB890X",
+        "98801": "AB890X",
+        "98802": "AB890X",
+        "98807": "AB890X",
+        "98811": "AB890X",
+        "98812": "AB890X",
+        "98813": "AB890X",
+        "98814": "AB890X",
+        "98815": "AB890X",
+        "98816": "AB890X",
+        "98817": "AB890X",
+        "98819": "AB890X",
+        "98821": "AB890X",
+        "98822": "AB890X",
+        "98823": "AB890X",
+        "98824": "AB890X",
+        "98826": "AB890X",
+        "98827": "AB890X",
+        "98828": "AB890X",
+        "98829": "AB890X",
+        "98830": "AB890X",
+        "98831": "AB890X",
+        "98832": "AB890X",
+        "98833": "AB890X",
+        "98834": "AB890X",
+        "98836": "AB890X",
+        "98837": "AB890X",
+        "98840": "AB890X",
+        "98841": "AB890X",
+        "98843": "AB890X",
+        "98844": "AB890X",
+        "98845": "AB890X",
+        "98846": "AB890X",
+        "98847": "AB890X",
+        "98848": "AB890X",
+        "98849": "AB890X",
+        "98850": "AB890X",
+        "98851": "AB890X",
+        "98852": "AB890X",
+        "98853": "AB890X",
+        "98855": "AB890X",
+        "98856": "AB890X",
+        "98857": "AB890X",
+        "98858": "AB890X",
+        "98859": "AB890X",
+        "98860": "AB890X",
+        "98862": "AB890X",
+        "98901": "AB890X",
+        "98902": "AB890X",
+        "98903": "AB890X",
+        "98904": "AB890X",
+        "98907": "AB890X",
+        "98908": "AB890X",
+        "98909": "AB890X",
+        "98920": "AB890X",
+        "98921": "AB890X",
+        "98922": "AB890X",
+        "98923": "AB890X",
+        "98925": "AB890X",
+        "98926": "AB890X",
+        "98929": "AB890X",
+        "98930": "AB890X",
+        "98932": "AB890X",
+        "98933": "AB890X",
+        "98934": "AB890X",
+        "98935": "AB890X",
+        "98936": "AB890X",
+        "98937": "AB890X",
+        "98938": "AB890X",
+        "98939": "AB890X",
+        "98940": "AB890X",
+        "98941": "AB890X",
+        "98942": "AB890X",
+        "98943": "AB890X",
+        "98944": "AB890X",
+        "98946": "AB890X",
+        "98947": "AB890X",
+        "98948": "AB890X",
+        "98950": "AB890X",
+        "98951": "AB890X",
+        "98952": "AB890X",
+        "98953": "AB890X",
+        "99001": "AB890X",
+        "99003": "AB890X",
+        "99004": "AB890X",
+        "99005": "AB890X",
+        "99006": "AB890X",
+        "99008": "AB890X",
+        "99009": "AB890X",
+        "99011": "AB890X",
+        "99012": "AB890X",
+        "99013": "AB890X",
+        "99014": "AB890X",
+        "99016": "AB890X",
+        "99017": "AB890X",
+        "99018": "AB890X",
+        "99019": "AB890X",
+        "99020": "AB890X",
+        "99021": "AB890X",
+        "99022": "AB890X",
+        "99023": "AB890X",
+        "99025": "AB890X",
+        "99026": "AB890X",
+        "99027": "AB890X",
+        "99029": "AB890X",
+        "99030": "AB890X",
+        "99031": "AB890X",
+        "99032": "AB890X",
+        "99033": "AB890X",
+        "99034": "AB890X",
+        "99036": "AB890X",
+        "99037": "AB890X",
+        "99039": "AB890X",
+        "99040": "AB890X",
+        "99101": "AB890X",
+        "99102": "AB890X",
+        "99103": "AB890X",
+        "99104": "AB890X",
+        "99105": "AB890X",
+        "99107": "AB890X",
+        "99109": "AB890X",
+        "99110": "AB890X",
+        "99111": "AB890X",
+        "99113": "AB890X",
+        "99114": "AB890X",
+        "99115": "AB890X",
+        "99116": "AB890X",
+        "99117": "AB890X",
+        "99118": "AB890X",
+        "99119": "AB890X",
+        "99121": "AB890X",
+        "99122": "AB890X",
+        "99123": "AB890X",
+        "99124": "AB890X",
+        "99125": "AB890X",
+        "99126": "AB890X",
+        "99128": "AB890X",
+        "99129": "AB890X",
+        "99130": "AB890X",
+        "99131": "AB890X",
+        "99133": "AB890X",
+        "99134": "AB890X",
+        "99135": "AB890X",
+        "99136": "AB890X",
+        "99137": "AB890X",
+        "99138": "AB890X",
+        "99139": "AB890X",
+        "99140": "AB890X",
+        "99141": "AB890X",
+        "99143": "AB890X",
+        "99144": "AB890X",
+        "99146": "AB890X",
+        "99147": "AB890X",
+        "99148": "AB890X",
+        "99149": "AB890X",
+        "99150": "AB890X",
+        "99151": "AB890X",
+        "99152": "AB890X",
+        "99153": "AB890X",
+        "99154": "AB890X",
+        "99155": "AB890X",
+        "99156": "AB890X",
+        "99157": "AB890X",
+        "99158": "AB890X",
+        "99159": "AB890X",
+        "99160": "AB890X",
+        "99161": "AB890X",
+        "99163": "AB890X",
+        "99164": "AB890X",
+        "99165": "AB890X",
+        "99166": "AB890X",
+        "99167": "AB890X",
+        "99169": "AB890X",
+        "99170": "AB890X",
+        "99171": "AB890X",
+        "99173": "AB890X",
+        "99174": "AB890X",
+        "99176": "AB890X",
+        "99179": "AB890X",
+        "99180": "AB890X",
+        "99181": "AB890X",
+        "99185": "AB890X",
+        "99201": "AB890X",
+        "99202": "AB890X",
+        "99203": "AB890X",
+        "99204": "AB890X",
+        "99205": "AB890X",
+        "99206": "AB890X",
+        "99207": "AB890X",
+        "99208": "AB890X",
+        "99209": "AB890X",
+        "99210": "AB890X",
+        "99211": "AB890X",
+        "99212": "AB890X",
+        "99213": "AB890X",
+        "99214": "AB890X",
+        "99215": "AB890X",
+        "99216": "AB890X",
+        "99217": "AB890X",
+        "99218": "AB890X",
+        "99219": "AB890X",
+        "99220": "AB890X",
+        "99223": "AB890X",
+        "99224": "AB890X",
+        "99228": "AB890X",
+        "99251": "AB890X",
+        "99252": "AB890X",
+        "99256": "AB890X",
+        "99258": "AB890X",
+        "99260": "AB890X",
+        "99299": "AB890X",
+        "99301": "AB890X",
+        "99302": "AB890X",
+        "99320": "AB890X",
+        "99321": "AB890X",
+        "99322": "AB890X",
+        "99323": "AB890X",
+        "99324": "AB890X",
+        "99326": "AB890X",
+        "99328": "AB890X",
+        "99329": "AB890X",
+        "99330": "AB890X",
+        "99333": "AB890X",
+        "99335": "AB890X",
+        "99336": "AB890X",
+        "99337": "AB890X",
+        "99338": "AB890X",
+        "99341": "AB890X",
+        "99343": "AB890X",
+        "99344": "AB890X",
+        "99345": "AB890X",
+        "99346": "AB890X",
+        "99347": "AB890X",
+        "99348": "AB890X",
+        "99349": "AB890X",
+        "99350": "AB890X",
+        "99352": "AB890X",
+        "99353": "AB890X",
+        "99354": "AB890X",
+        "99356": "AB890X",
+        "99357": "AB890X",
+        "99359": "AB890X",
+        "99360": "AB890X",
+        "99361": "AB890X",
+        "99362": "AB890X",
+        "99363": "AB890X",
+        "99371": "AB890X",
+        "99401": "AB890X",
+        "99402": "AB890X",
+        "99403": "AB890X",
+        "99501": "AB886X",
+        "99502": "AB886X",
+        "99503": "AB886X",
+        "99504": "AB886X",
+        "99505": "AB886X",
+        "99506": "AB886X",
+        "99507": "AB886X",
+        "99508": "AB886X",
+        "99509": "AB886X",
+        "99510": "AB886X",
+        "99511": "AB886X",
+        "99513": "AB886X",
+        "99514": "AB886X",
+        "99515": "AB886X",
+        "99516": "AB886X",
+        "99517": "AB886X",
+        "99518": "AB886X",
+        "99519": "AB886X",
+        "99520": "AB886X",
+        "99521": "AB886X",
+        "99522": "AB886X",
+        "99523": "AB886X",
+        "99524": "AB886X",
+        "99529": "AB886X",
+        "99530": "AB886X",
+        "99540": "AB886X",
+        "99545": "AB886X",
+        "99546": "AB886X",
+        "99547": "AB886X",
+        "99548": "AB886X",
+        "99549": "AB886X",
+        "99550": "AB886X",
+        "99551": "AB886X",
+        "99552": "AB886X",
+        "99553": "AB886X",
+        "99554": "AB886X",
+        "99555": "AB886X",
+        "99556": "AB886X",
+        "99557": "AB886X",
+        "99558": "AB886X",
+        "99559": "AB886X",
+        "99561": "AB886X",
+        "99563": "AB886X",
+        "99564": "AB886X",
+        "99565": "AB886X",
+        "99566": "AB886X",
+        "99567": "AB886X",
+        "99568": "AB886X",
+        "99569": "AB886X",
+        "99571": "AB886X",
+        "99572": "AB886X",
+        "99573": "AB886X",
+        "99574": "AB886X",
+        "99575": "AB886X",
+        "99576": "AB886X",
+        "99577": "AB886X",
+        "99578": "AB886X",
+        "99579": "AB886X",
+        "99580": "AB886X",
+        "99581": "AB886X",
+        "99583": "AB886X",
+        "99585": "AB886X",
+        "99586": "AB886X",
+        "99587": "AB886X",
+        "99588": "AB886X",
+        "99589": "AB886X",
+        "99590": "AB886X",
+        "99591": "AB886X",
+        "99599": "AB886X",
+        "99602": "AB886X",
+        "99603": "AB886X",
+        "99604": "AB886X",
+        "99605": "AB886X",
+        "99606": "AB886X",
+        "99607": "AB886X",
+        "99608": "AB886X",
+        "99609": "AB886X",
+        "99610": "AB886X",
+        "99611": "AB886X",
+        "99612": "AB886X",
+        "99613": "AB886X",
+        "99614": "AB886X",
+        "99615": "AB886X",
+        "99619": "AB886X",
+        "99620": "AB886X",
+        "99621": "AB886X",
+        "99622": "AB886X",
+        "99624": "AB886X",
+        "99625": "AB886X",
+        "99626": "AB886X",
+        "99627": "AB886X",
+        "99628": "AB886X",
+        "99629": "AB886X",
+        "99630": "AB886X",
+        "99631": "AB886X",
+        "99632": "AB886X",
+        "99633": "AB886X",
+        "99634": "AB886X",
+        "99635": "AB886X",
+        "99636": "AB886X",
+        "99637": "AB886X",
+        "99638": "AB886X",
+        "99639": "AB886X",
+        "99640": "AB886X",
+        "99641": "AB886X",
+        "99643": "AB886X",
+        "99644": "AB886X",
+        "99645": "AB886X",
+        "99647": "AB886X",
+        "99648": "AB886X",
+        "99649": "AB886X",
+        "99650": "AB886X",
+        "99651": "AB886X",
+        "99652": "AB886X",
+        "99653": "AB886X",
+        "99654": "AB886X",
+        "99655": "AB886X",
+        "99656": "AB886X",
+        "99657": "AB886X",
+        "99658": "AB886X",
+        "99659": "AB886X",
+        "99660": "AB886X",
+        "99661": "AB886X",
+        "99662": "AB886X",
+        "99663": "AB886X",
+        "99664": "AB886X",
+        "99665": "AB886X",
+        "99666": "AB886X",
+        "99667": "AB886X",
+        "99668": "AB886X",
+        "99669": "AB886X",
+        "99670": "AB886X",
+        "99671": "AB886X",
+        "99672": "AB886X",
+        "99674": "AB886X",
+        "99675": "AB886X",
+        "99676": "AB886X",
+        "99677": "AB886X",
+        "99678": "AB886X",
+        "99679": "AB886X",
+        "99680": "AB886X",
+        "99681": "AB886X",
+        "99682": "AB886X",
+        "99683": "AB886X",
+        "99684": "AB886X",
+        "99685": "AB886X",
+        "99686": "AB886X",
+        "99687": "AB886X",
+        "99688": "AB886X",
+        "99689": "AB886X",
+        "99690": "AB886X",
+        "99691": "AB886X",
+        "99692": "AB886X",
+        "99693": "AB886X",
+        "99694": "AB886X",
+        "99695": "AB886X",
+        "99697": "AB886X",
+        "99701": "AB886X",
+        "99702": "AB886X",
+        "99703": "AB886X",
+        "99704": "AB886X",
+        "99705": "AB886X",
+        "99706": "AB886X",
+        "99707": "AB886X",
+        "99708": "AB886X",
+        "99709": "AB886X",
+        "99710": "AB886X",
+        "99711": "AB886X",
+        "99712": "AB886X",
+        "99714": "AB886X",
+        "99716": "AB886X",
+        "99720": "AB886X",
+        "99721": "AB886X",
+        "99722": "AB886X",
+        "99723": "AB886X",
+        "99724": "AB886X",
+        "99725": "AB886X",
+        "99726": "AB886X",
+        "99727": "AB886X",
+        "99729": "AB886X",
+        "99730": "AB886X",
+        "99731": "AB886X",
+        "99732": "AB886X",
+        "99733": "AB886X",
+        "99734": "AB886X",
+        "99736": "AB886X",
+        "99737": "AB886X",
+        "99738": "AB886X",
+        "99739": "AB886X",
+        "99740": "AB886X",
+        "99741": "AB886X",
+        "99742": "AB886X",
+        "99743": "AB886X",
+        "99744": "AB886X",
+        "99745": "AB886X",
+        "99746": "AB886X",
+        "99747": "AB886X",
+        "99748": "AB886X",
+        "99749": "AB886X",
+        "99750": "AB886X",
+        "99751": "AB886X",
+        "99752": "AB886X",
+        "99753": "AB886X",
+        "99754": "AB886X",
+        "99755": "AB886X",
+        "99756": "AB886X",
+        "99757": "AB886X",
+        "99758": "AB886X",
+        "99759": "AB886X",
+        "99760": "AB886X",
+        "99761": "AB886X",
+        "99762": "AB886X",
+        "99763": "AB886X",
+        "99764": "AB886X",
+        "99765": "AB886X",
+        "99766": "AB886X",
+        "99767": "AB886X",
+        "99768": "AB886X",
+        "99769": "AB886X",
+        "99770": "AB886X",
+        "99771": "AB886X",
+        "99772": "AB886X",
+        "99773": "AB886X",
+        "99774": "AB886X",
+        "99775": "AB886X",
+        "99776": "AB886X",
+        "99777": "AB886X",
+        "99778": "AB886X",
+        "99779": "AB886X",
+        "99780": "AB886X",
+        "99781": "AB886X",
+        "99782": "AB886X",
+        "99783": "AB886X",
+        "99784": "AB886X",
+        "99785": "AB886X",
+        "99786": "AB886X",
+        "99788": "AB886X",
+        "99789": "AB886X",
+        "99790": "AB886X",
+        "99791": "AB886X",
+        "99801": "AB886X",
+        "99802": "AB886X",
+        "99803": "AB886X",
+        "99811": "AB886X",
+        "99812": "AB886X",
+        "99820": "AB886X",
+        "99821": "AB886X",
+        "99824": "AB886X",
+        "99825": "AB886X",
+        "99826": "AB886X",
+        "99827": "AB886X",
+        "99829": "AB886X",
+        "99830": "AB886X",
+        "99832": "AB886X",
+        "99833": "AB886X",
+        "99835": "AB886X",
+        "99836": "AB886X",
+        "99840": "AB886X",
+        "99841": "AB886X",
+        "99850": "AB886X",
+        "99901": "AB886X",
+        "99903": "AB886X",
+        "99918": "AB886X",
+        "99919": "AB886X",
+        "99921": "AB886X",
+        "99922": "AB886X",
+        "99923": "AB886X",
+        "99925": "AB886X",
+        "99926": "AB886X",
+        "99927": "AB886X",
+        "99928": "AB886X",
+        "99929": "AB886X",
+        "99950": "AB886X",
+        "96700": "AB888X",
+        "96701": "AB888X",
+        "96703": "AB888X",
+        "96704": "AB888X",
+        "96705": "AB888X",
+        "96706": "AB888X",
+        "96707": "AB888X",
+        "96708": "AB888X",
+        "96709": "AB888X",
+        "96710": "AB888X",
+        "96712": "AB888X",
+        "96713": "AB888X",
+        "96714": "AB888X",
+        "96715": "AB888X",
+        "96716": "AB888X",
+        "96717": "AB888X",
+        "96718": "AB888X",
+        "96719": "AB888X",
+        "96720": "AB888X",
+        "96721": "AB888X",
+        "96722": "AB888X",
+        "96725": "AB888X",
+        "96726": "AB888X",
+        "96727": "AB888X",
+        "96728": "AB888X",
+        "96729": "AB888X",
+        "96730": "AB888X",
+        "96731": "AB888X",
+        "96732": "AB888X",
+        "96733": "AB888X",
+        "96734": "AB888X",
+        "96737": "AB888X",
+        "96738": "AB888X",
+        "96739": "AB888X",
+        "96740": "AB888X",
+        "96741": "AB888X",
+        "96742": "AB888X",
+        "96743": "AB888X",
+        "96744": "AB888X",
+        "96745": "AB888X",
+        "96746": "AB888X",
+        "96747": "AB888X",
+        "96748": "AB888X",
+        "96749": "AB888X",
+        "96750": "AB888X",
+        "96751": "AB888X",
+        "96752": "AB888X",
+        "96753": "AB888X",
+        "96754": "AB888X",
+        "96755": "AB888X",
+        "96756": "AB888X",
+        "96757": "AB888X",
+        "96759": "AB888X",
+        "96760": "AB888X",
+        "96761": "AB888X",
+        "96762": "AB888X",
+        "96763": "AB888X",
+        "96764": "AB888X",
+        "96765": "AB888X",
+        "96766": "AB888X",
+        "96767": "AB888X",
+        "96768": "AB888X",
+        "96769": "AB888X",
+        "96770": "AB888X",
+        "96771": "AB888X",
+        "96772": "AB888X",
+        "96773": "AB888X",
+        "96774": "AB888X",
+        "96776": "AB888X",
+        "96777": "AB888X",
+        "96778": "AB888X",
+        "96779": "AB888X",
+        "96780": "AB888X",
+        "96781": "AB888X",
+        "96782": "AB888X",
+        "96783": "AB888X",
+        "96784": "AB888X",
+        "96785": "AB888X",
+        "96786": "AB888X",
+        "96788": "AB888X",
+        "96789": "AB888X",
+        "96790": "AB888X",
+        "96791": "AB888X",
+        "96792": "AB888X",
+        "96793": "AB888X",
+        "96795": "AB888X",
+        "96796": "AB888X",
+        "96797": "AB888X",
+        "96801": "AB888X",
+        "96802": "AB888X",
+        "96803": "AB888X",
+        "96804": "AB888X",
+        "96805": "AB888X",
+        "96806": "AB888X",
+        "96807": "AB888X",
+        "96808": "AB888X",
+        "96809": "AB888X",
+        "96810": "AB888X",
+        "96811": "AB888X",
+        "96812": "AB888X",
+        "96813": "AB888X",
+        "96814": "AB888X",
+        "96815": "AB888X",
+        "96816": "AB888X",
+        "96817": "AB888X",
+        "96818": "AB888X",
+        "96819": "AB888X",
+        "96820": "AB888X",
+        "96821": "AB888X",
+        "96822": "AB888X",
+        "96823": "AB888X",
+        "96824": "AB888X",
+        "96825": "AB888X",
+        "96826": "AB888X",
+        "96827": "AB888X",
+        "96828": "AB888X",
+        "96830": "AB888X",
+        "96835": "AB888X",
+        "96836": "AB888X",
+        "96837": "AB888X",
+        "96838": "AB888X",
+        "96839": "AB888X",
+        "96840": "AB888X",
+        "96841": "AB888X",
+        "96843": "AB888X",
+        "96844": "AB888X",
+        "96846": "AB888X",
+        "96847": "AB888X",
+        "96848": "AB888X",
+        "96849": "AB888X",
+        "96850": "AB888X",
+        "96853": "AB888X",
+        "96854": "AB888X",
+        "96857": "AB888X",
+        "96858": "AB888X",
+        "96859": "AB888X",
+        "96860": "AB888X",
+        "96861": "AB888X",
+        "96863": "AB888X",
+        "96898": "AB888X",
+        "27006": "AB887X",
+        "27007": "AB887X",
+        "27009": "AB887X",
+        "27010": "AB887X",
+        "27011": "AB887X",
+        "27012": "AB887X",
+        "27013": "AB887X",
+        "27014": "AB887X",
+        "27016": "AB887X",
+        "27017": "AB887X",
+        "27018": "AB887X",
+        "27019": "AB887X",
+        "27020": "AB887X",
+        "27021": "AB887X",
+        "27022": "AB887X",
+        "27023": "AB887X",
+        "27024": "AB887X",
+        "27025": "AB887X",
+        "27027": "AB887X",
+        "27028": "AB887X",
+        "27030": "AB887X",
+        "27031": "AB887X",
+        "27040": "AB887X",
+        "27041": "AB887X",
+        "27042": "AB887X",
+        "27043": "AB887X",
+        "27045": "AB887X",
+        "27046": "AB887X",
+        "27047": "AB887X",
+        "27048": "AB887X",
+        "27049": "AB887X",
+        "27050": "AB887X",
+        "27051": "AB887X",
+        "27052": "AB887X",
+        "27053": "AB887X",
+        "27054": "AB887X",
+        "27055": "AB887X",
+        "27094": "AB887X",
+        "27098": "AB887X",
+        "27099": "AB887X",
+        "27101": "AB887X",
+        "27102": "AB887X",
+        "27103": "AB887X",
+        "27104": "AB887X",
+        "27105": "AB887X",
+        "27106": "AB887X",
+        "27107": "AB887X",
+        "27108": "AB887X",
+        "27109": "AB887X",
+        "27110": "AB887X",
+        "27111": "AB887X",
+        "27113": "AB887X",
+        "27114": "AB887X",
+        "27115": "AB887X",
+        "27116": "AB887X",
+        "27117": "AB887X",
+        "27120": "AB887X",
+        "27127": "AB887X",
+        "27130": "AB887X",
+        "27150": "AB887X",
+        "27151": "AB887X",
+        "27152": "AB887X",
+        "27155": "AB887X",
+        "27156": "AB887X",
+        "27157": "AB887X",
+        "27198": "AB887X",
+        "27199": "AB887X",
+        "27201": "AB888X",
+        "27202": "AB888X",
+        "27203": "AB887X",
+        "27204": "AB887X",
+        "27205": "AB887X",
+        "27207": "AB888X",
+        "27208": "AB888X",
+        "27209": "AB887X",
+        "27212": "AB888X",
+        "27213": "AB888X",
+        "27214": "AB887X",
+        "27215": "AB888X",
+        "27216": "AB888X",
+        "27217": "AB888X",
+        "27220": "AB888X",
+        "27228": "AB888X",
+        "27229": "AB887X",
+        "27230": "AB887X",
+        "27231": "AB888X",
+        "27233": "AB887X",
+        "27235": "AB887X",
+        "27237": "AB888X",
+        "27239": "AB887X",
+        "27242": "AB888X",
+        "27243": "AB888X",
+        "27244": "AB888X",
+        "27247": "AB887X",
+        "27248": "AB887X",
+        "27249": "AB887X",
+        "27252": "AB888X",
+        "27253": "AB888X",
+        "27256": "AB888X",
+        "27258": "AB888X",
+        "27259": "AB888X",
+        "27260": "AB887X",
+        "27261": "AB887X",
+        "27262": "AB887X",
+        "27263": "AB887X",
+        "27264": "AB887X",
+        "27265": "AB887X",
+        "27278": "AB888X",
+        "27281": "AB888X",
+        "27282": "AB887X",
+        "27283": "AB887X",
+        "27284": "AB887X",
+        "27285": "AB887X",
+        "27288": "AB887X",
+        "27289": "AB887X",
+        "27291": "AB888X",
+        "27292": "AB887X",
+        "27293": "AB887X",
+        "27294": "AB887X",
+        "27295": "AB887X",
+        "27298": "AB887X",
+        "27299": "AB887X",
+        "27301": "AB887X",
+        "27302": "AB888X",
+        "27305": "AB888X",
+        "27306": "AB887X",
+        "27310": "AB887X",
+        "27311": "AB888X",
+        "27312": "AB888X",
+        "27313": "AB887X",
+        "27314": "AB888X",
+        "27315": "AB888X",
+        "27316": "AB887X",
+        "27317": "AB887X",
+        "27320": "AB887X",
+        "27321": "AB887X",
+        "27322": "AB887X",
+        "27323": "AB887X",
+        "27325": "AB888X",
+        "27326": "AB887X",
+        "27330": "AB888X",
+        "27331": "AB888X",
+        "27332": "AB888X",
+        "27340": "AB888X",
+        "27341": "AB887X",
+        "27342": "AB887X",
+        "27343": "AB888X",
+        "27344": "AB888X",
+        "27349": "AB888X",
+        "27350": "AB887X",
+        "27351": "AB887X",
+        "27355": "AB887X",
+        "27356": "AB887X",
+        "27357": "AB887X",
+        "27358": "AB887X",
+        "27359": "AB888X",
+        "27360": "AB887X",
+        "27361": "AB887X",
+        "27370": "AB887X",
+        "27371": "AB887X",
+        "27373": "AB887X",
+        "27374": "AB887X",
+        "27375": "AB887X",
+        "27376": "AB888X",
+        "27377": "AB887X",
+        "27379": "AB888X",
+        "27395": "AB887X",
+        "27401": "AB887X",
+        "27402": "AB887X",
+        "27403": "AB887X",
+        "27404": "AB887X",
+        "27405": "AB887X",
+        "27406": "AB887X",
+        "27407": "AB887X",
+        "27408": "AB887X",
+        "27409": "AB887X",
+        "27410": "AB887X",
+        "27411": "AB887X",
+        "27412": "AB887X",
+        "27413": "AB887X",
+        "27415": "AB887X",
+        "27416": "AB887X",
+        "27417": "AB887X",
+        "27419": "AB887X",
+        "27420": "AB887X",
+        "27425": "AB887X",
+        "27427": "AB887X",
+        "27429": "AB887X",
+        "27435": "AB887X",
+        "27438": "AB887X",
+        "27455": "AB887X",
+        "27480": "AB887X",
+        "27495": "AB887X",
+        "27497": "AB887X",
+        "27498": "AB887X",
+        "27499": "AB887X",
+        "27501": "AB888X",
+        "27502": "AB888X",
+        "27503": "AB888X",
+        "27504": "AB888X",
+        "27505": "AB888X",
+        "27506": "AB888X",
+        "27507": "AB888X",
+        "27508": "AB888X",
+        "27509": "AB888X",
+        "27510": "AB888X",
+        "27511": "AB888X",
+        "27512": "AB888X",
+        "27513": "AB888X",
+        "27514": "AB888X",
+        "27515": "AB888X",
+        "27516": "AB888X",
+        "27517": "AB888X",
+        "27518": "AB888X",
+        "27519": "AB888X",
+        "27520": "AB888X",
+        "27521": "AB888X",
+        "27522": "AB888X",
+        "27523": "AB888X",
+        "27524": "AB888X",
+        "27525": "AB888X",
+        "27526": "AB888X",
+        "27527": "AB888X",
+        "27528": "AB888X",
+        "27529": "AB888X",
+        "27530": "AB888X",
+        "27531": "AB888X",
+        "27532": "AB888X",
+        "27533": "AB888X",
+        "27534": "AB888X",
+        "27536": "AB888X",
+        "27537": "AB888X",
+        "27539": "AB888X",
+        "27540": "AB888X",
+        "27541": "AB888X",
+        "27542": "AB888X",
+        "27543": "AB888X",
+        "27544": "AB888X",
+        "27545": "AB888X",
+        "27546": "AB888X",
+        "27549": "AB888X",
+        "27551": "AB888X",
+        "27552": "AB888X",
+        "27553": "AB888X",
+        "27555": "AB888X",
+        "27556": "AB888X",
+        "27557": "AB888X",
+        "27559": "AB888X",
+        "27560": "AB888X",
+        "27562": "AB888X",
+        "27563": "AB888X",
+        "27564": "AB888X",
+        "27565": "AB888X",
+        "27568": "AB888X",
+        "27569": "AB888X",
+        "27570": "AB888X",
+        "27571": "AB888X",
+        "27572": "AB888X",
+        "27573": "AB888X",
+        "27574": "AB888X",
+        "27576": "AB888X",
+        "27577": "AB888X",
+        "27581": "AB888X",
+        "27582": "AB888X",
+        "27583": "AB888X",
+        "27584": "AB888X",
+        "27586": "AB888X",
+        "27587": "AB888X",
+        "27588": "AB888X",
+        "27589": "AB888X",
+        "27591": "AB888X",
+        "27592": "AB888X",
+        "27593": "AB888X",
+        "27594": "AB888X",
+        "27596": "AB888X",
+        "27597": "AB888X",
+        "27599": "AB888X",
+        "27601": "AB888X",
+        "27602": "AB888X",
+        "27603": "AB888X",
+        "27604": "AB888X",
+        "27605": "AB888X",
+        "27606": "AB888X",
+        "27607": "AB888X",
+        "27608": "AB888X",
+        "27609": "AB888X",
+        "27610": "AB888X",
+        "27611": "AB888X",
+        "27612": "AB888X",
+        "27613": "AB888X",
+        "27614": "AB888X",
+        "27615": "AB888X",
+        "27616": "AB888X",
+        "27617": "AB888X",
+        "27619": "AB888X",
+        "27620": "AB888X",
+        "27621": "AB888X",
+        "27622": "AB888X",
+        "27623": "AB888X",
+        "27624": "AB888X",
+        "27625": "AB888X",
+        "27626": "AB888X",
+        "27627": "AB888X",
+        "27628": "AB888X",
+        "27629": "AB888X",
+        "27634": "AB888X",
+        "27635": "AB888X",
+        "27636": "AB888X",
+        "27640": "AB888X",
+        "27650": "AB888X",
+        "27656": "AB888X",
+        "27658": "AB888X",
+        "27661": "AB888X",
+        "27668": "AB888X",
+        "27675": "AB888X",
+        "27676": "AB888X",
+        "27690": "AB888X",
+        "27695": "AB888X",
+        "27697": "AB888X",
+        "27698": "AB888X",
+        "27699": "AB888X",
+        "27701": "AB888X",
+        "27702": "AB888X",
+        "27703": "AB888X",
+        "27704": "AB888X",
+        "27705": "AB888X",
+        "27706": "AB888X",
+        "27707": "AB888X",
+        "27708": "AB888X",
+        "27709": "AB888X",
+        "27710": "AB888X",
+        "27711": "AB888X",
+        "27712": "AB888X",
+        "27713": "AB888X",
+        "27715": "AB888X",
+        "27717": "AB888X",
+        "27722": "AB888X",
+        "27801": "AB888X",
+        "27802": "AB888X",
+        "27803": "AB888X",
+        "27804": "AB888X",
+        "27805": "AB888X",
+        "27806": "AB888X",
+        "27807": "AB888X",
+        "27808": "AB888X",
+        "27809": "AB888X",
+        "27810": "AB888X",
+        "27811": "AB888X",
+        "27812": "AB888X",
+        "27813": "AB888X",
+        "27814": "AB888X",
+        "27815": "AB888X",
+        "27816": "AB888X",
+        "27817": "AB888X",
+        "27818": "AB892X",
+        "27819": "AB888X",
+        "27820": "AB888X",
+        "27821": "AB888X",
+        "27822": "AB888X",
+        "27823": "AB888X",
+        "27824": "AB888X",
+        "27825": "AB888X",
+        "27826": "AB888X",
+        "27827": "AB888X",
+        "27828": "AB888X",
+        "27829": "AB888X",
+        "27830": "AB888X",
+        "27831": "AB888X",
+        "27832": "AB888X",
+        "27833": "AB888X",
+        "27834": "AB888X",
+        "27835": "AB888X",
+        "27836": "AB888X",
+        "27837": "AB888X",
+        "27839": "AB888X",
+        "27840": "AB888X",
+        "27841": "AB888X",
+        "27842": "AB888X",
+        "27843": "AB888X",
+        "27844": "AB888X",
+        "27845": "AB888X",
+        "27846": "AB888X",
+        "27847": "AB888X",
+        "27849": "AB888X",
+        "27850": "AB888X",
+        "27851": "AB888X",
+        "27852": "AB888X",
+        "27853": "AB888X",
+        "27854": "AB888X",
+        "27855": "AB892X",
+        "27856": "AB888X",
+        "27857": "AB888X",
+        "27858": "AB888X",
+        "27860": "AB888X",
+        "27861": "AB888X",
+        "27862": "AB888X",
+        "27863": "AB888X",
+        "27864": "AB888X",
+        "27865": "AB888X",
+        "27866": "AB888X",
+        "27867": "AB888X",
+        "27868": "AB888X",
+        "27869": "AB888X",
+        "27870": "AB888X",
+        "27871": "AB888X",
+        "27872": "AB888X",
+        "27873": "AB888X",
+        "27874": "AB888X",
+        "27875": "AB888X",
+        "27876": "AB888X",
+        "27877": "AB888X",
+        "27878": "AB888X",
+        "27879": "AB888X",
+        "27880": "AB888X",
+        "27881": "AB888X",
+        "27882": "AB888X",
+        "27883": "AB888X",
+        "27884": "AB888X",
+        "27885": "AB888X",
+        "27886": "AB888X",
+        "27887": "AB888X",
+        "27888": "AB888X",
+        "27889": "AB888X",
+        "27890": "AB888X",
+        "27891": "AB888X",
+        "27892": "AB888X",
+        "27893": "AB888X",
+        "27894": "AB888X",
+        "27895": "AB888X",
+        "27896": "AB888X",
+        "27897": "AB888X",
+        "27906": "AB892X",
+        "27907": "AB892X",
+        "27909": "AB892X",
+        "27910": "AB892X",
+        "27915": "AB892X",
+        "27916": "AB892X",
+        "27917": "AB892X",
+        "27919": "AB892X",
+        "27920": "AB892X",
+        "27921": "AB892X",
+        "27922": "AB892X",
+        "27923": "AB892X",
+        "27924": "AB888X",
+        "27925": "AB892X",
+        "27926": "AB892X",
+        "27927": "AB892X",
+        "27928": "AB892X",
+        "27929": "AB892X",
+        "27930": "AB892X",
+        "27932": "AB892X",
+        "27935": "AB892X",
+        "27936": "AB892X",
+        "27937": "AB892X",
+        "27938": "AB892X",
+        "27939": "AB892X",
+        "27941": "AB892X",
+        "27942": "AB892X",
+        "27943": "AB892X",
+        "27944": "AB892X",
+        "27946": "AB892X",
+        "27947": "AB892X",
+        "27948": "AB892X",
+        "27949": "AB892X",
+        "27950": "AB892X",
+        "27953": "AB892X",
+        "27954": "AB892X",
+        "27956": "AB892X",
+        "27957": "AB888X",
+        "27958": "AB892X",
+        "27959": "AB892X",
+        "27960": "AB888X",
+        "27962": "AB892X",
+        "27964": "AB892X",
+        "27965": "AB892X",
+        "27966": "AB892X",
+        "27967": "AB888X",
+        "27968": "AB892X",
+        "27969": "AB892X",
+        "27970": "AB892X",
+        "27972": "AB892X",
+        "27973": "AB892X",
+        "27974": "AB892X",
+        "27976": "AB892X",
+        "27978": "AB892X",
+        "27979": "AB892X",
+        "27980": "AB892X",
+        "27981": "AB892X",
+        "27982": "AB892X",
+        "27983": "AB888X",
+        "27985": "AB892X",
+        "27986": "AB892X",
+        "28001": "AB887X",
+        "28002": "AB887X",
+        "28006": "AB887X",
+        "28007": "AB887X",
+        "28009": "AB887X",
+        "28010": "AB887X",
+        "28012": "AB887X",
+        "28016": "AB887X",
+        "28017": "AB887X",
+        "28018": "AB895X",
+        "28019": "AB895X",
+        "28020": "AB887X",
+        "28021": "AB887X",
+        "28023": "AB887X",
+        "28024": "AB895X",
+        "28025": "AB887X",
+        "28026": "AB887X",
+        "28027": "AB887X",
+        "28031": "AB887X",
+        "28032": "AB887X",
+        "28033": "AB887X",
+        "28034": "AB887X",
+        "28035": "AB887X",
+        "28036": "AB887X",
+        "28037": "AB887X",
+        "28038": "AB887X",
+        "28039": "AB887X",
+        "28040": "AB895X",
+        "28041": "AB887X",
+        "28042": "AB887X",
+        "28043": "AB895X",
+        "28052": "AB887X",
+        "28053": "AB887X",
+        "28054": "AB887X",
+        "28055": "AB887X",
+        "28056": "AB887X",
+        "28070": "AB887X",
+        "28071": "AB887X",
+        "28072": "AB887X",
+        "28073": "AB887X",
+        "28074": "AB895X",
+        "28075": "AB887X",
+        "28076": "AB895X",
+        "28077": "AB887X",
+        "28078": "AB887X",
+        "28079": "AB887X",
+        "28080": "AB887X",
+        "28081": "AB887X",
+        "28082": "AB887X",
+        "28083": "AB887X",
+        "28086": "AB887X",
+        "28088": "AB887X",
+        "28089": "AB887X",
+        "28090": "AB887X",
+        "28091": "AB887X",
+        "28092": "AB887X",
+        "28093": "AB887X",
+        "28097": "AB887X",
+        "28098": "AB887X",
+        "28101": "AB887X",
+        "28102": "AB887X",
+        "28103": "AB887X",
+        "28104": "AB887X",
+        "28105": "AB887X",
+        "28106": "AB887X",
+        "28107": "AB887X",
+        "28108": "AB887X",
+        "28109": "AB887X",
+        "28110": "AB887X",
+        "28111": "AB887X",
+        "28112": "AB887X",
+        "28114": "AB887X",
+        "28115": "AB887X",
+        "28117": "AB887X",
+        "28119": "AB887X",
+        "28120": "AB887X",
+        "28123": "AB887X",
+        "28124": "AB887X",
+        "28125": "AB887X",
+        "28126": "AB887X",
+        "28127": "AB887X",
+        "28128": "AB887X",
+        "28129": "AB887X",
+        "28130": "AB887X",
+        "28133": "AB887X",
+        "28134": "AB887X",
+        "28135": "AB887X",
+        "28136": "AB887X",
+        "28137": "AB887X",
+        "28138": "AB887X",
+        "28139": "AB895X",
+        "28144": "AB887X",
+        "28145": "AB887X",
+        "28146": "AB887X",
+        "28147": "AB887X",
+        "28150": "AB887X",
+        "28151": "AB887X",
+        "28152": "AB887X",
+        "28159": "AB887X",
+        "28160": "AB895X",
+        "28163": "AB887X",
+        "28164": "AB887X",
+        "28166": "AB887X",
+        "28167": "AB895X",
+        "28168": "AB887X",
+        "28169": "AB887X",
+        "28170": "AB887X",
+        "28173": "AB887X",
+        "28174": "AB887X",
+        "28201": "AB887X",
+        "28202": "AB887X",
+        "28203": "AB887X",
+        "28204": "AB887X",
+        "28205": "AB887X",
+        "28206": "AB887X",
+        "28207": "AB887X",
+        "28208": "AB887X",
+        "28209": "AB887X",
+        "28210": "AB887X",
+        "28211": "AB887X",
+        "28212": "AB887X",
+        "28213": "AB887X",
+        "28214": "AB887X",
+        "28215": "AB887X",
+        "28216": "AB887X",
+        "28217": "AB887X",
+        "28218": "AB887X",
+        "28219": "AB887X",
+        "28220": "AB887X",
+        "28221": "AB887X",
+        "28222": "AB887X",
+        "28223": "AB887X",
+        "28224": "AB887X",
+        "28226": "AB887X",
+        "28227": "AB887X",
+        "28228": "AB887X",
+        "28229": "AB887X",
+        "28230": "AB887X",
+        "28231": "AB887X",
+        "28232": "AB887X",
+        "28233": "AB887X",
+        "28234": "AB887X",
+        "28235": "AB887X",
+        "28236": "AB887X",
+        "28237": "AB887X",
+        "28241": "AB887X",
+        "28242": "AB887X",
+        "28243": "AB887X",
+        "28244": "AB887X",
+        "28246": "AB887X",
+        "28247": "AB887X",
+        "28250": "AB887X",
+        "28253": "AB887X",
+        "28254": "AB887X",
+        "28255": "AB887X",
+        "28256": "AB887X",
+        "28258": "AB887X",
+        "28260": "AB887X",
+        "28262": "AB887X",
+        "28263": "AB887X",
+        "28265": "AB887X",
+        "28266": "AB887X",
+        "28269": "AB887X",
+        "28270": "AB887X",
+        "28271": "AB887X",
+        "28272": "AB887X",
+        "28273": "AB887X",
+        "28274": "AB887X",
+        "28275": "AB887X",
+        "28277": "AB887X",
+        "28278": "AB887X",
+        "28280": "AB887X",
+        "28281": "AB887X",
+        "28282": "AB887X",
+        "28284": "AB887X",
+        "28285": "AB887X",
+        "28287": "AB887X",
+        "28288": "AB887X",
+        "28289": "AB887X",
+        "28290": "AB887X",
+        "28296": "AB887X",
+        "28297": "AB887X",
+        "28299": "AB887X",
+        "28301": "AB888X",
+        "28302": "AB888X",
+        "28303": "AB888X",
+        "28304": "AB888X",
+        "28305": "AB888X",
+        "28306": "AB888X",
+        "28307": "AB888X",
+        "28308": "AB888X",
+        "28309": "AB888X",
+        "28310": "AB888X",
+        "28311": "AB888X",
+        "28312": "AB888X",
+        "28314": "AB888X",
+        "28315": "AB888X",
+        "28318": "AB888X",
+        "28319": "AB888X",
+        "28320": "AB888X",
+        "28323": "AB888X",
+        "28325": "AB888X",
+        "28326": "AB888X",
+        "28327": "AB888X",
+        "28328": "AB888X",
+        "28329": "AB888X",
+        "28330": "AB887X",
+        "28331": "AB888X",
+        "28332": "AB888X",
+        "28333": "AB888X",
+        "28334": "AB888X",
+        "28335": "AB888X",
+        "28337": "AB888X",
+        "28338": "AB887X",
+        "28339": "AB888X",
+        "28340": "AB888X",
+        "28341": "AB888X",
+        "28342": "AB888X",
+        "28343": "AB888X",
+        "28344": "AB888X",
+        "28345": "AB887X",
+        "28347": "AB887X",
+        "28348": "AB888X",
+        "28349": "AB888X",
+        "28350": "AB888X",
+        "28351": "AB888X",
+        "28352": "AB888X",
+        "28353": "AB888X",
+        "28355": "AB888X",
+        "28356": "AB888X",
+        "28357": "AB888X",
+        "28358": "AB888X",
+        "28359": "AB888X",
+        "28360": "AB888X",
+        "28362": "AB888X",
+        "28363": "AB887X",
+        "28364": "AB888X",
+        "28365": "AB888X",
+        "28366": "AB888X",
+        "28367": "AB887X",
+        "28368": "AB888X",
+        "28369": "AB888X",
+        "28370": "AB888X",
+        "28371": "AB888X",
+        "28372": "AB888X",
+        "28373": "AB888X",
+        "28374": "AB888X",
+        "28375": "AB888X",
+        "28376": "AB888X",
+        "28377": "AB888X",
+        "28378": "AB888X",
+        "28379": "AB887X",
+        "28380": "AB887X",
+        "28382": "AB888X",
+        "28383": "AB888X",
+        "28384": "AB888X",
+        "28385": "AB888X",
+        "28386": "AB888X",
+        "28387": "AB888X",
+        "28388": "AB888X",
+        "28390": "AB888X",
+        "28391": "AB888X",
+        "28392": "AB888X",
+        "28393": "AB888X",
+        "28394": "AB888X",
+        "28395": "AB888X",
+        "28396": "AB888X",
+        "28398": "AB888X",
+        "28399": "AB888X",
+        "28401": "AB888X",
+        "28402": "AB888X",
+        "28403": "AB888X",
+        "28404": "AB888X",
+        "28405": "AB888X",
+        "28406": "AB888X",
+        "28407": "AB888X",
+        "28408": "AB888X",
+        "28409": "AB888X",
+        "28410": "AB888X",
+        "28411": "AB888X",
+        "28412": "AB888X",
+        "28420": "AB888X",
+        "28421": "AB888X",
+        "28422": "AB888X",
+        "28423": "AB888X",
+        "28424": "AB888X",
+        "28425": "AB888X",
+        "28428": "AB888X",
+        "28429": "AB888X",
+        "28430": "AB888X",
+        "28431": "AB888X",
+        "28432": "AB888X",
+        "28433": "AB888X",
+        "28434": "AB888X",
+        "28435": "AB888X",
+        "28436": "AB888X",
+        "28438": "AB888X",
+        "28439": "AB888X",
+        "28441": "AB888X",
+        "28442": "AB888X",
+        "28443": "AB888X",
+        "28444": "AB888X",
+        "28445": "AB888X",
+        "28447": "AB888X",
+        "28448": "AB888X",
+        "28449": "AB888X",
+        "28450": "AB888X",
+        "28451": "AB888X",
+        "28452": "AB888X",
+        "28453": "AB888X",
+        "28454": "AB888X",
+        "28455": "AB888X",
+        "28456": "AB888X",
+        "28457": "AB888X",
+        "28458": "AB888X",
+        "28459": "AB888X",
+        "28460": "AB888X",
+        "28461": "AB888X",
+        "28462": "AB888X",
+        "28463": "AB888X",
+        "28464": "AB888X",
+        "28465": "AB888X",
+        "28466": "AB888X",
+        "28467": "AB888X",
+        "28468": "AB888X",
+        "28469": "AB888X",
+        "28470": "AB888X",
+        "28472": "AB888X",
+        "28478": "AB888X",
+        "28479": "AB888X",
+        "28480": "AB888X",
+        "28501": "AB888X",
+        "28502": "AB888X",
+        "28503": "AB888X",
+        "28504": "AB888X",
+        "28508": "AB888X",
+        "28509": "AB888X",
+        "28510": "AB888X",
+        "28511": "AB888X",
+        "28512": "AB888X",
+        "28513": "AB888X",
+        "28515": "AB888X",
+        "28516": "AB888X",
+        "28518": "AB888X",
+        "28519": "AB888X",
+        "28520": "AB888X",
+        "28521": "AB888X",
+        "28522": "AB888X",
+        "28523": "AB888X",
+        "28524": "AB888X",
+        "28525": "AB888X",
+        "28526": "AB888X",
+        "28527": "AB888X",
+        "28528": "AB888X",
+        "28529": "AB888X",
+        "28530": "AB888X",
+        "28531": "AB888X",
+        "28532": "AB888X",
+        "28533": "AB888X",
+        "28537": "AB888X",
+        "28538": "AB888X",
+        "28539": "AB888X",
+        "28540": "AB888X",
+        "28541": "AB888X",
+        "28542": "AB888X",
+        "28543": "AB888X",
+        "28544": "AB888X",
+        "28545": "AB888X",
+        "28546": "AB888X",
+        "28547": "AB888X",
+        "28551": "AB888X",
+        "28552": "AB888X",
+        "28553": "AB888X",
+        "28554": "AB888X",
+        "28555": "AB888X",
+        "28556": "AB888X",
+        "28557": "AB888X",
+        "28560": "AB888X",
+        "28561": "AB888X",
+        "28562": "AB888X",
+        "28563": "AB888X",
+        "28564": "AB888X",
+        "28570": "AB888X",
+        "28571": "AB888X",
+        "28572": "AB888X",
+        "28573": "AB888X",
+        "28574": "AB888X",
+        "28575": "AB888X",
+        "28577": "AB888X",
+        "28578": "AB888X",
+        "28579": "AB888X",
+        "28580": "AB888X",
+        "28581": "AB888X",
+        "28582": "AB888X",
+        "28583": "AB888X",
+        "28584": "AB888X",
+        "28585": "AB888X",
+        "28586": "AB888X",
+        "28587": "AB888X",
+        "28589": "AB888X",
+        "28590": "AB888X",
+        "28594": "AB888X",
+        "28601": "AB887X",
+        "28602": "AB887X",
+        "28603": "AB887X",
+        "28604": "AB887X",
+        "28605": "AB887X",
+        "28606": "AB887X",
+        "28607": "AB887X",
+        "28608": "AB887X",
+        "28609": "AB887X",
+        "28610": "AB887X",
+        "28611": "AB887X",
+        "28612": "AB887X",
+        "28613": "AB887X",
+        "28615": "AB887X",
+        "28616": "AB887X",
+        "28617": "AB887X",
+        "28618": "AB887X",
+        "28619": "AB887X",
+        "28621": "AB887X",
+        "28622": "AB887X",
+        "28623": "AB892X",
+        "28624": "AB887X",
+        "28625": "AB887X",
+        "28626": "AB887X",
+        "28627": "AB892X",
+        "28628": "AB887X",
+        "28629": "AB887X",
+        "28630": "AB887X",
+        "28631": "AB887X",
+        "28633": "AB887X",
+        "28634": "AB887X",
+        "28635": "AB887X",
+        "28636": "AB887X",
+        "28637": "AB887X",
+        "28638": "AB887X",
+        "28640": "AB887X",
+        "28641": "AB887X",
+        "28642": "AB887X",
+        "28643": "AB887X",
+        "28644": "AB892X",
+        "28645": "AB887X",
+        "28646": "AB887X",
+        "28647": "AB887X",
+        "28649": "AB887X",
+        "28650": "AB887X",
+        "28651": "AB887X",
+        "28652": "AB887X",
+        "28653": "AB887X",
+        "28654": "AB887X",
+        "28655": "AB887X",
+        "28656": "AB887X",
+        "28657": "AB887X",
+        "28658": "AB887X",
+        "28659": "AB887X",
+        "28660": "AB887X",
+        "28661": "AB887X",
+        "28662": "AB887X",
+        "28663": "AB892X",
+        "28664": "AB887X",
+        "28665": "AB887X",
+        "28666": "AB887X",
+        "28667": "AB887X",
+        "28668": "AB892X",
+        "28669": "AB887X",
+        "28670": "AB887X",
+        "28671": "AB887X",
+        "28672": "AB887X",
+        "28673": "AB887X",
+        "28674": "AB887X",
+        "28675": "AB892X",
+        "28676": "AB887X",
+        "28677": "AB887X",
+        "28678": "AB887X",
+        "28679": "AB887X",
+        "28680": "AB887X",
+        "28681": "AB887X",
+        "28682": "AB887X",
+        "28683": "AB887X",
+        "28684": "AB887X",
+        "28685": "AB887X",
+        "28687": "AB887X",
+        "28688": "AB887X",
+        "28689": "AB887X",
+        "28690": "AB887X",
+        "28691": "AB887X",
+        "28692": "AB887X",
+        "28693": "AB887X",
+        "28694": "AB887X",
+        "28697": "AB887X",
+        "28698": "AB887X",
+        "28699": "AB887X",
+        "28701": "AB895X",
+        "28702": "AB895X",
+        "28704": "AB895X",
+        "28705": "AB895X",
+        "28707": "AB895X",
+        "28708": "AB895X",
+        "28709": "AB895X",
+        "28710": "AB895X",
+        "28711": "AB895X",
+        "28712": "AB895X",
+        "28713": "AB895X",
+        "28714": "AB895X",
+        "28715": "AB895X",
+        "28716": "AB895X",
+        "28717": "AB895X",
+        "28718": "AB895X",
+        "28719": "AB895X",
+        "28720": "AB895X",
+        "28721": "AB895X",
+        "28722": "AB895X",
+        "28723": "AB895X",
+        "28724": "AB895X",
+        "28725": "AB895X",
+        "28726": "AB895X",
+        "28727": "AB895X",
+        "28728": "AB895X",
+        "28729": "AB895X",
+        "28730": "AB895X",
+        "28731": "AB895X",
+        "28732": "AB895X",
+        "28733": "AB895X",
+        "28734": "AB895X",
+        "28735": "AB895X",
+        "28736": "AB895X",
+        "28737": "AB887X",
+        "28738": "AB895X",
+        "28739": "AB895X",
+        "28740": "AB895X",
+        "28741": "AB895X",
+        "28742": "AB895X",
+        "28743": "AB895X",
+        "28744": "AB895X",
+        "28745": "AB895X",
+        "28746": "AB895X",
+        "28747": "AB895X",
+        "28748": "AB895X",
+        "28749": "AB887X",
+        "28750": "AB895X",
+        "28751": "AB895X",
+        "28752": "AB887X",
+        "28753": "AB895X",
+        "28754": "AB895X",
+        "28755": "AB895X",
+        "28756": "AB895X",
+        "28757": "AB895X",
+        "28758": "AB895X",
+        "28759": "AB895X",
+        "28760": "AB895X",
+        "28761": "AB887X",
+        "28762": "AB887X",
+        "28763": "AB895X",
+        "28765": "AB895X",
+        "28766": "AB895X",
+        "28768": "AB895X",
+        "28770": "AB895X",
+        "28771": "AB895X",
+        "28772": "AB895X",
+        "28773": "AB895X",
+        "28774": "AB895X",
+        "28775": "AB895X",
+        "28776": "AB895X",
+        "28777": "AB895X",
+        "28778": "AB895X",
+        "28779": "AB895X",
+        "28781": "AB895X",
+        "28782": "AB895X",
+        "28783": "AB895X",
+        "28784": "AB895X",
+        "28785": "AB895X",
+        "28786": "AB895X",
+        "28787": "AB895X",
+        "28788": "AB895X",
+        "28789": "AB895X",
+        "28790": "AB895X",
+        "28791": "AB895X",
+        "28792": "AB895X",
+        "28793": "AB895X",
+        "28801": "AB895X",
+        "28802": "AB895X",
+        "28803": "AB895X",
+        "28804": "AB895X",
+        "28805": "AB895X",
+        "28806": "AB895X",
+        "28810": "AB895X",
+        "28813": "AB895X",
+        "28814": "AB895X",
+        "28815": "AB895X",
+        "28816": "AB895X",
+        "28901": "AB895X",
+        "28902": "AB889X",
+        "28903": "AB895X",
+        "28904": "AB889X",
+        "28905": "AB895X",
+        "28906": "AB895X",
+        "28909": "AB889X",
+        "27268": "AB887X",
+        "88901": "AB889X",
+        "88905": "AB889X",
+        "89001": "AB889X",
+        "89002": "AB889X",
+        "89003": "AB892X",
+        "89004": "AB892X",
+        "89005": "AB889X",
+        "89006": "AB889X",
+        "89007": "AB889X",
+        "89008": "AB889X",
+        "89009": "AB889X",
+        "89010": "AB889X",
+        "89011": "AB889X",
+        "89012": "AB889X",
+        "89013": "AB887X",
+        "89014": "AB889X",
+        "89015": "AB889X",
+        "89016": "AB889X",
+        "89017": "AB889X",
+        "89018": "AB889X",
+        "89019": "AB889X",
+        "89020": "AB889X",
+        "89021": "AB887X",
+        "89022": "AB887X",
+        "89023": "AB887X",
+        "89024": "AB889X",
+        "89025": "AB889X",
+        "89026": "AB889X",
+        "89027": "AB889X",
+        "89028": "AB887X",
+        "89029": "AB887X",
+        "89030": "AB889X",
+        "89031": "AB889X",
+        "89032": "AB889X",
+        "89033": "AB889X",
+        "89036": "AB889X",
+        "89037": "AB889X",
+        "89039": "AB889X",
+        "89040": "AB889X",
+        "89041": "AB889X",
+        "89042": "AB889X",
+        "89043": "AB889X",
+        "89044": "AB889X",
+        "89045": "AB887X",
+        "89046": "AB889X",
+        "89047": "AB889X",
+        "89048": "AB889X",
+        "89049": "AB889X",
+        "89052": "AB889X",
+        "89053": "AB889X",
+        "89060": "AB889X",
+        "89061": "AB889X",
+        "89067": "AB889X",
+        "89070": "AB889X",
+        "89074": "AB889X",
+        "89077": "AB889X",
+        "89081": "AB889X",
+        "89084": "AB889X",
+        "89085": "AB889X",
+        "89086": "AB889X",
+        "89087": "AB889X",
+        "89101": "AB889X",
+        "89102": "AB889X",
+        "89103": "AB889X",
+        "89104": "AB889X",
+        "89105": "AB889X",
+        "89106": "AB889X",
+        "89107": "AB889X",
+        "89108": "AB889X",
+        "89109": "AB889X",
+        "89110": "AB889X",
+        "89111": "AB889X",
+        "89112": "AB889X",
+        "89113": "AB889X",
+        "89114": "AB889X",
+        "89115": "AB889X",
+        "89116": "AB889X",
+        "89117": "AB889X",
+        "89118": "AB889X",
+        "89119": "AB889X",
+        "89120": "AB889X",
+        "89121": "AB889X",
+        "89122": "AB889X",
+        "89123": "AB889X",
+        "89124": "AB889X",
+        "89125": "AB889X",
+        "89126": "AB889X",
+        "89127": "AB889X",
+        "89128": "AB889X",
+        "89129": "AB889X",
+        "89130": "AB889X",
+        "89131": "AB889X",
+        "89132": "AB889X",
+        "89133": "AB889X",
+        "89134": "AB889X",
+        "89135": "AB889X",
+        "89136": "AB889X",
+        "89137": "AB889X",
+        "89138": "AB889X",
+        "89139": "AB889X",
+        "89140": "AB889X",
+        "89141": "AB889X",
+        "89142": "AB889X",
+        "89143": "AB889X",
+        "89144": "AB889X",
+        "89145": "AB889X",
+        "89146": "AB889X",
+        "89147": "AB889X",
+        "89148": "AB889X",
+        "89149": "AB889X",
+        "89150": "AB889X",
+        "89151": "AB889X",
+        "89152": "AB889X",
+        "89153": "AB889X",
+        "89154": "AB889X",
+        "89155": "AB889X",
+        "89156": "AB889X",
+        "89157": "AB889X",
+        "89159": "AB889X",
+        "89160": "AB889X",
+        "89161": "AB889X",
+        "89162": "AB889X",
+        "89163": "AB889X",
+        "89164": "AB889X",
+        "89165": "AB889X",
+        "89166": "AB889X",
+        "89169": "AB889X",
+        "89170": "AB889X",
+        "89173": "AB889X",
+        "89177": "AB889X",
+        "89178": "AB889X",
+        "89179": "AB889X",
+        "89180": "AB889X",
+        "89183": "AB889X",
+        "89185": "AB889X",
+        "89191": "AB889X",
+        "89193": "AB889X",
+        "89195": "AB889X",
+        "89199": "AB889X",
+        "89301": "AB892X",
+        "89310": "AB889X",
+        "89311": "AB889X",
+        "89314": "AB887X",
+        "89315": "AB892X",
+        "89316": "AB892X",
+        "89317": "AB887X",
+        "89318": "AB887X",
+        "89319": "AB887X",
+        "89402": "AB887X",
+        "89403": "AB887X",
+        "89404": "AB887X",
+        "89405": "AB887X",
+        "89406": "AB887X",
+        "89407": "AB887X",
+        "89408": "AB887X",
+        "89409": "AB887X",
+        "89410": "AB887X",
+        "89411": "AB887X",
+        "89412": "AB887X",
+        "89413": "AB887X",
+        "89414": "AB887X",
+        "89415": "AB889X",
+        "89418": "AB887X",
+        "89419": "AB887X",
+        "89420": "AB887X",
+        "89421": "AB887X",
+        "89422": "AB887X",
+        "89423": "AB887X",
+        "89424": "AB889X",
+        "89425": "AB889X",
+        "89426": "AB889X",
+        "89427": "AB887X",
+        "89428": "AB887X",
+        "89429": "AB887X",
+        "89430": "AB887X",
+        "89431": "AB887X",
+        "89432": "AB887X",
+        "89433": "AB887X",
+        "89434": "AB887X",
+        "89435": "AB887X",
+        "89436": "AB887X",
+        "89438": "AB887X",
+        "89439": "AB887X",
+        "89440": "AB887X",
+        "89441": "AB887X",
+        "89442": "AB887X",
+        "89444": "AB887X",
+        "89445": "AB887X",
+        "89446": "AB887X",
+        "89447": "AB887X",
+        "89448": "AB887X",
+        "89449": "AB887X",
+        "89450": "AB887X",
+        "89451": "AB887X",
+        "89452": "AB887X",
+        "89460": "AB887X",
+        "89496": "AB887X",
+        "89501": "AB887X",
+        "89502": "AB887X",
+        "89503": "AB887X",
+        "89504": "AB887X",
+        "89505": "AB887X",
+        "89506": "AB887X",
+        "89507": "AB887X",
+        "89509": "AB887X",
+        "89510": "AB887X",
+        "89511": "AB887X",
+        "89512": "AB887X",
+        "89513": "AB887X",
+        "89515": "AB887X",
+        "89519": "AB887X",
+        "89520": "AB887X",
+        "89521": "AB887X",
+        "89523": "AB887X",
+        "89533": "AB887X",
+        "89555": "AB887X",
+        "89557": "AB887X",
+        "89570": "AB887X",
+        "89595": "AB887X",
+        "89599": "AB887X",
+        "89701": "AB887X",
+        "89702": "AB887X",
+        "89703": "AB887X",
+        "89704": "AB887X",
+        "89705": "AB887X",
+        "89706": "AB887X",
+        "89711": "AB887X",
+        "89712": "AB887X",
+        "89713": "AB887X",
+        "89714": "AB887X",
+        "89721": "AB887X",
+        "89801": "AB892X",
+        "89802": "AB892X",
+        "89803": "AB892X",
+        "89815": "AB892X",
+        "89820": "AB892X",
+        "89821": "AB887X",
+        "89822": "AB892X",
+        "89823": "AB887X",
+        "89824": "AB889X",
+        "89825": "AB892X",
+        "89826": "AB892X",
+        "89828": "AB892X",
+        "89830": "AB892X",
+        "89831": "AB892X",
+        "89832": "AB892X",
+        "89833": "AB887X",
+        "89834": "AB892X",
+        "89835": "AB892X",
+        "89883": "AB892X",
+    }
+)
diff --git a/.vim/bundle/black/profiling/list_big.py b/.vim/bundle/black/profiling/list_big.py
new file mode 100644 (file)
index 0000000..2ac9d1f
--- /dev/null
@@ -0,0 +1,4000 @@
+config = some.Structure(
+    value=set([u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value']))
diff --git a/.vim/bundle/black/profiling/list_huge.py b/.vim/bundle/black/profiling/list_huge.py
new file mode 100644 (file)
index 0000000..0f8dfc6
--- /dev/null
@@ -0,0 +1,22431 @@
+config = some.Structure(
+    value=set([u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value',
+        u'some_rather_long_text_value']))
diff --git a/.vim/bundle/black/profiling/mix_big.py b/.vim/bundle/black/profiling/mix_big.py
new file mode 100644 (file)
index 0000000..5aebbf4
--- /dev/null
@@ -0,0 +1,1002 @@
+config = some.Structure(
+    globalMap = {
+        103310322020340: [100000031211103,101042000320420,100100001202021,112320301100420,110101024402203,112001202000203,112101112010031,102130400200010,100401014300441,103000401422033],
+        110040120003212: [114413100031332,102101001412002,100210000032130,214000110100040,103031420121210,112114222301010,110133330100020,100001001203011,102210220202130,102200120234012],
+        244402003102200: [110212012114431,100001140020000,100012101223021,110031301200114,114002020044120,100021004302202,102202200240222,114102010220042,102021301441201,104103102103201],
+        122013242003223: [100014100100001,102100004130301,111120004100414,101034024000101,100021424301033,102003004003400,103340410140122,100102114100420,111012202111021,100103144302200],
+        1120010021223330: [110332202020000,104120130021200,112421004012141,111100220022101,100021104201130,102224410201003,110030021010001,101300401002320,112001321113132,101110434020010],
+        214100003030021: [102122000214201,100242141004122,102024240221040,110320011200230,100011114300334,102303004110022,100110201042101,110134201140010,112101044000202,100040024340013],
+        1000220132200020: [102231130213210,103214010102022,102000402041014,100043324210140,100023024211011,102404021403141,100010004313001,100003201021001,100122020011232,100121031014040],
+        1200041022422001: [100021300101110,103010301402112,100011401031000,100020034100101,100122214300222,103134021420204,102042210220100,100103200021130,103204214043011,103020320102002],
+        1000232101122040: [110011414240022,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,103301410110110,112114324040000,102124031023100,100204104320231],
+        110002000000001: [110010000111020,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101,111243002222100],
+        200211022142211: [102231130213210,103214010102022,100043324210140,102324014112020,102022004012201,100023024211011,111130210020000,102404021403141,100003201021001,100122020011232],
+        114121130201204: [100040031020241,101100104000222,102324141000002,101010234004042,102041224010012,100411400030100,100002000102100,114340102322021,112033124022002,102120221120200],
+        104101002123040: [100032320000112,103140011442322,100312120141341,111144020011120,112142204020032,110044031204131,114012010020012,100001420412010,100102110020102,103022000123142],
+        241101103112120: [110333404433042,112240002043300,110021100132240,103104221443021,101100304000101,100202210410011,114402212310021,102411011111011,103020141414101,100113001040420],
+        1004020030320422: [100022214203010,110310011234031,110123111300000,100020031041304,102120004000101,102020002000420,110100302010110,100422020030044,101220100303222,100002220411002],
+        1041010100001110: [111124004101012,114103220220104,102120004001310,102430121110340,101021204000200,112141104020201,101200111020111,110001200422320,103210114021430,114223242332100],
+        121103011132000: [110021104200001,110441140102024,111140124100100,110310020040401,100002024303323,110030002130201,102103320232241,110302000400221,110111001302000,110210304220000],
+        1042022101004111: [110021104200001,111140124100100,110031301200114,102103320232241,110302000400221,110111001302000,110210304220000,102033124000111,111000212204213,110010324410130],
+        102220010222003: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        1442130103121040: [114413100031332,112121020204344,102211030203010,100210000032130,214000110100040,103031420121210,112114222301010,100001001203011,114214404142034,102210220202130],
+        110204013021024: [110301402000211,103030201402004,110420104221220,103200004030020,100320014310021,102000110221110,110240214432004,102122141142000,103041204010000,114432234113040],
+        100001440133234: [102111040210242,114110000002430,102010011412143,100424220032043,114013422300032,102021004001004,100131414303044,100201010110320,100000221030033,110101101120302],
+        114002033000020: [100001121002141,102000040201003,101132131221321,100004440004031,102002011033030,110310300003402,110220022132003,101001000302103,110044112100220,100010120031210],
+        112123022000131: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,100002100124101,102304100210334,100403210010142,112003100241220,102204304000304],
+        1143001230040001: [101033124003122,100313144100202,103201004024412,114014222302011,103011020110211,110203420111140,111003412201430,101411214000203,110222422042203],
+        1002403200000231: [100122004300410,102140014001101,102000104012232,112400202020003,102000224000011,114122134140002,102101010202004,114400202310210,100042030201341,112233332034000],
+        1003123041101031: [110043132100300,102220120203200,100002004201122,110132031134031,1320303202002000,1321200010022312,110130330012140,114102134002330,140403400240000,100003230110201],
+        242220101103400: [111130112100210,102202200240222,110131044200121,100100004102234,110223332120231,100001024301322,114013044102010,114220114140122,101023021034304,110200210110130],
+        121030040400021: [110011011212100,101134030011000,103220211421421,110123230124040,131000001020102,112200412033030,110420001000202,100102110402220,110412310030001,114012022302022],
+        100104011300401: [110320414420310,110100100101041,100420124100211,103010211222002,101040120320230,110013021300010,101043234000412,101220000040002,100422001002123,114010010010002],
+        1004003211220032: [102400100230000,101100300302102,114120420223002,100002210201212,102302020212101,112410424012010,100030004104210,103030201434002,110232110004010,103021201430000],
+        223011102020040: [110012420131001,100132040031022,100020310000200,100220004030002,110020002003334,110014000442004,101441204020001,102014201411102,103231320100042,104121201242032],
+        100200110422111: [103100221440010,114003344011001,100021101000000,102140000212141,101014201030204,101203001010111,102424114020143,100031201030102,101041001003300,114012444020220],
+        134300111030221: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,100021014100124,100130244302034,100122040012210,100014010104404,101020104000001],
+        114001000330100: [401142101000022,400114001102410,102100000012031,431232000323104,1012100023110102,232023302143031,120200122422404,1040100003200241,111414004440203,1020220210340010],
+        211222012120321: [112000112000031,100121214300000,102123214020000,102022124012030,114002320022312],
+        1122000200402140: [102401141113031,103042420143020,102304314110202,110210400002012,113032012204012,112310002020302,100204311000400,100403012200201,112002111121013,114211100001224],
+        332000024200013: [102120010220042,110103312142034,102210210312302,101120100320100,114140014100000,102110004002301,100130020001030,112022100213011,100101231202322,111210020001013],
+        120041442412123: [102133011413110,111001200041102,101223020300040,102034324000220,100210000032400,101230020303000,111340130010314,110200422121211,110214220002020,112220414010040],
+        1011011320300100: [100102024301030,100111134302041,100112234000041,110004244214343,101002101020003,102214021120301,114221224100022,101330210310300,112003021111000,102012141134211],
+        220020021000101: [100301001000202,104101112102403,100023121223031,114201432320014,120000002023011,102133120200123,101014020301201,102000031130401,101010111002141,114123124143310],
+        1024011342000021: [102001001130100,111204203012002,124020002020003,122222120003214,133332002141010,144000013213001,124010030100142,112310202021010,110014020020011,100140044020011],
+        1131011002310011: [102230040200031,110122001010214,114043140010022,102101204000010,110022300420031,100100401040001,114230230000123,100222024320003,103323001400013,114013012300240],
+        1142024120224002: [102203344011410,100021324100000,102103430210003,100012014300120,102414014022212,102012220241003,101004411032102,101430211012120,100204021000012,103242044020102],
+        1100004410231120: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1440220030001122: [114010330030011,103021220104200,101010020320000,112000210211020,100010324210003,101000000343443,110002400011111,100402132200000,111100300024000,103144040104204],
+        121414301110004: [110144240011020,110413401240204,112000244001222,114441114123013,103220211421421,114000012334102,101000014012442,100312401002102,111022210021013,103110001420121],
+        130004004220120: [111240340004003,102021024000010,111101222244030,112011012004300,102300010242330,102000401120420,102004012043122,114011102210402,100120001014040,114300100000041],
+        1013303000401020: [101000024004442,100002100000100,110130030020000],
+        220041302111231: [100002014200331,100034244210020,102012004000003,100411000030110,102041201121230,103011014042120,100000030120242,102110400210023,101012204221200,111212422222300],
+        1000031031200013: [101302134233230,100000130010033,101030404212000,114102224000201,100022021041122,100020001042002,100013011020311,100120041020012,102012204000242,114143024003322],
+        1000303301100221: [111333104124202,101000304014100,100040011023101,110301030010140,104100002101431,101123232010002,114421242204443,110100222001100,103102000121300,110010331230210],
+        1410211342331412: [111002100000102,114021010040140,114222302321101,102101024002121,110014024202014,110220130100010,100020011030330,102404221402210,110203022032320,101222014230110],
+        1411020122202044: [100141401021003,102010000231120,101000400320211,101001010300214,103010020142023,110132002212113,110010100040100,102101002002002,111020302232033,110224030114311],
+        101010042001102: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,102020004000014,100000211023014,114144014122041,100201111002224,101410304041000],
+        204204011102020: [100212030414010,101400004022210,102031021441200,101200020303202,102301324112020,111340300010010,102013224003020,103013020123142,102240344041020,102140202001100],
+        240000420312002: [110002004410202,102103114000024,102240221000001,112041002002124,114000024101102,140343100002103,400200234320200,100020124204330,100001424102041,100100021040230],
+        1030000001422430: [102343230224321,103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,100001104301200],
+        1104234221030010: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,104130020011020,101114422122000,102001314013400,114110414140400,111201100011141],
+        121341130003000: [111102004100101,102021100220101,114000040010421,112042110220004,100000214240410,100433201004014,102301102004413,102003000220111,102010100204023,102414040230400],
+        100101220022002: [100010024102110,101041200320012,114303400002201,110204211000331,112121014003422,114430102311021,100240444100022,103004411424400,111014002140322],
+        1023303420422001: [100043104240004,110002034200042,100001240100033,114100304002030,102100001340122,112030010234104,103414101212410,100123021223100,112302011102312,101020030343002],
+        101114102124321: [110403244220202,103113014002100,110120400402324,100402340010310,112010020211000,100102200000211,103030201240100,102300210210222,114100332340213,111031030024010],
+        1422302020100030: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1121202400231120: [101211201202134,103120104030100,100004000100101,102020030220200,110031404423144,110003434410403,111110000014401,100000204312321,101004000304012,110300121220201],
+        1042001221000013: [114032104100141,101213114040141,102210101002412,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,102021241324040],
+        1102433033042110: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421],
+        100103201011144: [110102401201204,102400100230000,100212030414010,101200020303202,114120420223002,102013224003020,100002210201212,103013020123142,102302020212101,114303340000001],
+        240343043023011: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,100400001001300],
+        1020301032424304: [101302134233230,100000130010033,101030404212000,114102224000201,100431000032001,100020001042002,100013011020311,102103331400000,100120041020012,100020001041231],
+        114200022220040: [100014100100001,102100004130301,111120004100414,101034024000101,101243024011000,103340410140122,100010021221221,111012202111021,100103144302200,101414100300221],
+        142041243300010: [102102002002242,101130104022002,101230331020012,100004244210201,102420124024204,122312222240401,102041014011340,110200130004300,100140101012000,101400000302141],
+        1002203102111022: [100434000032200,110004020020022,114032412303041,112000301122111,102020130212402,100010001020000,200000020021022,114321212322303,112302112002211,114202002333330],
+        1110102121041413: [101012310301211,103112200123144,114242304004011,102302200241241,110001420021023,110201040003402,112301421130130,110020012100302,114412202320010,110021030030202],
+        114020200220012: [102010114022011,103340041403223,114002200000421,101020321002002,114302210010001,114030004104220,100104004301000,102443211401140,102301041000014,100001111201214],
+        202011212123200: [102203301123001,103210400110122,101112020300011,114104302341000,100400201010000,102244400201444,101010001000121,102304000220032,102002131132000,100000031024222],
+        201032103003132: [110212041114210,113210300100002,112404024011000,102131034000220,111212124130140,101002014013010,103402020120010,112110100230023,112003044002004,103020200102200],
+        120222032001012: [110121100004131,111400214442024,111122200021102,101041100300001,102140011440001,101011220342010,110200004221020,103114211441300,110000222010004,100114000101041],
+        1100013040001020: [100003031030034,101001044211204,102100010233022,102120400212001,114313022302101,103001324000110,100002014200021,102300401001010,103212320212011,111120034400000],
+        1001031021300022: [102000020220000,101020104000040,114412142320040,100003044100101,114012402332300,102220211122102,101010110302010,100032121020101,100013224313301,100012244240030],
+        124000010122242: [100032320000112,103140011442322,100312120141341,111144020011120,112142204020032,110044031204131,114012010020012,100001420412010,100102110020102,102002204001140],
+        1121211020204132: [110020301320101,102014001130210,110401041140300,110002302201420,102202001120002,110200010003201,102421004041011,102240040202421,101001110300111,100130004300103],
+        121320202004301: [111014240041102,101100004200110,112021221130424,112200041103002,110400040402041,112001011112202,100112004304314,100232041001122,100223030001010,100104231000300],
+        1024242230240244: [110322104424202,101202421002031,102102220312102,103004204021310,112220102043102,110012310020200,102030130241300,103030120100220,100232224340041,112400002011010],
+        1002100010130110: [101400001011042,100002011020211,100100110010010,111110002213142,100002131030310,111102214100400,103220201402330,102321000221140,103113124030200,102110300311400],
+        200010402222410: [101210320301302,102100221340112,100114104101001,114002244103320,101023221000031,101400014040400,102012034000402,114221004002212,102100122002001,101000011021414],
+        112300020202111: [103141411420221,122102400312000,110002100110002,1340024302404122,100002001043010,113110330121030,410020013004430,1002300040412102,1210020204140003,123211320000102],
+        100102203210034: [102023021100022,111200302222011,112040241120204,111000022200000,100010011232324,110220030000133,110000330430311,101211221014003,103111230120100,102221220200021],
+        1021001032000012: [102020010203200,100011144312020,102011204001010,102001410221023,110130201302200,103041021430301,101100440320434,114000402211404,101000100302003,110000030430422],
+        1031102424140120: [100011010414200,111121102240240,102002121101110,102403100202003,110000100041101,100400000010033,100101211001320,101141020321000,103224101400400,102000002043020],
+        102001021434201: [110131122012210,114010200040441,110032014420232,100000344100100,111304022202211,102302011002003,102011021121200,100012441030002,110222042022111,103131004002200],
+        220100132400104: [1010400230221020,111320012221132,102302144110440,114140004123122,102143202000400,111020002202333,101321311004010,102110241342210,114122302311011,100002320411400],
+        1110121023020002: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,100301020420101,102002202000000,100022024100041,102010410213111],
+        1042030001044121: [101230040301234,110033032100000,102303014024221,100100224304110,100400432200321,100020200012311,114140144122230,101400201102014,100000020004004,101040040303102],
+        1100100224104011: [111130112100210,102202200240222,110131044200121,100100004102234,101023014004000,110223332120231,100001024301322,114013044102010,114220114140122,110200210110130],
+        212002042300000: [100030220100110,110011202100142,112400102013231,114012002212100,100002114314022,114203110001031,112030122000211,111004012200210,100413131013301,110001102103432],
+        221001240043040: [100420021010013,112101302302202,102212011120200,102344111104233,100432104320110,114021014020000,102121321340000,114200214002024,100111221011100,100023104101340],
+        1040021200420124: [100042111220111,112220100202000,100042041220010,100403211010100,103240301400123,114102210214041,100021300103041,101010204000242,111334004121414,114101000213410],
+        1101110030041022: [112013300240132,114303044030300,102340044111034,100110021021010,120003030010112,114200212320001,101020240313001,102330220242002,121400042034110,100033201030040],
+        1030000302042203: [102110231441040,100113214302002,110000002133140,101233341022410,103021000144000,100100124100031,100040204240000,114100012313002,114440440000034,120240000020201],
+        1403121230220020: [110200400000020,100324140141402,100002204340200,110000410001034,111140000000000,103102224034002,110022002120332,111110230014001,110020041310021,110001001200323],
+        203110414022010: [111240220002100,110030344201413,101001014001021,100103224301304,114000100020200,102102100231000,114040202330200,100410331002222,100032204311200,102202111110404],
+        133032004200001: [110314100012011,111020422203010,103121124002320,102240300202212,114140422203401,110210420000001,102210331401030,101102104000100,102031010200122,111104202112001],
+        1120000102422014: [102140211342044,110020301220411,110100200004404,110131142010001,101032441003040,112004400210201,110004102230402,112021004020000,101012004001204,110420001344420],
+        1000030222010034: [100320031001240,102104320220212,102100200232044,102434104021201,102300004022020,103003301240122,100210024101140,112220011101022,101000130304001,103020024043010],
+        300210002300114: [112100021100243,101123001100112,112003002001002,111000200012220,102120100230203,100111124101112,112001010233001,103313021401232,110430034224001,114110200221240],
+        1421020010140012: [110010002014100,112030001120220,114231034004040,100100301202103,110301021331320,112001100232420,114020244023001,110342014420100,110200402220240,100114200402104],
+        300310000040102: [110301222101110,102023301102400,102012204010044,104120110010402,111010214402000,110401440001204,110204310112224,110303104423010,110340022023321,114010200012200],
+        101010002031100: [110324020012330,100001134302201,102100011402012,100020221031000,102032220220223,114042004020130,114030400021223,102022021100102,103301304031211,102000004013440],
+        1032221241200404: [104120011242011,110020002104100,102000301101102,111122200021102,114032234033303,100000020201032,112011204004112,100003000002034,110102022000200,102200034040443],
+        1131211404001020: [110200100002031,101420310301020,100020330100100,1002443410030003,111103224103001,100011231042030,102100141413100,102110021342213,112002310211210,100010031020102],
+        132013120010104: [111300232202103,102301401002404,110122120100022,102012004010000,102400100220000,102001104012021,100242444300104,102002104014323,100401241010122,100010010102122],
+        130000310202012: [114200044114004,102202010204130,100220101204311,100002000102100,102100430233212,103003210141014,110421222011222,100201000410010,112110202014400,100400030013200],
+        1111023010042112: [100000201220420,114000030021040,101002011020001,113141112413242,102021111130104,110401030101001,102201214011331,100013011043231,102031114002042,112302012020342],
+        121010001111310: [101400220300033,100012021032040,102001130224032,100012021040320,102130224023220,102100401143124,100010001030140,102110101410144,114142204121324,112102421102022],
+        1113001011001223: [110202400003213,114112014140000,110001012101334,114200124000134,100001114302424,101222134011002,100003011231420,103230231200010,100431031014023,100120120401041],
+        142034000000112: [100310304310342,100010041031020,100042400001023,112402000200101,100020201221000,101010020301243,102030001103000,100040021031201,111010130022401,112140214000020],
+        1012401424032042: [102401121113302,111201210000103,100101101010100,101320040302031,114010102300010,102321044112101,102000014002000,101034014011332,101203011023020,100021231020200],
+        1103400010414230: [102010114022011,103340041403223,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,100010031222001,103001114001210,100001111201214],
+        1400000301203010: [114122134140002,103012011434022,101032010342004,102322330243202,103101411424112,100100114103001,102134131144121,114030222300123,102102301021403,114103402201140],
+        214024214401412: [102220242000201,103010021410203,101000304214111,102120040200200,103202220100114,111100132103413,112203220204012,100113040003021,100010204200010,102410134022300],
+        1221011020200210: [110041030411301,110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,110033041200104,102000221442214],
+        1000120020110040: [110200411140130,110114120120100,103124210100201,111014200024034,102301002004242,112020014000340,110021404214210,101003014210212,100130220400031,100210024300001],
+        201001342101001: [102001444000222,101400134043222,100010400013202,114340312301134,114310242320310,102110021401100,100113201011032,102230000204000,103102044031002,100011421002120],
+        1000000133120020: [110230000000002,110220301202400,101003140322000,110401001002400,110210024220020,114201142324042,100401424300314,102213401111223,100040120000031,102002104011244],
+        101400102142302: [100004211221210,110201001212001,110200134240420,110403221000002,101201304200320,114022042302201,112002320212232,100002210413202,103140021401211,102404042001400],
+        100203202010202: [101000114000402,100043100123004,102014014000100,112212042024100,112410322024122,102300110221100,110002332102000,112001111111212,100020104300430,112041020221402],
+        1011401013024410: [114444244144110,114201004110120,114033234032101,100412114304000,103001020120202,101004411032102,101000020302400,102021014012210,102244221114031,112400000200011],
+        131012202321232: [110041030411301,110001041213031,103301210142043,100002024200142,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002],
+        100303010210441: [102304034110400,100043010120010,102101124001310,110030110122402,102430300201034,100004121030301,102143432000102,101031001004201,114001110033210,110120011014412],
+        1111011030001020: [100032041021210,110001041213031,101110044200100,110414300030001,100030020011022,111202012222402,102000221442214,102040041320010,102402104022000,103203401400132],
+        1420144022031000: [101240220300022,102200130202201,100002010014040,100022000410041,103020000102011,103001031420203,102301324112020,101040421033204,103130011441212,102240344041020],
+        104012440012200: [103000001432331,110131110401120,103000004011102,100120041014034,112111110422120,102130300200301,100121100002240,110224032100120,101104220322100,100001001201301],
+        120311002000121: [101220014012231,100104024303320,114422004110130,112210132031001,102010310213001,103244320114100,103422430124013,100121424231222],
+        1002120002022122: [101201220300012,101232104042101,101220404012304,101000304000400,102020204010341,112020100202034,100140410020232,101221004040204,100412414304143,102110404001401],
+        1040331220001000: [102041310200042,110301030010140,104100002101431,110221000111302,101010001002000,110022140120012,111330020002213,102011440201423,114011212320331,100002204310140],
+        142030323441430: [110020120023302,100043120003103,110002000410040,100433001014104,100000004102121,101022411030002,102000021442024,100030314100004,100404130020000,110400302114103],
+        1020000001100400: [110001202000032,100024204211200,114200004110244,114230412332011,101210101010023,114422114140221,100001211042341,114032104123010,114303122321110,114330204034200],
+        1001130242231402: [100042320001030,110024001010110,100100014300230,102043104010014,100001004300242,111120044100110,102200201110443,114240314000100,101002411030000,102002324011002],
+        1014202010302102: [114200212322001,100401210020002,112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,101022440300020,101402010301000,100000220111021],
+        144100013100013: [114020200020222,114330002323002,110213022100021,102202000240014,114424424144210,101224321014333,102100121342000,102204321003224,111222002224302,114100104030132],
+        101213002101214: [114014104033302,102120200221403,110323110104120,102110314001121,101020104000300,114003402300102,111202104100014,112402102021111,103344224020241,101002114000424],
+        1012442110402240: [104310001300102,114021132202032,112012004004324,103001314001021,114122220031004,103040024041111,101004004213014,111124002211203,112034420220403,101211231023001],
+        1002210200000101: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,100414004300100,112102232300222],
+        102400210400022: [110010334200041,100001024102001,321114010100340,102322101000200,102110100322014,110413131000201,100000100000432,101020021114310,114200104110001,100010314202003],
+        1043003020000104: [114101024120020,102004011440212,100000001021013,100011204300012,100101234330123,110024000432310,102012101443110,110032220022103,102102104000102,101210031201114],
+        1243002022101103: [110203120112002,110000002100100,102221410200012,110213401202110,102300104113403,102213224110010,102300004112300,102420024020120,100040020001022,102141140210200],
+        1421204200010112: [100140101044224,101120004023340,103040031403031,101030014001004,102012421412000,100010044300131,111010130002222,110200300000010,110144102001321,100020304102100],
+        1003013101233010: [102400111402142,100040240004024,100010000002400,141030301403400,100000024100211,103224200113121,110140101300004,120020211120020,110230010010142,101002041000124],
+        101432210141203: [100310120141002,102324014112020,100301421002002,102404021403141,103022021431010,103200020111014,100010004313001,103104200210410,100002200410030,100121031014040],
+        1104003002031130: [102420020200202,1023413000203201],
+        112011130023123: [101020014011102],
+        1102310021242142: [100022041001002,111240340004003,102021024000010,111101222244030,114032424122040,112011012004300,101021401003220,102000401120420,102010410213111,102004012043122],
+        1002120410241114: [100222000144103,101240000310400,114022002211402,102311020240221,110211000004002,114101402200030,100000034200300,100010124300001,114200022322000,103133001441320],
+        1022312211002000: [102123140310122,110101214402023,110400014224001,101410030330122,111000144410222,100040001022000,100222404342030,112204022020043,112320100202120,110222241300101],
+        1402011002013421: [101043042401310,104001222102120,111412020003222,101113012101010,111212022200012,110023132100402,102022102010211,110231202040203,112112410232001,100021220002020],
+        1010121032032211: [100002024340032,110000011220401,102112340210300,114100214000010,100000104201200,103000304010211,100010000002132,114100042311312,101000014001020,103014141222013],
+        1020030002101022: [102040431121110,100400002201113,114111100021420,112024212301420,100300310140241,100240134323001,102111024000402,102001011100100,114402104142102,103312241402001],
+        1010240311230422: [110200400000020,110203131211112,102301004110004,110021100023210,110402420402001,103122000100403,110000112100402,100002204340200,114103412201420,111140000000000],
+        1401004204000003: [102102011412000,114204030210041,110033101044200,114440120000030,101002004014401,100400224323100,102112112004300,102010014001001,102000001440004,110321100402021],
+        244331203200002: [101221422120021,100001000002210,100400320033201,100004130002301,101210300302302,102020131413423,110020204200342,100000220011133,102144012001113,114431110001011],
+        1130301120301001: [100401140034220,114002002300222,101242004043300,101013111000000,102102131340404,102420041111041,112004312310301,100040121030000,102000404003020,103111020223101],
+        1002000403000204: [103343014022202,102003104011000,102220330202001,100022200120040,103002020110334,101021134012211,102140200310400,110010002103002,100220034341000,110200002121242],
+        221400100111330: [102031100200300,114102134122020,110024102010002,103010034004303,102023032000000,102101440201242,103000204003200,100021044343014,111433000002144,110001002002424],
+        112133300441020: [110120101220000,101040014002010,112001001133213,102000144014000,124204212002003,102311101002242,102110210210004,100000100412410,100012441220104,111032320020122],
+        133313202104310: [110013334202122,103330104030103,111200002220003,112043421121002,102212030201100,100111401011110,102010341440030,100001120100002,114001000024011,101021024012041],
+        100143040212102: [100422314300200,101210241204043,100123011004113,100420001002101,101134224001001,101021204000200,102321234111310,101200111020111,102000024000002,111122222240232],
+        1432344120130401: [101001040340004,101013004002011,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        1100030203241342: [100440104303400,102122000214201,102220241100202,102024240221040,110320011200230,100342024100204,101422034042201,100011114300334,102300001002140,110040122000002],
+        1011102003042024: [104110021244203,102224101113104,102103022002001,102102224000012,102100102001032,100142431013000,101000031001011,101100001102230,101010130321200,114004322330012],
+        300210041431432: [103114001441122,100422004320024,114211110023303,111000302230100,114044144020400,103001101422012,4000113102314022,100022204104123,1400100000042343,1002411322210040],
+        241241343121111: [102021001132040,100032201024101,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320],
+        1100142404020120: [101210144014403,102111420233012,110000020022324,100020231201012,102210424042300,110220032120121,102130240221020,100101101020002,114442102312001,100030201024402],
+        110001043032202: [114240012324120,101022011003022,101240101000020,100003101003001,102313100240202,102000014002101,102110422004402,102100411340400,101300414221100,114020210020424],
+        1100103200140000: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        212420003003124: [103000001432331,110131110401120,112111110422120,100121100002240,110011010001020,100001004340202,100220100432201,101000140200002,110140001201040,110001041310202],
+        1041144140041401: [111120214100003,100014131222022,103110114004210,113002020130400,112012112001000,102101404000324,101142141144040,100101231202210,100003001223010,103142204001221],
+        201023043021424: [103001024002110,100231114320100,100001000002210,101210300302302,110100012120201,102020131413423,110020204200342,100000220011133,114013012240011,100010104312120],
+        1011412300010442: [110104112010103,111102004100101,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231,114022400020320],
+        1130200034001002: [112010102000041,103210304032003,102130224131022,100000201034001,110400011140402,112011220222001,111230204100010,110023022130322,110022222231002,103110100210212],
+        101001320111143: [114000044020204,102320000221020,110142020400012,103131420221204,102120141343312,114321114032200,100142011022211,114230344103210,100030020104423,100102011010000],
+        241102301203043: [111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,100104100412020,101020031030240,111204000003031,100012004110024,102142000210040],
+        100021101400201: [110000101304203,104121412100011,110040020001022,101104020300301,102101004000011,101401001010021,101200200300020,102011200213421,102011021411140,100000001020100],
+        1041203303120002: [110010334200041,100001024102001,102110100322014,110413131000201,110020104210120,101020021114310,114203002330010,114200104110001,100010314202003,101013220301033],
+        122400010411021: [103100221440010,114003344011001,100021101000000,101014201030204,101203001010111,100031201030102,101041001003300,114012444020220,101414214021020,114412010002302],
+        1143000322124010: [110041042000232,101002400343001,100032400410212,101202321024330,102303000241003,101000001002320,101310201000040,102004341420021,100012101001312,102010334000140],
+        1040230013042024: [102302440220001,100104400403240,100020111221020,110010122102321,110002322101200,102220124000003,101020201003002,100230300001042,100311334020020,112400022020023],
+        222004201002140: [110313002103302,112424204040112,101000014000004,101142310014123,101430401010120,110102410400023,102120220310102,101010200311020,111211214133000,110304102022001],
+        1042000233033310: [101000004000241,100120000410020,102311000240202],
+        1000002141204230: [111240220002100,110030344201413,101001014001021,100103224301304,114000100020200,102102100231000,114040202330200,100410331002222,100032204311200,102202111110404],
+        134224341021441: [101210320301302,100440024301100,100114104101001,101023221000031,101400014040400,102012034000402,103341124011404,102100122002001,101000011021414,114101000221221],
+        212200220320113: [114423002314000,114040002210432,100010040122204,103314044033003,114102224104002,102001420220112,114422404110312,102403144000120,101033041032041,101010010300020],
+        110100002004320: [101000040320021,114002210021300,101401300300011,100032001041230,100141120014242,113000201000000,100142114304120,103031014003010,101001021032110,114400404121002],
+        1411200112202131: [110030002000422,103100014031411,110000300424304,100032121024110,100011004343022,110401140004202,110040002034100,102402330230011,102022400211311,110203210002230],
+        330234311421104: [110443010102111,111320004131241,102020101324002,102401030202031,100210031004220,114140304122040,111321012222400,102000104002003,101223000300000,114201100210120],
+        210040200410202: [110010000111020,100430014323000,102011041320000,112100021100243,101240110302200,100012121040101,111243002222100,100020411020310,102121401402131,114030012302003],
+        100000040042044: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        1224441200202014: [111320012221132,102302144110440,102143202000400,111020002202333,101321311004010,102110241342210,100002320411400,114201000004122,100143034304100,114021002331014],
+        140222000310233: [104111102100000,102012201321104,101021004000000,110130042014110,103012301401041,100022130100210,100001020002400,103042224001110,111000230041031,112204300204013],
+        130101221040100: [110410412110241,100130124030404,101021121112112,110101002012003,111131132101000,102300131102042,111121230030002],
+        1033022310023442: [104120001244220,102202300114223,102310000240000,110301034241300,120440001302100,122032310023401,110113002140210,114331204032013,112042402000000,100002010000241],
+        100204342220311: [100010014100021,110403241001010,100101334233020,103120110111300,103202420103102,103004330103000,102002424001223],
+        100044003200110: [100021400101221,102241341113010,102300020241001,114100124100413,104130301242304,101001114012114,101141400302200,100002044101122,103342424024214,100100021040420],
+        1002131022022212: [110200400000020,100324140141402,100002204340200,110000410001034,111140000000000,110022002120332,111110230014001,100210200034304,102032020214001,100301101000021],
+        122003200104101: [110033000022043,110100200030100,104412212102010,101230004040022,100000411231000,103140021211010,110132020031210,100020140121034,102340211000200,102300231000210],
+        112200012414342: [140400400201014,110001212100204,103220130211414,120020020010400,101100211042114,121022000104032,112101102012030,111201122241213,142100040004101,100002244100310],
+        1014202212322031: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        130211322041021: [110311022103222,110302002100013,100210240412200,100000104343000,101140211100200,112301000204230,112202101100120,100000110412000,100034010000110,110402404222022],
+        132200002220122: [102100441341013,101440004042202,114201102342110,100100204101010,114101200210030,100104004100400,102002331440012,101223301020130,112100002302240,101430001014014],
+        110230202100302: [102012001130022,110040322000012,100331124310011,114102222344020,101042020300000,101220201204012,110042104411102,102142101121010,103200211200414,102111111121420],
+        1100244431221122: [100032000002120,102313234112000,102000000220040,111101100020030,102014024011240,112022330222011,100030201220012,100203401002120,100404024103100,103144000112000],
+        112120203210001: [101241200300411,110111001300001,110200012120122,114000102330022,114021104100400,110000430001014,101214400301420,112420200202001,110122201304044,112000004001011],
+        1010021212012040: [110101114200020,102144201343034,112132120202010,110002201320001,100430010431044,111020122230001,103040201222041,110111221000100,102341131103201,102100204000340],
+        1101003002401011: [100000041032002,141000211410012,110101322000312,103002420100102,114000204013024,110101221001401,111044114411101,103423300120104,110412140000033,103021100002140],
+        302220212000441: [110023342101220,101001421031220,100021004310222,112220322030220,110202222043022,110313312021120,102223400201104,100220214333200,110330234422000,111000034110311],
+        120200310232204: [112000210212000,100112001014144,103310140140002,101310340314200,142012003022120,111130114102040,100111100000100,102322104114020,100010131001221,100013201220121],
+        1020004042003403: [100110400404220,114221032331220,103200104032220,100212031002000,112002004002011,103100024001400,112400014020404,102000020201240,101012004044003,102021010212032],
+        1114040203024320: [110020120040121,110000100022040,111021030042411,114004142244000,110131011000142,102401010202301,110202012020000,114240000001020,111110004101041,114132022312030],
+        1141211203210210: [110301301232014,121202234011000,102140002000000,102124021023300,112444304040204,122022100000222,100003024211200,102102402003021,114302402321024,110202020004003],
+        132004224340023: [102002120203400,102000221101002,102000431130020,103120004004010,102143000210010,111104404100200,114432224142000,100202234320210,102330124110411,102112400210210],
+        124200241310040: [110001121012020,114244444114012,110404002114232,110032330032030,110032230140020,112224000203234,100404112201001,114141112324244,100111040404120,113431040101200],
+        130014011300003: [110310044430300,101010021020013,110200020001000,100420104100222,100401022201011,100030111042110,110032110010141,103302000142020,102010321104413,100102210402003],
+        134414300403411: [100002021021021,102200000200300,100000101040020,100110040013320,114023012303230,102402000202120,112442220201020,110002100012000,103211400100200,102132300233002],
+        140221020202033: [100003104342121,100400414321103,102132204131302,110020034203040,100032304202003,101420300301103,101010231112144,111000100003022,100113020400211,100022030414220],
+        1002220010000302: [103112010213010,112200410200142,101212000301013,111400002102112,100034100124302,1320102201231021,100000211020034,100000040413022,101000000323000,100011221224211],
+        103201211120304: [110441234224400,110030002000422,103100014031411,110000300424304,100032121024110,100011004343022,110013122130200,110401140004202,114020204102020,102402330230011],
+        1000304403212210: [103122020213112,114101100211240,114122134140002,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,100022301000112],
+        1001320110010041: [110011011212100,110123230124040,131000001020102,110420001000202,110412310030001,114012022302022,101042024210020,102202144030004,102141111100102,111030340040341],
+        1002002040323201: [102100224000210,102400100230000,102114022004023,102031001411010,102030000223420,102031021441200,102300031004340,100213310112333,101200020303202,102013224003020],
+        1022232012234013: [101011010320431,103041414001042,102441324022342,100002004344013,103220000104122,101401030302440,102040124010141,102314221101100,114240004002100,103131401421331],
+        1040202023040201: [104132340011314,102203304123030,114012040020310,103132004002242,110000212104130,110200200004002,114131040224332,100123020032031,121002023311103,100021124203441],
+        1002440332021113: [102004010220020,111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,111204000003031,100012004110024,102142000210040,102320214110001],
+        111301001000030: [110204004430204,110300011230013,102100400222242,102122114003140,100002021032001,102011404010000,100000011220004,114111002340233,110000210004001,102100324001200],
+        232110121020324: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321],
+        210031213113040: [103242420100012,101400004022112,100100210000011,103002221400000,102022030241032,102200000200201,110020402004210,103110020210000,102120124004021,100022141030334],
+        1040100401210131: [102420101111121,102101244022242,103222000100010,102013131134030,102004004010011,114101042313041,121211001014412,111012222200402,103300221402010,114021004010042],
+        1000130012301000: [102021001132040,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412],
+        210104220300403: [100023114341301,111000020010011,110101302141002,110114102004120,103212121402022,103330410111310,110201001200101,100102014001304,102030120200010,101030441032022],
+        222012013140120: [110004202003210,100424220032043,102021004001004,100000221030033,110210402031211,112032220240044,111220100010101,101012400340400,100020330410000,112043101112100],
+        1011000044400003: [110413304221020,100440000030040,112130010202041,102012404000211,102141010230441,100100341010111,100110214103200,101030320322101,102322121000140,114140002313010],
+        1003200020100003: [100442024301200,411231400122100,100400414321103,101024000322432,110302030412400,100110020000040,102132204131302,100010100000320,110020034203040,102014031440442],
+        1204020342100023: [110001332120300,110003000420200,110243234240200,110004014411012,114110200212210,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        1221300430001000: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,100030024303023],
+        114320100101321: [100031300002022,110210020002243,110210022120040,103002044002032,100101020402424,102201112000001,112211120202000,114211040011201,100020100423404,110001222202031],
+        112000242020101: [102304341100321,110010202103141,112003234002022],
+        1011020202100000: [111443032100000,100010314103002,100240240430022,110310321232001,103221100112240,112000000211220,114022300002101,102323131000021,102020304012021,101020024210020],
+        140022010210210: [112300421134001,110321031234422,103021004014220,102023001440404,101023014004000,100020010101201,102312344020020,103210404010101,110124411120222,110100242012000],
+        1420302200420011: [102041100200402,112100404000230,110400112021140,110112121002403,110122221240302,102401200230234,102241230200120,110201111200204,110400104222012,110104004202014],
+        104210020310230: [101004010304203,114104204002313,114300000002130,131204100021112,121200013012000,102122210230200,103110411212041,110421410100301,110244400212004,113003221014312],
+        1011022012144233: [110241142024233,110021104200001,110441140102024,110310020040401,100413311002132,100002024303323,110210301200101,102033124000111,110400241240242,102210101121104],
+        1114132034120400: [100441204302021,102100101340232,100011320001003,100000221020200,100200000030010,100200010431000,100003421040000,101012400320022,101332004231001,103300004030100],
+        1100123300430003: [102002040220110,102141220210212,111320022200100,102232004040004,111202024134001,100000014100202,111302120011012,102203001120342,101012104001020,103101031440430],
+        111031040332200: [100040031020241,101100104000222,102324141000002,101010234004042,102041224010012,114340102322021,110311011330111,103040044010112,102310001100113,102000114010020],
+        312000003010222: [100030324200410,102110202001010,100040041020102,114200020003431,114041002212302,101002200343110,103332044032320,100212024322044,100140004102001,114101024122320],
+        1201001101040412: [102101004000411,114221312340014,102434121112224,101200210300413,100311204312442,101211204201231,103210021401223,111110014101210,100323140143012,111130412210000],
+        120444122021322: [111030212113431,103222004032000,102233034000002,110123011200000,112130004021000,100100200021431,112101202012010,114240004000000,101100304021321,111212024101031],
+        1140403033012140: [101214104041040,110104231221040,102012204010044,103101000100022,100020141044111,114200000002420,110401440001204,110204310112224,100042110122000,101021021002110],
+        1400100200041100: [100131031020002,102031401100332,100014201021012,110030441223002,103010400120230,114120212310000,102424010230103,114200020210110,103110230210201,101403004020323],
+        200111121232200: [102110142004430,114310100014104,102001020200310,110211244400301,102040214001410,111101002240300,112411002010104,110400031142011,103000324042100,101101000300000],
+        100124214220001: [100010101043200,100030100004000,102311210221101,100401320020240,110201222120421,101000011020103,114121202312210,110010402103240,102403004020021,110040421210032],
+        310304311200040: [102410001402210,110000102100012,102010020223010,102120214001422,100020201221000,114201200004112,101400201100022,102141431343320,110010444410200,102010101130000],
+        1100201114304220: [112004300230022,110202001000101,102202101300230,114000102304201,114221124140000],
+        1411020200331011: [110200002031302,102002020243020,102040021121030,100311314310000,100000204130001,102041130200101,100412441010422,100220031001210,101010200312020,101040204210210],
+        1044022301110402: [114000000032100,110140102142200,100122124300010,100110034101010,110410224241010,111300402201232,111011100022010,100400444100202,102004000201030,112020401130100],
+        1040020040030020: [112113214020100,102010202004402,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004,103113010102100],
+        1032310201201331: [110413304221020,112130010202041,102012404000211,100110214103200,112020112300102,101030320322101,102322121000140,114140002313010,114040124102130,100002001021101],
+        122031421042034: [103130314001202,102143314000241,100244210034300,101100322120020,101133040012001,103302320110042,110112324202034,100020321212233,114042324104012,100001101222001],
+        1000100024120002: [112241020202432,103341411403412,114100130002210,100100001013001,112401002022010,103000214012340,100004204101200,102400134001010,102001004014032,101321040311120],
+        1120432001140211: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        111402030002020: [100200301002001,114303120004402,100444004302301,101030224211010,112200002010004,102000101410021,112034222002010,103020404002111,112010230210110,100201040012000],
+        1010031002102240: [102022000210010,111201240001232,100020301020413,110421202220142,100204314320400,104121410021020,100220004311122,101230130041001,101042034041342,110404034223424],
+        110021013020313: [100022010100002,100004100410134,100102014301210,102430144043230,103100130102014,101023321002102,100012030122000,100020200120000,102020024003420,103111230210043],
+        132033102211110: [102020221411320,231011321002242,110001332002010,101421101011202,101143201101212,100021341042001,110400131001004,110411200000004,114041104100241,111044212143023],
+        131132404101202: [102110141401203,100003021041343,102040034000131,114111302203401,112040041120040,100341001003013,110002341300120,101010011000121,101022140300332,110140412011321],
+        1412234223200101: [100020021042003,112404212020403,102100021341110,100002000100120,103031041400001,102022412000010,102300341002000,114002304100240,100100201020222,101000011003244],
+        100210020000001: [110011414240022,100000200202012,111142010020301,112114324040000,102124031023100,100204104320231,114002104020100,111222214101043,100010021034000,103132004002020],
+        1401424102220030: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        1000002322230111: [100040301042132,101021104212100,102102241341004,103031000121000,103002020101431,102020300220201,102020431101132,100000041020230,102041021121210,101404104000404],
+        1410043040014040: [103104401244021,112031202003020,104114400011000,140402143000011,132344004001203,100210134104040,110422001144121,110000031031240,102110224004010,100022024300010],
+        101000122104200: [102041310200042,101000304014100,100040011023101,110301030010140,104100002101431,110221000111302,114101420030202,101123232010002,114421242204443,110100222001100],
+        110203202020302: [110041400410001,111010002232002,102402104001124,103210300212001,102023111131000,100000441022011,102012010200010,110441042222033,100040224101210,110320300011130],
+        1144000100040220: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,100000301221024,101224322120022,110104422010121,110302204433321],
+        1032023214001301: [100002100100210,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100102020411200,114221030000011,114200302341234,103002110100200],
+        1104101020020230: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,111112204404021],
+        1100032122422030: [100220034322312,100203104322011,100021101021200,112002224004011,103240321400010,102010134012140,111102002240013,102110000210014,111101142110100,101002114000002],
+        1141000001411102: [101001040340004,101013004002011,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        200220014302300: [110300100100200,101000224003200,102110140224010,100024101020044,103140024002140,100103240011013,101020120322020,102020011103400,110222000000130,110120021324222],
+        1021241323320104: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        1140020120203220: [101111140300020,101240301000140,103100014000001,103034130144031,102140200212214,113013120103104,100200241000143,102010031101223,112401102020023,114101320030004],
+        1403231230440022: [100223000012020,101123031111011,110014300001402,110120424221121,101022011140403,101031411140420,101030114013043,101042301120010,114423312201001,100104044230000],
+        201134111400004: [110113314221413,112004310224204,102304420211002,110403042110030,101221414041100,100032424312011,114112132313033,101110301040312,102204010204023,100220000432400],
+        1013111302201242: [103300344012201,100122200012014,102313204114304,100011200201400,100201104224131,100002100204114,102203001300000,102101004001020],
+        1001001423001101: [110330400010040,100101231004020,110010100022010,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        120112010202304: [100010104331200,110010104201022,100012031032234,101000204210021,110100121224222,110002142120000,102011011321024,111132300020000,100022301030201,110100100030303],
+        201020143002010: [110020100042220,114200302320443,100401111000221,103302010140122,102113101400001,100010001001122,104240202023232,101003114010200,114030204021200,114000022210140],
+        123431202011002: [114330014002002,114020024104430,101040214213002,102010210200102,112002040214231,102100222002040,100011004312001,102033041412332,101014240302113,100011021000412],
+        1240321040221010: [111311002203000,103301000140120,100332111004200,101033220300404,101440410300202,110013002101010,114401020031002,114020204104030,103243024023000,103232031411102],
+        1121243200030001: [110200002031302,102040021121030,100000204130001,100412441010422,101040204210210,100000201034001,112020024000010,102004014011022,100101234002000,101420244021100],
+        1021120022012002: [114031102200100,110003010010401,103010010104000,102330030243120,102100100210033,234131201024402,100002200014412,110040311213342,110010102234002,102003144000043],
+        1220040022001023: [102000001132113,100041000010302,112004202302034,100042001020203,102002320220202,111321314133000,101131024020440,102432101112141,102100044000000,102104442004300],
+        1043404120000203: [101004100331003,112131222010010,103001011400102,102000011102134,100002121032011,114122224003201,112034022311032,111001420021111,111100214400041,112020102002024],
+        104301030210000: [114002104014300,102000311102212,100130320031042,102010004040000,112433112020200,112301312020123,100042001020203,112023032000020,102000201101332,102231041120104],
+        1210000221304320: [114200110001402],
+        1002203002000004: [114022300022421,114401200000003,100241001003002,111310004122000,101221000312044,100400240013333,102030300224002,112010022000304,103100040210040,100210001002200],
+        130402220300213: [111231002242010,114042034104243,114000214012010,103232114040140,114010002240111,101020401034001,101440104002230,102440214020040,110004124203400,110102032010323],
+        131310204030240: [110212301300020,110210422110113,111322300013200,102202001300342,110010222000110,110433011310111,100210434020011,111212224100024,102030104012411,114200002321340],
+        223002002023302: [102231130213210,100043324210140,114113104123200,100020420121003,110002021121023,102300040221403,100001104301200,114121300224141,102301100241002,112002104003412],
+        1140102113002221: [100000431020101,100244100032320,111102420023101,110010212101240,104104001243020,100032040000331,104124102100301,110002010440412,110111420033313,103100200103020],
+        121211122030300: [101211201202134,103120104030100,100004000100101,102020030220200,110031404423144,110003434410403,111110000014401,101004000304012,114002004100140,100022210410130],
+        114010032200111: [102003004000040,102011101131021,100021100013401,111010110042210,100114200020220,114401004122120,110023031204100,102431411400001,114023202330100,102041114040102],
+        100000001100202: [100021230411014,110024000412302,111201024101100,100203141001002,102123020230114,114102204121201,114401204141201,101124000330204,114043422212002,100000304310200],
+        1043020200022002: [100020220410142,110000412003001,102011331131302,114000230023300,120202201010210,102021204013000,112042024000020,110022100044100,114400200004310,110003000024101],
+        132001114401013: [100030200102434,101101230010000,101422401012100,114103204100320,114020012300203,102112410222200,101141041022031,102000044000420,112300001103204,100001001021223],
+        1004004102101101: [101100120330110,114141302341111,112400020200104,112212220223012,101002014013300,102100030222104,114113002340212,111203010002220,114104120220323,112134100421303],
+        203100022301203: [102401141113031,103042420143020,110210400002012,113032012204012,100204311000400,100403012200201,102011001002000,112002111121013,114211100001224,102112004004002],
+        1032011304303210: [112300020201040,111200400003200,100002001003103,110200010000103,100020324204012,102021011130413,102022001131012,102302214110042,112220020202300,111222002220000],
+        201102440003011: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,100103104302044,102141212000200,102042000222002],
+        1003010041242224: [110230000000002,100004414101224,101003140322000,102002001130001,114201142324042,102213401111223,103211104021300,100011200101113,110112030121310,100000100412021],
+        101210210122022: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321],
+        112020211002020: [110041030411301,103301210142043,100002024200142,101110044200100,102411000200000,100400014321101,114100122342002,112012020230301,100010101020023,110033041200104],
+        1412022323211302: [111120002211010,101201200310001,102023120241131,102020000201200,104103101240204,114241000002004,111232000010230,100424200020200,101020320323422,114220200214400],
+        1021100100102111: [112001232000034,102100021341223,114112434000040,121000041000010,114001002304222,110142032004410,102113232001100,100122210400030,101140114002200,110113211003124],
+        1101220000020110: [103204214040130,114113104123200,101210210300031,110002021121023,102201100200430,100114021040000,114121300224141,100021020412110,103110000223000,103000210120000],
+        132134404311000: [101020100300420,100200021000412,110330000400112,110000000130104,110103041012020,111233314101101,112101100221122,114000212301112,110000020124221,101000200300221],
+        111004200220243: [100000210100030,100402042200000,110001440041003,100000220111021,101000430320220,100401022201110,101100001110030,102210011101110,112100302012023,100402000010203],
+        1141002203100003: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        220211320214200: [102121201340001,110400242110410,111302204123234,100030020423044,103013104002044,114211004004210,100034204310001,110011340001104,101023011142204,110034220114031],
+        130002321403110: [103020031403100,102200401111200,114003104031111,114200302341234,103202430100244,102302331003300,102320000221020,112131004020212,102003211120021,100033001020140],
+        1000212024422033: [100140201011204,104010100010424,103010014013304,102103030201001,101203104200224,100010221031023,100140000024021,101223024200014,112240404012020,101201024203004],
+        113101010422232: [114130012310000,102112432004423,100243120430140,112214431102032,100400120013011,102211241120212,110120032013303,102101230310000,102323011101210,114420000000420],
+        1101303000341000: [110124010031144,100021100013401,110311312000001,110010320023302,114130202311020,110002042130032,110244000000020,100003021032001,421432000003000,102210221121044],
+        1004102042113300: [111100214100402,110021130004103,114041302322043,103204324031320,112430002022342,114220212340004,100241004324000,111102310012110,103200011404234,103140244030030],
+        112004341000001: [102300324010203,102100142002204,110113004402201,100001134100120,114023214101310,110301232000100,110102400013020,114110340004414,110303401230040,110011200020114],
+        133011200040220: [100002400100121,114022444101022,100004440012400,100001000413102,114100044004101,120222000002200,110001002130011,102202014020040,110001344200402,142402303420001],
+        1010411020110302: [100041200010000,110111001300044,111000002202324,104132100011024,111211010001300,100113434301241,111014014401303,103210001422303,100100000022131,112042111120340],
+        1120204111221101: [111420012101422,110444144241024,114120030020202,110201002010420,102001101130120,101004020342000,100230410112111,114224012330022,1000310103100002,101240010310200],
+        104003013104100: [114002104014300,102000311102212,100130320031042,102010004040000,112433112020200,112301312020123,112023032000020,102000201101332,102231041120104,100111304300020],
+        103010421110403: [100231401213132,114210104113314,114021232300112,103001000120444,101144024000232,101302121004422,100000010011430,100114420000140,102022300241201,110200100001242],
+        110223002344104: [110400010031401,114112002313010,114022200031221,110100022040022,102100401410022,104440000012304,130430101032200,111024240404104,101001004012010,100113120033040],
+        1100103312223300: [102222320200001,102024101321401,101100021101232,100000321040000,101010001000432,100134101022112,102402004041120,103310200110020,100020031030323,103101200100001],
+        1122320140101221: [100203344301100,101000110300300,103420104020200,110131411300312,110200124240014,103100000124010,110030414202400,110032040000332,100011011200212,114200024101400],
+        132213141012022: [111113202211020,102000100202041,101021041001434,111200024131220,112004030241132,111203034440323,100232004221200,100201000011432,101042144010200,100112401020300],
+        1230000101040111: [102440001113120,114311204002010,110004221040341,103200204031212,102313114114000,114004102201202,100000101001431,101010014001032,100222014121024,102340140222011],
+        1003024441100101: [101220111020012,100004024202000,114200020003000,102112430210103,103000114012224,100033131043244,103000024040413,111102002220124,114423100000411,100014201030221],
+        124002102002000: [110041030411301,110001041213031,103301210142043,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002,111202012222402],
+        131043001013100: [103301210142043,101110044200100,102411000200000,110414300030001,100400014321101,112012020230301,100010101020023,102000221442214,103142111441040,102140101343110],
+        1140102323000314: [110200002101020,114104032211214,102410400233132,103101011210300,114213002320124,102200200240031,110011212030112,102101114021130,102012410213213,102002010240020],
+        1042032223340200: [110340014422102,101022400300001,102140004000100,103202130122102,100021000010213,100004101033223,100231004220242,112430010114123,130020100202200,120002101133400],
+        1104300420300020: [110301012022220,100000130410014,102303414113320,103401344004004,110010114200400,102201001122034,100132431021202,103122110400104,101001211002201,102100234001041],
+        1010123300040300: [103222100212012,114010112201001,101224244040310,111323210000204,102001030240003,121102200401021,101001324214240,102301010242231,121244120211020,121100000400034],
+        132041000031014: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        201022320130011: [110433012110300,110440201342022,112101414041022,112243340202002,111103412240000,101000204003420,110101240024120,110300310011030,100230101001020,112021300220021],
+        101114041010101: [110102042010220,101020124000413,111210000001101,114013400011030,101201104040034,102202000201220,101020111030400,103004104010210,101220024041000,102010300201414],
+        122430010030030: [110403302023130,110001004204310,100010311020030,100020000200000,100141230020203,101031121003021,100200120030203,103111201443022,110101214400030,114104040220130],
+        200110400021200: [100300041001121,101240004011021,101011001103200,101002244012322,102302210210322,100012401020212,100003131040012,103004044010300,111210004101111,114004130020232],
+        130021140213331: [114402404141241,110212022133311,101041210311410,110022004211030,102104101122100,112230240412241,110000204203220,100034141030202,101000300312123,102204141300100],
+        1410110013004410: [102102000233342,103302220110131,110100111121002],
+        121212010020410: [110330400010040,111000100012002,110022140120012,111102010012102,111300030012334,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        200013001002114: [110442104221030,101224001202324,111211144101202,100002001024100,102103130221330,110000300140010,103102134001111,102011310202304,100003114100011,100002314204210],
+        312124010300220: [104100012102004,110030002000422,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110021232000021,100001140000010],
+        1000212113420430: [102002040220110,102141220210212,111202024134001,100000014100202,111302120011012,101012104001020,100002314210021,103101031440430,102022001101234,111422202210212],
+        120221011100303: [102001404012100,1010400230221020,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311],
+        101004101220212: [102023104002000,111114010020011,100001204302200,100310111001140,100000004204201,114002104011010,110001221101201,102000031442000,102400014020400,110301011230230],
+        1011110400240232: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        1102202110002002: [101222101202341,100020220410142,110000412003001,120202201010210,112042024000020,110022100044100,114400200004310,110003000024101,100010024302100,100000011020412],
+        131110002301301: [102224101113104,114202144102100,103000214012040,100034140011211,102333204110024,102103002002000,102402001403121,114114300221122,100044334102300,112332301100223],
+        1034021200100143: [110300221220031,110201220000032,100021214313034,114300200000110,102000021133001,102301434110030,122011001202102,102100301400242,202023004201110,101001021001033],
+        1100003040100031: [101030000320122,100310301000321,102001002000000,102300010221100,110020004413300,100121320401222,110021200040000,100301124210103,112211024013040,100040014310010],
+        1124201010140100: [100111011011011,100030040101021,114310102300021,114014112300100,114030034013101,102400124020001,100102224234101,101013004001421,103000014011004,102010321411140],
+        1022210110130021: [1300422220310121,100422321032021,120032010212320,411001103222300,411311131413022,1220101103414143,320440200013001,410000244003240],
+        1120110020011410: [100304201000221,100112021020320,114212104110100,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,100301104104210,111022134112141],
+        113022000112320: [102300000221114,114301000002344,114212310002312,102104014001023,110200442120120,102020031123000,100022101040044,100024000102402,110043301220422,110022400021000],
+        1100100020220202: [100102204300424,110102221014102,102002010224011,114000030042240,100200020320224,100011010022200,101403144040010,104133020011042,110031132130311,102022001440012],
+        200311014111000: [110301120404342,102113304130002,103124420221210,114032024012040,110100000100220,112000210210301,102012124012120,103431021204400,100031341030021,101014004001312],
+        1010300002120034: [111102420023101,102102244000330,102140140210323,102001004012322,100004001041301,210202011010122,110420104220202,102320420240300,102222131120032,100203101000022],
+        1211000020003020: [110230000000002,110220301202400,101003140322000,110401001002400,102002001130001,103012000100400,114201142324042,102213401111223,100040120000031,100040030122003],
+        104130311211041: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        1101112101300324: [102000001132113,100042001020203,102002320220202,100120010421220,100000201041300,114011200003102,101020104000040,102432101112141,114412142320040,102100044000000],
+        213143030122200: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,102042204000300],
+        120024032114020: [100102004300104,101020004011302,114212100023341,102300021103201,102410101112322,102121041340000,110010140011021,100123014103104,100001011120400,120131201313314],
+        303013014000413: [100022041030000,110100104403201,102202000200010,102214204040420,100010430202422,112340020203003,102443011400041,100010430022021,100002021031032,100403022201202],
+        1020203111100020: [100131424302300,101212040011001,110201344402000,111011242233002,102320001000230,111110223004100,110020212130021,101422404040210,111040224110141,100120041224204],
+        222010011014131: [111001440020003,110200020010003,114121000002140,100002214100100,102120104003011,102100144001112,102000041441002,102120402000014,102000200210032,100041000100422],
+        1430130300002324: [102100201440001,110400011311001,103300120141130,110040002132020,111144202220301,100000000120200,102304011004310,103101410212231,102120044002231,100002404210001],
+        322400301320302: [111321220003002,100332104310222,100003201212143,112000014000303,110120200000111,102000010204312,103220434021030,110211200101114,102122001402410,110430001110403],
+        1020312101344012: [102011114002011,102042100242012,102144201402040,100014201021012,110000214214420,114021212301131,112010112000311,110030441223002,110440002111230,103002044010020],
+        1122122000102011: [102202010240210,102203101120000,100010204102001,100002010102040,112104000200322,102140201401023,100414000433302,114120000000300,103032224000200,102103200210010],
+        202213212001411: [114001024011334,102312144114200,120012102310332,101022220320012,103023404040213,114211000210320,112103000204401,103100004001120,101201114041014,102101034001100],
+        320214120004400: [110204034240010,104102030012121,110000011100204,102420001110401,101021111000022,102100111413012,101422021012014,103442014000100,103132014002131,122120120140231],
+        1040010003012010: [100220034322312,100203104322011,100430020001120,112002224004011,111102002240013,102110000210014,111101142110100,102000411410342,102310314114031,130200211400203],
+        1121100230120400: [101222101202341,110301442021010,110001332103022,100010024302100,112041000220020,102022400210202,111304202202230,111300000001323,110000002001040,110101000121214],
+        1000110011013122: [100002104204000],
+        1022200103210210: [110010020020011,100000001221100,110240242120033,103141100120000,101200400303000,112400002013000,100120440000022,100010314313000,114310424030011,101001134014021],
+        103001300220211: [110111001300044,111000002202324,111211010001300,114030020020301,111014014401303,103210001422303,100100000022131,112042111120340,100101141042243,100101100022012],
+        100122244200330: [102130020200000,101104020300301,102004204001111,102101004000011,100002040102100,110023330004130,100001104303411,100224204323201,110201124211431,103004240101010],
+        1200204124402002: [111302020010000,101300221003002,100000121020303,102403004020102,110200220010220,101000001001114,110020004203240,103303021404201,100020010420242,100100204232000],
+        142002102104021: [101000411030013,103012004020122,101322310313010,100000000410101,114403020000214,100003341020020,114110104121414,101313000312100,100040424212200,114040414102120],
+        102411011130240: [100011010414200,110430000400002,111121102240240,111320022200100,114000100020002,114104332310202,114410102310421,103131121421321,102101331342000,102010321131241],
+        202304002020040: [100000220100001,100122230031414,210303212040010,100000014200104,114011120024030,100101121010100,103002011240201,102440024021100,103231014021201,110110420034120],
+        102204104000000: [114201204111222,100104001041200,103300004021200,102004204041000,114210400000112,103230134011412,100012004101221,114122112202230,102301101004100,110432112111103],
+        310404203100341: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        1122001024210202: [114010330030011,103021220104200,101010020320000,112000210211020,100010324210003,101000000343443,110002400011111,100402132200000,111100300024000,103144040104204],
+        221134213203000: [100121230031032,112000431120410,103042024040104,102304104110001,101342300314204,114013124030022,100013200100011,114104200220022,100021221021201,110001244204302],
+        320031312101204: [100020001044100,1340120100441224,1301223001003430,102330042000001,232020104433104],
+        102241201232300: [101413321300222,110304111230123,100031004101000,102003011120001,104101420011121,114200224001003,110010141221420,102201201002010,114310224030143,111214003022100],
+        1043331100042020: [100021204100204,110211020000002,111230214102412,100113410410320,111201442222420,114012000022010,114222440003300,111022120023311,110041341300041,100031144310241],
+        1000404012003420: [102301000220000,100024114340002,110101231300241,110000140132110,102402010221231,100304100140104,100213444314000,104132100010310,100241000440432,110411200400010],
+        212123200410100: [110002320424340,102031100200300,114102134122020,103010034004303,102023032000000,103000204003200,112300020200242,100021044343014,110001002002424,111100404100043],
+        140000222031301: [110301042101400,112423414042122,100400320020104,110001404210000,102012201100202,100220021000001,102011210242012,100114330414120,102121314001202,101010001030001],
+        111112010310012: [111333104124202,101000304014100,100040011023101,101123232010002,114421242204443,110100222001100,103102000121300,110010331230210,102030020224102,102430014020010],
+        1012000440233031: [110041240000013,110131122012210,101021000341001,114010200040441,110032014420232,100012044101230,111304022202211,111021212200430,112010034020230,102100010222101],
+        1100112304402303: [102001000212142,114121000002140,110024042103114,110123042010000,100041000100422,114020002303212,102223231121242,102103132002023,100024121030022,100000020001022],
+        300100043121010: [103130314001202,102143314000241,100244210034300,114001102211300,101100322120020,103302320110042,110112324202034,110031422000002,100020321212233,114042324104012],
+        122431102040020: [102021001132040,110201201211024,110402420402001,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412,110123004401121],
+        202011242024002: [103114204002100,114230004110101,102122101023020,100001101033010,102142002000030,102023110221011,100100114302030,100100014302013,102020121130000,101204031024110],
+        200012020220101: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        1414410110001200: [101230114202200,100400000020230,114300124030100,102211020204231,112011204004112,100202031002101,111000004401312,101000034212001,100121114230123,102321014111202],
+        1114201310030110: [110132010032031,100200044102003,102210430233001,100110231000142,102420210200041,101003204003100,101312004211100,110010030101400,111022114120310,114003422242201],
+        1101002041041001: [102402434020211,114103002311110,101004344002124,114020024120011,100001001032400,102402030203003,103022011400040,102011011133120,101011411002311,114220102331110],
+        221241002003004: [102014130241422,110001002203134,111001002201122,103232040100100,110212020100040],
+        221000241023300: [111201000013222,114004104012300,100021014100123,101203211010000,101200314040213,112032020220030,102320120240012,100003021030220,103101324001100,102123021022412],
+        110004430041000: [111132230010402,110000400023242,114000004102010,100110014032131,110113041303100,110100314401022,111301102204130,103010104011202,101020220310112,110000421320024],
+        114103210330002: [102440104021410,102012214041011,110411344210012,102010214000220,100100014322200,101042134014101,111141022224102,103004030120101,112221404014110,101032011143223],
+        1000004213102000: [110443000000102,102430100200123,100040214102300,100002214202010,101424010303040,114042244102400,100034400410112,111020012203011,100100111043114,100000044241022],
+        143210020000210: [101210331023020,102021111412201,101201000011000,102322124114210,101011211002010,104110411304420,101401221011342,103200004024040,114220000002123,100010214302012],
+        1010222200110100: [110323344422123,110011010021004,111220002202002,110112001343021,100002101020204,114212000211041,100431204320300,110001040020213,110112121200203,110300200013040],
+        201113000120214: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,112002104003412,114201204111002],
+        1011213312000014: [111200212223002,114141044000340,114020444100202,114020232302203,102320014112013,114402000003130,101004001001201,101001000321032,100023100104410,100024000010031],
+        200200022302040: [110140201222000,114112232313023,100102001000010,112032200230231,112312420202020,114130004004200,103000031240330,101020304002132,112220004010404,112102400202324],
+        141201040004004: [100034304101213,114002014100310,112023140212112,112313301100030,102101031412121,100020020121132,102102010220401,100001020100030,100021120201020,111000024404021],
+        220320200002034: [102100010233022,114313022302101,103001324000110,100002014200021,102300401001010,103212320212011,114000030014400,111120034400000],
+        102201300004002: [144131233204044,120130001004000,101001131032132,110102030010210,102220211120002,114014010033321,101400104042212,1003022312322100,102001244001224,103441112000230],
+        1403121024040210: [101020024212042,100041204212120,100410110420202,112423424042102,100320431000002,411200101402221,100120214230002,103204200103440,100210004104001,101410201111300],
+        220300201301120: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,100301020420101,102002202000000,100022024100041,102010410213111],
+        122303001300104: [114211440211420,102200024042003,114320004030033,100231411001200,111010000022022,102112200321043,101000021140240,100001011040221,110221102221300,101021311001001],
+        111203120100014: [102044104002014,102022000220004,110210001310230,103001220104301,100010144303000,100102434300310,100421200001003,114024200040223,100133404030004,102240001100210],
+        220020202243103: [114003010024040,123102202010320,101020211140102,102104120200134,100120230012241,104210140212241,101112240323103,110203232020010,110043200023212,103441014002310],
+        130230234000404: [140420100400012,111001202231001,122012440110401,202220202402001],
+        1124221120201422: [100040201012040,114100222310230,114131002342130,110002022003101,110224130002014,100403122201202,100100220403100,102303304020122,100310210142030,114132012200110],
+        131344111020111: [100001024201214,103433121201311,103404001214121,110113211301114,122004120000100,102300002103012,113030410122021,111400202101243,101012114000111,101020211140102],
+        1040302200342312: [402000401204030,114124020222032,102121221343020,100140201000222,110110000004210,101400010303002,104200202141001,112104424022201,130030220200012,112200110000221],
+        200002300140211: [101021014002020,112000404000001,110320332022210,102230040200111,111241000001011,100240034101400,100220304100400,102102004000001,111000412203041,102400121110000],
+        134200201020210: [114021412213020,110030002000422,100032121024110,100402431012022,110040002034100,102031024013013,102402330230011,110044020020202,102022400211311,102324410243220],
+        112120200100343: [110130102010010,110100030123401,110001010030000,110102202013213,110021404214210,100003110022310,100000400100142,114102000003021,102220314013103,102002034001310],
+        1000144202110034: [103033004011100,111320122204241,110132212010200,101000024000022,100000204310440,110110100033221,110000224410201,110100400020121,110011304200020,102030021102211],
+        1004033332023033: [103214010102022,100043324210140,102324014112020,100023024211011,102404021403141,100010004313001,100003201021001,100122020011232,100002200410030,100121031014040],
+        130220204001330: [101400004021110,100000241120103,114232000002310,100402000000101,101000114003100,102202301300240,110010044203000,111010014400030,112211030204411,110210102120000],
+        210002202200000: [103211144033404,102123040212103,100041301021020,102314224010213,112113012010000,100000120000202,111000030043110,100002314203420,102001121134000,114220414000310],
+        101220020001403: [102342014111202,114040002330341,411010033020221,114102020422002,1224320120024001,200002003223300,1000412032200202,300204110434340,111100001002113,132220124203004],
+        102120012021134: [110400000002213,114132100210100],
+        114000223000041: [100011200121231,100102004100201,114040020021023,111230114102201,101400300300111,101220200301400,100001101021134,102122302000300,100000300202000,101022031034002],
+        101110430324122: [110200002031302,101403220331230,102040021121030,100000204130001,100412441010422,101010200312020,101040204210210,100000201034001,110000324412304,110000201230100],
+        102113104000201: [102041310200042,110320202023400,111431110000042,110301030010140,114101420030202,114421242204443,110104422010121,110100222001100,110302204433321,101010001002000],
+        1000302330420004: [100000020004101,110130014400011,110011232100412,100220040142222,110232002101410,110200021210212,110131021240303,103100101442233,100424331001120,100000031220100],
+        300220113110120: [114021000012310,101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,100400231000200,101000100340001],
+        1004301013110120: [103310020140014,112000204002100,110210030100111,100041200002402,100000000411240,102030021443010,112300220202122,114010000024012,103100421422110,112120002302004],
+        212044320041421: [100244104101010,100200011002201,100211310140340,100200024104410,100220011004202,100000101232030,102101200200034,102243201302244,104430421104102,104100402102320],
+        1030202410202120: [102222111120010,103200224033413,102300440221022,104120201242031,102320110240231,100100101011200,100133001220421,100122204301312,101022220322100,100114113200203],
+        110020300043342: [102112020222030,110320022101120,100022431030100,100022004301043,102214101120310,114000040031021,102400001110113,102002224011000,101030204214013,100004201211032],
+        120220023043020: [110024404211001,110100022010010,100120001040202,102140140210112,100004220412010,101222020304402,101201130302002,111020400044101,411120024124200,114202102321131],
+        130300014233341: [100102211021000,114203142321301,103141011240230],
+        1113010112422040: [101012131000024,102120221022200,102110141410402,101044001032114,114221104114000,100001111032112],
+        110020210041024: [100020400410010,102103441142340,101211210304010,102100001004041,110000403400000,100000414104102,100001020044101,410310420012412,101000020100020,403002310120143],
+        1003113220430003: [102422114040010,102020004001311,100101101010100,114103212312012,102321044112101,100022024100041,114231212342200,100020011043020,100021231020200,114201112322020],
+        1101000402201400: [102000004002101,110202000000310,100422314300200,101403014020203,102141410230020,100042030120422,101134224001001,110020001224021,112100000200031,110003032000041],
+        101002121200031: [101203231002222,111430032210010,100000204100040,101003030304240,112113224020012,103002211240301,100220120432010,100004014202422,110411232110220,110220042121003],
+        1141011011423232: [100012014341003,101100411104001,112111010201220,112222122032004,110100134403210,102300210242404,114300432300422,114101144001040,100040414212104,100000424304010],
+        1410200232000002: [102422114040010,100022041001002,101204400304011,114032424122040,102020004001311,100101101010100,100301020420101,114103212312012,102321044112101,102002202000000],
+        1042200002202040: [111223402220443,110430000400002,114033000032021,102401004043011,111320022200100,100300001002041,103000200122014,102203001120342,103133004002010,101202330304024],
+        213021140040011: [102230040200031,102101204000010,114230230000123,104121001242101,102024400223212,110040004411003,110211110001322,100014110201012,102200310201220,110300014422013],
+        1003112022201200: [111000022202402,100430211011410,110010340040012,110014032101430,104421312102244,114131014101010,102240214041033,114200322333401,103010021422042,100000001022401],
+        1001031040033013: [110023401320200,102301224110000,110000312001020,102133211401043,102010214000003,114032204104044,103002010100104,100220310430010,102124011340031,102410110232000],
+        1020014220203011: [100012320001320,102000331120104,114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101],
+        130003010203330: [102211220201114,103000021411202,102101004030220,102003001132213,102100204030012,111432000004311],
+        220210100042200: [102102430310202,101020030332430,101022004214304,100020101031131,101010000323030,101001414212120,103310220113140,114200202330330,103101101440200,100000101031020],
+        1003010414041111: [111200200000232,111410210001002,100101001011114,101430004040203,103122104002013,101020404210020,114040414014202,100000024301031,112022140234004,100143440001301],
+        312040323040010: [101211104040023,103042004001000,114233024034201,114030002301220,100221100432104,112003120220142,114010430040320,114303222301000,110001022011241,113423202410240],
+        1400412203240330: [101020341034234,102113101342000,100212304243333,100431001010310,110002010042440,102022401412124,100121210402002,102212004030221,100030404311202,101410010330014],
+        1024110200120012: [111300232202103,102301401002404,110122120100022,102012004010000,102400100220000,102001104012021,100242444300104,102002104014323,100401241010122,100010010102122],
+        1040202023020134: [100000020004101,110130014400011,110232002101410,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300,114200444140203,100000124211001],
+        1100220301211442: [101240210310204,100000021023020,100100220423210,100231020112302,102000111441024,101110204004210,114240000000041,110004010004010,102210220202001,100110040020104],
+        1222211202201004: [103111004004410,114220012340000,110102141201112,103112024030310,112210222040000,111100002220221,114011014010300,100000020413022,102244101111124,104103031240201],
+        1201104001013221: [102000324040000,110222200103041,112411400202001,110212311111030,110000110022002,140143400110002,102042211100202,102010000200240,114000002302204,112431244044400],
+        221100201100100: [112030004004130,101340041000104,104100212101403,112001102000201,110404212112030,110104220400022,100040020000313,110211130002000,110134310404210,101420000330441],
+        1114122030000002: [110104112010103,111102004100101,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231,114022400020320],
+        100142421420401: [102002212000021,102013201320403,101134004004013,112230122032000,114300300000020,100020001040312,102203011002032,101000324011134,114302022300311,102220301302413],
+        212100201001020: [100200101000000,103110431441100,100011004340114,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110,101400300300111],
+        1400100010000112: [110230400000202,102012314004200,102112304002110,100432014100103,100104220412020],
+        102430101140002: [102310000222133,114104310000002,102100011413420,100001001034141,112123102010143,102130201140012,100010204202202,101101404003003,112422320200210,112100211100021],
+        1102202210214234: [102104101340301,101033011001100,110014010012200,100100004230402,102110304020201,110202420004101,100021220010031,100000014211030,100000200100141,111303012201100],
+        200012204110023: [111011304114002,103000001402120,100020314304002,102120400200003,101020300320020,101220301020130,111012310000204,101222200301130,112340340203340,103203314020144],
+        1101000220032204: [100000031211103,114210424101200,100420110312244,101420014021400,112230324002000,112320301100420,110101024402203,112001202000203,111034200010244,101122000320210],
+        1002114144412000: [114202012340131,110322034430002,102323131001211,112023102003010,101010104011313,102000002041020,100320021000000,102034100223241,102020014021021,102240234121424],
+        132032202211121: [110232022123020,103140044032100,100010240101221,102100010213413,101024011034002,100032224101400,103033044023040,102403101400210,101021410320100,102430010202411],
+        1441300113003204: [110000021202100,100420014301410,100010101020403,110302030011010,100101300011010,100020111001344,100022121024103,114401032320120,101201124013202,114223002333020],
+        212100103212123: [110120200032000,102140011140002,101211001023004,102204024011121,101012100320111,110311100001210,100214200000020,100000012212010,112122034022100,111230102222200],
+        132114221021100: [100002010413410,101433010300204,114310100000110,112002020214003,102010231121200,100140301000432,114400022311400,110010220410220,114040010022000,101133104002112],
+        222223344212101: [100000201020000,102030024112031,102401011401222,100002002212000,102114341341012,111420200002021,111001224121320,104042022102100,104030002100140,102104120200021],
+        201140431200121: [100114234102203,102030000223410,111101312240400,100231124320130,114000010012243,103040424010400,101141111100022,100000404100021,101332011001000,102103000310202],
+        102004443030100: [111302204133040,110300000011120,100000221020004,101213020304210,111020010022310,114011302300101,102420021400002,103221200100302,100432211002022,100424444303100],
+        212024120403302: [110240301111040,111123014100000,114200000003241,103103404004112,100110120023012,101042044010040,112021014022022,112002322032030,101040401030013,111300002204430],
+        1122013000001010: [103313111402304,102031212011001,100010044312000,110213220000201,101204034200001,101002200021030,100031011012000,102000141010102,110304220100002],
+        1140001000214020: [101221020040220,114022412330004,100103104302044,101041030320401,102141212000200,101203121020430,102100104002224,102020004000014,100000211023014,100400001001300],
+        1130320404222410: [103111001422000,111244302220204,100042100102211,102110030200120,100202140000111,101114000332010,112112211102024,114001032300011,100142044103021,101100010012423],
+        201121430001102: [100030324200410,114202244112111,102110202001010,100031021033010,114011404103142,114200020003431,114041002212302,101002200343110,103332044032320,100212024322044],
+        1001220024010440: [102011201101012,102300304110030,114412000003141,103020041420212,100112011040011,100401024300321,100102030423010,102101004022104,101432240300300,101232104042101],
+        112220043001024: [101221422120021,103001024002110,100231114320100,100001000002210,100400320033201,110011402100202,101210300302302,110100012120201,102020131413423,110020204200342],
+        200402011402220: [110341200403110,101130034000022,100120004230130,102030041134220,110000400142301,114414014142230,100000004302210,111001404111020,100024041230002,102000104044004],
+        1003110001234320: [104132340011314,102203304123030,114012040020310,110000212104130,110200200004002,101000040320021,114131040224332,114002210021300,103230114000201,100123020032031],
+        1203102204020140: [100000010202003,114234324112000,103200101401010,100002231021012,102400001110102,120413040002400,112410024040000,102300234110002,101221001202021,102111134001302],
+        1000430300020111: [102021001132040,110203131211112,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320],
+        202100013022332: [111134204102000,110422200000213,101020031000300,110000400000233,112000112030300,110240010002041,110021040001310,102120001120141,101003044001244,100131121222212],
+        212101100440000: [100031300002022,110210022120040,110000021221134,103002044002032,100101020402424,102201112000001,112211120202000,114211040011201,100020100423404,110001222202031],
+        1040003320021143: [110010000111020,100430014323000,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101],
+        1141001103140230: [103000024014022,103010000100410,100040404102010,102203240202202,110002110021301,114231020001120,100100211012004,102340202000001,110020402100200,102023210221301],
+        1000030000032103: [100102000022402,100000001033001,100124100031200,101010200321022,103304014010000,103123041444340,102200231120202,103342100110221,101021220300001,113023341020302],
+        104023223104010: [100323401000042,110103020011001,110210410123112,101100004000244,101000014211204,101011204004013,114422004142011,110022010002210],
+        1002220100110100: [100122420031012,114200334112132,100210204343141,100000104300130,102202401114113,102140201342144,101021001031113,100100124234311,100022004310010,100010114310001],
+        132310100001031: [144131233204044,120130001004000,101001131032132,110102030010210,102220211120002,114014010033321,101400104042212,1003022312322100,102001244001224,103441112000230],
+        1001303020002020: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        300211300011104: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,103140124002022,101042421021120,114013204013220,102000100221400,114241204001213],
+        1041044202311111: [110401004221204,111112000011222,100322444314002,101003301020022,100102431021300,110200212041001,100001030100030,112012004004000,112044204000441,103141100104002],
+        1020202240114112: [110200321303322,100010030100011,102012124012120,103002041402004,114120034123300,114010112332112,114204202332300,114121304121000,102221024044110,102030004000400],
+        124300110101232: [102000004002101,110202000000310,110000010120043,100422314300200,102403404004110,110301311303102,102141410230020,100042030120422,110020001224021,110103111120042],
+        300412012111013: [100040240004024,100010000002400,112000013244041,114020100001120,101002041000124,102100000231232,102030034011211,102000400221230,102122001404300,110441342010200],
+        1021041112002002: [114020200020222,114330002323002,114001020042001,102202000240014,103014101432000,100003014100041,102100121342000,112404410204002,111222002224302,102214011120002],
+        102334000202111: [100424331001120,111040300024044,111020232200302,103124000104424,102100102002012,110201014241230,102110431342142,114201410004440,100040331221012,114442130003110],
+        102211130414013: [110310001202220,111131224100212,112000112001400,112111412011211,101240000302141,103414034000124,100002020110200,112410024043011,100003200400110,101222201020020],
+        124001011241420: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,104101201240100,110000011012202,112102112301130,101244324043222],
+        104220142130201: [100040201012040,112021004003303,114100222310230,100011120000004,114131002342130,110002022003101,110224130002014,100403122201202,102303304020122,100310210142030],
+        1000013140040000: [102311004012010,101020401033332,100012001023022,101104414002010,102112012004120,111112242211204,110422020000111,100004020021344,100100000000042,100000041201200],
+        1041120100004010: [102224420201000,103013034012221,110302311302101,100000120002200],
+        134202314303143: [110102401201204,103020200141000,102400100230000,102414034040100,100212030414010,101200020303202,102020041321410,111340300010010,114120420223002,102013224003020],
+        1001420010000230: [1020102021344321,101030301001232,100104302001300,1001102321230101,1002001200441033,220200021120010,100021204230002,1401214001003110,1023121121030343],
+        132200000042020: [101211214040304,110412001213211,102040234002003,100100021013214,110420202110040,101301204220200,102304422004020,100000110400321,114011120033402,110020330014410],
+        103032204302020: [103110044003033,100123041001320,110310010113001,114414120002440,100221101003010,100300314101444,101130430331440,100002120004202,102200002021022,112123104020101],
+        1131304130122001: [103010231401402,101011400302300,112003012002211,112002414002043,112442004040022,114140222200101,111104232241021,110013232131112,113022341002031,100013411042212],
+        1114320030021030: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,111212114131222,102140001441301,102223400201104,102342120222031,102221010201113],
+        121002010411143: [103102300102243,102113020210120,111202004100121,100020004310022,100222220001202,100003100122232,102000414010131,110410300402321,110020014410200,110320100400100],
+        1040211400101414: [110233012120121,100000241030333,100020011020010,101000204002210,102000131130020,110112210000002,100001204130442,102100321410122,114024004020023,1014400221004004],
+        210200000101402: [100422211004214,102100000210002,102121010210004,114013214010111,100010004210020,112002100240200,100001404100110,100002044200330,101213110310042,101424044043122],
+        1400413220404104: [100003030003020,110410000104042,100000040413000,100001034310012,121310232003222,110011300143002,100220021000033,112011312002001,102110201023020,101344331000033],
+        100003101320110: [100010104331200,110342022000001,101000204210021,110100121224222,110002142120000,102011011321024,112311212021024,110100100030303,100043100103044,110302030004323],
+        124100012022014: [101032111230411,103010110120020,110100032122000,101020210301131,103201004020101,110200001314040],
+        103140020100202: [100023421041402,103101224000011,101144134001102,102200042000104,103002000104400,110114021000012,103002144042123,110012220002021,102304204110040,112020004002110],
+        100021323044101: [110400000002213,101101230331040],
+        102330100031011: [110120102041110,114002242304240,102100111341030,110213131203122,101203440304221,112114004043430,100002334340000,110010432000001,102111044004101,100121101023404],
+        123000400311001: [101002204212400,114041204104222,102112300201410,100100121043010,100323120143000,110432111241204,114200200002223,112123142010120,101002321032002,101121100013002],
+        221041130130032: [111120002211010,101201200310001,102023120241131,102020000201200,114241000002004,111232000010230,100424200020200,101020320323422,114220200214400,102010001104000],
+        1100202311010001: [101010001000031,100021020104221,111120024101141,103201214021013,110310304430141,102113304130002,102000131131100,103124420221210,110201002043201,100011034302423],
+        103000100303220: [110111222040014,110100000123402,103003024001001,102004204000422,103010000120000,114211324100034,102440234021012,100240011000000,100002030413101,103000310141142],
+        1403120024024100: [103123004002102,101020000320220,110111140011114,114131304142010,110132011002023,101100020300101,114423210001210,101040024002000,114020024010020,102040111124412],
+        1200302124321320: [101230002122040,101210241204043,104102040011120,111311120014011,100123011004113,100420001002101,102430121110340,102020121102120,112141104020201,102000024000002],
+        241120112010000: [102000001132113,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,111321314133000,100004410120102,111222214101043,102100044000000],
+        1041302012300000: [100002014200331,102012004000003,100411000030110,102041201121230,101000210303342,103000121424330,101012204221200,100300114310112,100202004324322,100143244100101],
+        1040120000222002: [100024234201100,100010234114300,100010044310002,100331200141014,130000420243230,100232104120201,110112204224100,102212234021233,110224102230230,100120411200320],
+        1003040010110001: [100032401030200,100021420120102,100014014210044,100022214101010,112434200202302,100310410140021,102001000221230,103221100211210,112400040102210,111110244102101],
+        1003020101210132: [114444244144110,114201004110120,114033234032101,100412114304000,103001020120202,101004411032102,101000020302400,102021014012210,102244221114031,112400000200011],
+        1140002103000201: [102001130220001,101410211021400,100004214100234,103000011400001,102104241412223,102002421442002,111131214422402,103100000210002,100000004200324,100013001031000],
+        130122010311204: [102030111100022,102120000310301,100200040430313,100010021220004,112040021112102,100010000000131,101034124001203,100000311031000,100220124220140,100011101020000],
+        321330000144224: [101000004210011,111230342220010,114010024011000,102000101410201,100004111024200,103302100140200,121103000144034,100211044311141,100111104002300,103002011432010],
+        120221230002203: [111222202220021,111432124443120,103423201200020,110332111334020,111042000000020,110000001012000],
+        132002410000033: [110243234240200,101301014221122,114110200212210,102041220200010,102130000312121,100400122201222,110231210001113,110012130410040,103210034021301,100104101200201],
+        101101010210344: [110201201211024,110202000000310,110000010120043,100422314300200,102403404004110,102141410230020,110020001224021,101110020013040,101012410301010,112100000200031],
+        202300121000400: [110320414420310,110100100101041,100420124100211,103010211222002,101040120320230,110013021300010,101043234000412,101220000040002,100422001002123,114010010010002],
+        222100300214200: [110223010013204,102230400202000,100000121040140,102241330244410,100330041000221,100342011001201,114102100034220,100044000103202,102023020203230,114110200004041],
+        1100013000421002: [103100030100010,102013110201200,100042000102010,112000230220102,102013000202010,100200001210240,112010022302321,101040224003400,102304111101041,103204101402321],
+        103000012020402: [100404000022030,102301121100200,111131004101000,102010300200001,113003022402221,114400242311000,102201102021043],
+        1000201230301400: [100021104340400,100003000410404,100230404343341,102002301442023,114200322333401,102403001400101,112000134002211,100000001020020,101221022120042,102034200222010],
+        1023410200200310: [100040300102020,100012230204000,110131214220303,110143101120300,101101200311102,112401402023020,103142104001331,100200204123011,100301400040120,103031120143010],
+        1102103311313110: [100000201020000,102030024112031,102401011401222,100002002212000,102114341341012,111420200002021,103421124042304,104000102100004,104021021224211,100100134300302],
+        120200232204041: [111441300003100,111211414134201,114200044000012,100140101203122,101000121143120,100411310430002,112401102010230,111003000021043,101020030300010,102242011301200],
+        133101010301002: [110101231202300,102023324010020,100130444102110,114000004103003,100001204342232,111131002212014,103010304012101,102210044010110,112000404000001,112000001121002],
+        1002032043002014: [100004101032202,112100002011214,114401022311200,114020004020300,110114130114210,100004321021120,102300420220003,101400211012100,110012112003243,102104000213123],
+        210300102002144: [104244002023000,120133001040211,112200431102021,111320124130040,110000110000231,100142041012023,110000000411120,110302100010342,101301030313022,111440222100012],
+        1000100104404124: [112213000200301,100003224334120,100404224300012,110204130004030,110202120003032,100322004314021,102022010220223,100404000020012,102343301100440,102410434000220],
+        1042412021024000: [101240220300022,103011431401300,100022000410041,102040300241403,103020000102011,100013011020311,114021004100210,103000310100320,102103331400000,101040421033204],
+        1421000230400442: [102200004120034,101000024002230,111001200003214,102100021410210,110012020021204,101001420312100,100022201044101,102200010204000,100031000413030,100130241010201],
+        1404022130033110: [114032104100141,101213114040141,102210101002412,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,100002021033103],
+        1210000442011122: [100000044240301,101140021101302,111120224100101,114440120000030,101023041001203,100211400140102,101010040320111,103023101420104,114300014030021,114000010041302],
+        1040120310344430: [100004214303020,131001224202110,100100400113040,131100001014001,102211122121042,114020420021403,111000014110301,110000012130411,102213244002203,114340224031221],
+        1001130310002130: [102001404012100,102340120222440,102122214131011,114223204100010,111041202200140,100023031000024,111300400002313,100023014313010,114021040010311,100020004101012],
+        1020001131220331: [100020331001310,100402010022123,110200131102200,100430204220020,104110241240001,110011242202000,102201012022300,110000421302031,112131442302432,103202111411203],
+        1040212410000200: [101033101002303,102001104010010,112002030210041,110002102003311,100041130040040,111000030042302,111013004412334,110402410002301,110023032002000,101201010301001],
+        1111013232224020: [103011041410132,100102134031030,110233000100021,100112104301200,100021242211014,101001210201440,101110040002210,110211104432213,111401304441341],
+        1000010210231030: [103114204002100,100112011040011,100401024300321,114230004110101,102101004022104,101232104042101,100001101033010,100000201022420,103000011403101,100100014302013],
+        1100010300003000: [111121100010021,110310034424102,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202,110043400012000,100010020101222],
+        304410010232404: [100114004100001,114102300004024,112102201102030,103222244003021,102420011111224,100340114211043,110232020002221,100033001220020,101100120334014,114233002340141],
+        1020040001002013: [100214104301120,101002000321201,114300014030310,100130004300103,100040004331010,102320234112041,112420030202242,101001424004240,112321101102000,101401201013110],
+        1102020022034142: [110400010001201,112012002002332,110412010002312,101004414000144,100143221000221,102000214001143,100312104100320,101002224000124,101022110304020,100104104002111],
+        240012020420010: [110013030403023,103010204010010,112003002030002,110401231001202,101031211140304,114230110212040,100000034301140,102111011142022,114132142312022,111210404410344],
+        140132113010222: [110330400010040,100101231004020,110010100022010,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        100301020102120: [110202102121414,100110014103210,100041204331000,114012032240012,102130004002131,110143020121321,101413001100003,110130020003201,102414231403301,101402211011032],
+        1031020022320001: [102021001132040,110200400000020,100032201024101,110203131211112,102301004110004,110402420402001,110000112100402,100002204340200,111140000000000,110020041310021],
+        1102000101201030: [103124001420200,100220210034042,102401001110000,112011300223041,102002001133122,100204011000221,100040020103014,100000201032240,102031010200002,101240204232402],
+        1120222011041100: [101321001000010,101010424210144,102203011120021,100130014300042,114034400040402,100010100102032,112010344023013,114002002300222,102104000210330,101401300301000],
+        110010000102200: [110102401201204,100222004320102,100110004103122,102200130202201,103020200141000,102414034040100,100212030414010,100000111034100,103132114002002,100412200002013],
+        1000202000424040: [112102202040000,110100104404110,102110042001043,114100002204212,102003000212104,102000100220240,102030204000041,102110021341014,100210120430200,110203221112042],
+        1023200020002101: [102010011411233,114004322320200,101030114211022,100403220020024,110033124420110,103102100122414,100121034230014,114322002322044,112040200210223,112002142310023],
+        1021000100401030: [114000222211300,102130040230200,114030034013200,102303214031001,100001010101032,102212241110430,101124314020402,110130402140002,114432002322240,101402104020302],
+        100113200442214: [103310001400000,110042014203200,100033304311022,111001210040344,100122401023041,100131014232113,100221000430010,100400302201222,110204020000322,101104301110011],
+        1020310211300232: [110441234224400,103100014031411,110000300424304,100032121024110,110013122130200,114020204102020,103121221400012,102022400211311,110030400004330,102004204001111],
+        122011330001240: [103000004012003,112303041103203,102101024022111,102020231440400,102144200210031,114030304122412,102121104130242,114104220000003,100112011040312,101013200321014],
+        1044033110002024: [102010244010000,114430412322343,114200034110031,100000430014301,114423002314000,114040002210432,102214020242110,114010134021022,100010040122204,103314044033003],
+        1103102304021202: [110000222102001,114400012323303,100100400412043,111000000020420,114320132322101,114320010000123,100021044312310,113200212430221,100010020023102,100000210000040],
+        200231242112001: [102202310203222,114404010003320,100042001020203,114130210231020,112114324040000,100004410120102,111222214101043,101011211003002,100000241000002,101001040304214],
+        200331011000030: [100100331000022,114222040214020,102000111441024,114240000000041,102032000223300,101013024000102,101000441140230,111300214121201,100100030402001,102400400200100],
+        1022000100401212: [110010302000004,110410000104042,100014014203233,111422100034314,100102001013034,100000040413000,102030414003000,101342020314000,121310232003222,141000013100220],
+        1001041002002004: [110002302010012,101212001204031,112100232040011,100132034104220,112032410212442,110021233042220,102002200222041,102404414041110,102144044001000,101013211000001],
+        221102021000012: [100000430122100,101200100304010,100000001033001,102020200220310,100124100031200,101010200321022,102000231122032,103304014010000,114020002212200,112402002010210],
+        1004212300002131: [114000024100022,101022004214304,101001231032003,100043420411130,101001020322010,114112244122013,103310220113140,112144232304210,102443421400110,100043041020120],
+        240012400200230: [100140200020242,100004120021240,111201022223123,100131101201030,110001020030002,111421014442003,100100244002230,101010001000241,102000221100240,110120014401401],
+        302210220143200: [102123220230210,101110004021320,102201230200104,103012101401220,103001334010240,100214324104012,101333201002122,103200021404423,102003114002001,102013010220212],
+        1102200224120041: [114012304010103,101232404040100,100044000201201,103320304021024,102102020203131,100000301041003,114401322310000,101110404001000,100000000101012,100043204100144],
+        121014100100044: [100020011041102,103022004000010,112110201100113,100412131010010,100130024000300,101411201111042,112122234040200,114122100211000,101101001110221,102302400213001],
+        1013221232224201: [100203321001221,102310400244210,112111040230130,100004101023023,103010041241404,110333010011034,110423301004320,114000300011121,110401321340320,101110140302324],
+        1121100201201012: [110202032123210,111122004100020,110412244220110,102411314024401,114001002300430,110101230100001,102200034024120,104102130014402,110314042102142,111120122242010],
+        141021101412421: [111302020010000,114213222330042,101300221003002,104100212101311,100000121020303,102403004020102,110200220010220,101000001001114,103303021404201,100020010420242],
+        1040412113004002: [100014100100001,102100004130301,111120004100414,102201101122100,101034024000101,103340410140122,100102114100420,111012202111021,100103144302200,101414100300221],
+        1123140233130000: [100121230031032,112000431120410,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,114013124030022,100013200100011,114104200220022],
+        110020043303032: [100024000110221,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411],
+        220141021000201: [110442104221030,101224001202324,103102134001111,102011310202304,100002301040000,112000132001414,111124402243200,102001331441012,100203014121400,110042002002040],
+        121044040131204: [102133011413110,111001200041102,114022424102243,101223020300040,103111420110210,102034324000220,102022400203211,101230020303000,111340130010314,101214240300041],
+        223222211002011: [110040102001121,110200321303322,114032024012040,103002041402004,102103030210003,103010011401200,114121134124014,103013224034023,100020014210002,100001421042312],
+        1010002004220233: [100004101032202,112100002011214,114401022311200,114020004020300,102420400200000,110114130114210,104200200001200,100004321021120,140243003020120,100003040102022],
+        100002100000004: [111030212113431,110001030120020,103222004032000,102233034000002,112130004021000,100100200021431,112101202012010,111212024101031,101013040300032,102112314002011],
+        100000201101100: [103012034041202,100100204100022,103130031241103,103234031200401,114011320024214,100233001000010,110322311300120,100204431000210,112100204000103,110022040140021],
+        1022102240321112: [103034010121101,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,100023014313010,114021040010311,114140004123122,100002301021040],
+        121312113301020: [112311011101001,100210201001001,101100001101401,110100124402042,111120402212201,100101021021114,102120404134413,100210010430242,101411001011011,110040212000010],
+        133122111020100: [110021000410432,100042304102210,100013030100002,101010010320112,112000021122010,100021111043012,110124041140000,100010044101002,100001000100403,100020124100010],
+        230330000200020: [114002104014300,102000311102212,102010004040000,112433112020200,102231041120104,114132420004104,114100110220013,101431304024200,103004021430003,100040404202000],
+        1420420332402401: [100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010,100004001000211,114230112330402],
+        130022024022302: [101001400301113,103101024004200,103024000103302,103300021402104,102014111102023,102102024000001,101301014220002,101012044004042,112410300200001,102020304000321],
+        220002202343040: [102114340204022,101000011030111,1303043020124234,114403402311003,111143400421100,110221310000130,100223331020012,120313211020000,1013001120112020,1311314200100310],
+        1143000013403000: [101020204214020,100131144232400,101001004220021,110232241101002,102104101340430,111333020000020,112233010221200,114020020001014,102201401001104,101003200300401],
+        231323022320340: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,111212114131222,102140001441301,102223400201104,102342120222031,102221010201113],
+        212311220313403: [103300121401234,100122200020013,100004004210020,102331104112002,110121112010004,114132002200241,102330144110211,100404000020300,110214202124100,101200004233120],
+        120040001042420: [114343002322014,114100022342130,100013024312024,111012002200101,102102211140013,110020220022010,110210020002243,110121220000022,103400100130300,112400434040004],
+        1420010032000210: [110000212101040,110301011234204,110021410020203,111120002100412,103330421400224,112024232302040,114013022304040,101023410321122,102021311100042,111000304400311],
+        240402440400100: [110111032140220,100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,114200022343003,100024101022010],
+        111100013020240: [101000201031101,131204100021112,113003221014312,103440324001431,123400040222113,103102104003010,132220204100102,131202200011113,102044400022000,112120140231000],
+        1004040110002100: [101221121202421,110020102000133,100000204342022,100001020012120,111042022141200,101441101010020,100100241020020,100002004342004,103010330100320,110113042000320],
+        1120212202100110: [112342210200100,101021020331240,100020400003003,114100234000201],
+        100000000140300: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        102301020111410: [101022014222024,110100120400020,100032000101014,114000024101202,111311002224001,114030000030012,100032134101100,112010024023002,114231032340010,100000010202201],
+        200000200033000: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,102002020243020,114002002300201,102040021121030,102102211140013],
+        1001304001303142: [100000431020101,100244100032320,110010212101240,104104001243020,100032040000331,104124102100301,110002010440412,110111420033313,100201310000404,103100200103020],
+        241003123120040: [100422040021304,102000024011300,100021320123031,100014041042003,100002010413410,101011210300000,101433010300204,102114321401000,100002414201103,101002221140440],
+        130210200223122: [102020314012030,101002100323042,114110000002010,102110300210002,100010200101222,114004000020012,101031001032010,114442102310324,102324400243001,100440000030010],
+        121021240400431: [101043224001442,110041100141020,101001004002100,110300214430000,110002001220310,111331104131204,101040204002221,112200004001330,102300121100001,110421102110004],
+        141422230020000: [102230004030112,100100221012100,1002022012411300,214021333002200,112102000202302,103013200104400,100130401022113,112001421111242,1011001024420302,114112402340003],
+        1110103102004001: [103204424022010,110304304420001,102110402001413,102131334020220,114210024001201,1031024222000122,200003020011141,100020111230000,114102010224000,114301012300202],
+        200000010033000: [111320012221132,102302144110440,102143202000400,111020002202333,111130224102101,101321311004010,102110241342210,100002320411400,114201000004122,100143034304100],
+        1102030130400422: [100000044301222,111012034402110,114221004034110,111100104104202,101223041020020,102002204000124,100011230120014,101104024002242,110133120011001,100400010013033],
+        103242023022021: [100013400423030,100033100421220,100032221044041,112210034000434,110131142113202,100030011041024,100011114313403,111010234110022],
+        213010221032130: [114410024110002,111200210001023,101101401020424,114030220011120,100002200100100,112410110201010,100020000120134,112422100200404,110202001212002,110001014204010],
+        1022203112204104: [102000101130132,100402412200004,112040100210110,111201210000411,102204311100014,110213331312003],
+        103324010102300: [110114001202122,103034031400131,100001010100220,114002114012041,102000004012011,110101100012002,110001002004240,103322000112244,100030220002102,111010024401332],
+        1030020201140321: [100032004200002,100020241021124,112342201131331,100010200414111,100121044230002,112003442002011,110010022132422,111000042200101,110043130440321,100244341003000],
+        1000112000102220: [100400210010032,110022030110040,102011211321000,102124210200120,112112004042000,110010144200414,102010112000301,101023324003111,102330021000022,100000021221004],
+        140131110100120: [102231102020200,102120201140110,100331200141014,110112204224100,100200011002042,102212234021233,110224102230230,100120411200320,112401344040043],
+        240420400202110: [102212300202110,100012120201211,100024414212001,100000014310020,100022204300002,101014014211233,100412120433120,101010100312002],
+        1012000100224014: [112003001133011,101002240304011,100201134100140,110034100040021,102000221032102,110213002132000,103010000110210,102022201020004,100100424030003,101000131030120],
+        1014301024113321: [110212012114431,100001140020000,100012101223021,110031301200114,114002020044120,100021004302202,102202200240222,114102010220042,102021301441201,104103102103201],
+        1000200001222201: [110003000042343,100020341001100,110110414402000,101100001100404,110011000043131,100121214300203,100022221044012,110312300010200,110001120021021,1020110000101002],
+        302000010323001: [102143124001400,100011011020440,101002121000111,114023314013200,100000201024213,114003422304142,111001404112102,102010201122000,114011042300202,101400031014311],
+        213000402300202: [102142221342202,103043404000202,102420000202033,101012400343401,100020101020404,100002411021201,102110010210330,100012020410400,111111102240001,102122111402420],
+        114002013020030: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        1104000001201040: [103142021211011,313040122221220,102121030212020,114411024142133,103004201240410,100022024340200,110230142122333,110010002002000,110204012111004,112311411133302],
+        111001000401004: [110002212130403,101042411000122,114101002311013,100133004000124,112440104042121,114200124000134,100224210432130,100120204234213,100003011231420,100222200002003],
+        100021020102200: [100113220020101,114031000022030,102014002000401,103103241421322,114121012340044,102104304023201,103310300140324,100002224244002,114310200002400,103211220100010],
+        1003012121103120: [110332202020000,112421004012141,102224410201003,110030021010001,112001321113132,114224034000310,102332101001000,114002100024002,114424214144024,103101440121101],
+        210212004000200: [110002420020000,100002210401034,112011340213224,101013011030413,111301042202102,101421041100223,102000111122140,100001210000030,101034231002130,114220204031100],
+        1031042010002130: [102004004002321,102001010240202,111301022200213,110310012024144,114213002341424,112031000230000,112012240221124,100440310030003,102344100222410,110431020000020],
+        1041440213142030: [102301401002404,100232214222204,102012004010000,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        110310001230122: [102311004012010,101020401033332,100012001023022,102112012004120,111321000002001,101210011042021,100042100003104,100004020021344,112420044040112,100100000000042],
+        1002022011231114: [100030010422041,114003014100103,112421112010232,102010420200220,112234001100044,102033001100221,100210144220030,100001410012241,101003004000010,101001011002301],
+        100041031024132: [102201444044432,114111140220220,114004100011010,114302010000013,100100124003241,100002310120001,100111014231402,110220022111241,114100404000100,100022024100312],
+        1100111000121110: [100200011002200,112001112002104,113134002412222,102100311320110,110430002112002,102240030230010,110030010120002,110242024430440,111003212230033,111020404402004],
+        100004331000314: [100002044211310,110430122111140,104012302104014,102320221000230,1323100312100112,242022202122014,103014004000240,1140000400200300,101141224002302,111101144404022],
+        101014020002002: [114020000020001,1302101004142102,110001001100001,201014000241421,110400102312140,114223013001001,1002000010441103,100111204004442,1300011022000001,401400200400300],
+        114000140411200: [111110232242220,100121104300001,110002041102000,103032040110110,100110001201401,112000042002001,100200130430232,103022101412303,103011044000000,100101124002120],
+        233020400311200: [110414402020021,101000034000220,114312012300300,101012104210042,101430001010032,112402012020000,103322241400404,103210120100143,101010024213100,100040000123130],
+        1124242430341002: [114400214140002,114024022241001,111342314121314,100102014230000,103410004001234,100402022200304,102242024030234,114012434103044,110001001320030,114222010210204],
+        111202040214200: [100240000032004,102000000210211,111010204401023,103142444002002,101200010300001,102211300204221,114420232314210,100301004321221,100020000410313,101220200040320],
+        103312000220111: [102141401343022,114131304142010,102110314002123,101100020300101,100111121000000,111131124100300,101020204010401,102040111124412,102113100203200,112310231134114],
+        1020111021110122: [102343230224321,102112231020231,102320000240102,100042144200000,114201104111034,102310140240012,102030304001101,100020420121003,103020004011414,102102201340311],
+        1013402100221003: [100000014102130,100022044344000,140104013031303,101101001020004,110010404413302,100011144312002,110004001104031,100013001214140,110002000040202,110110424221134],
+        100002202300342: [102021001132040,110201201211024,110402420402001,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412,110123004401121],
+        101322213042004: [114024312212020,103104001440422,114220302314020,112030101110231,103200024030232,111014024112203,102013434000000,101102411114421,110000020042112,110231004242101],
+        1022004104121240: [111400124420002,110020402002000,101033124000402,102401000201121,103310421404111,103000020120303,111013232200403,100112044024030,101202024231020,114100042311200],
+        1041110400020423: [100200024104410,104100402102320,104133012103021,102200011100420,110020231100021,102102304004203,104132311242210,101040210312111,102210244040143,101100224000200],
+        130033111010012: [103012011434022,114103402201140,101313004232122,100001004301400,100031001020001,102111420210110,102104131414203,102203314011321,102000204001042,101231220300123],
+        103012141104024: [102113300230021,100010044310002,130000420243230,100232104120201,114221000004311],
+        1240030323000021: [114031022302044,102031011441221,102021201410011,114103020221100,102002024000132,100401001011010,100212221002300,102400004021004,102240021302000,103202140103403],
+        1143132040003030: [114030110041300,103112004030003,102300001002144,103132424000410,112013102004422,100400220013232,110010002000100],
+        1010001102001304: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,114002002300201,111012002200101,102102211140013,100311314310000],
+        212130202420022: [100313030142202,101221020300020,102013401100100,112210102030020,102043030202102,102300014110023,114230024111000,100402120031033,102103422004103,100010024202200],
+        101014002002031: [112000001123004,103400100131022,101004141000312,100010014313003,114100212210001,100022230100202,110100020004310,114143200211211,102002001101211,110112022120231],
+        240100123042024: [101042104010000,114000122301411,102111002001230,110410000002004,111424002101030,100414231011020,114121110030203,100110044301024,111100040001003,100042404100401],
+        1424233242210312: [102041310200042,110320202023400,111431110000042,110301030010140,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022],
+        311001100230040: [114040102210432,100034004211240,102140121410131,112040200233002,102113111343110,103234100101221,114002220010031,103103311424020,101030010320024,100001010412000],
+        122322003230020: [110141104201032,103200000101342,100021000101421,102103034000310,110011042100122,102001231131043,112000000212221,143304200441210,101022134002430,112031020230410],
+        1000020340012002: [112124004022322,111300210014020,102103201320411,100100031043410,101033214211000,114001100024243,114100012204104,110141112044000,100034244303010,102003104000032],
+        1000002031024030: [110202012100020,102303010241010,111342020011220,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144,100001221021031],
+        121212143303410: [104130242103012,100002131024210,102000101132400,102412101112121,112023140212112,112313301100030,102110244000130,102101031412121,102313310224103,114000312301300],
+        1012030100120121: [102301004011202,102000201100400,110034120023130,102101004002000,100110010410230,112121040200102,103000101240211,114221040210200,100134044003303,110220010010120],
+        102303023001302: [100032041021210,110004301222000,110414300030001,100030020011022,114310000001232,111202012222402,102040041320010,103203401400132,103142111441040,110104002010100],
+        1000100140043210: [114443330001442,103101041421200,102222321000301,102040244010100,101204444040122,114031030041040,102114240204013,112104222012023,102031021133300,100011301043341],
+        1000000230032042: [110102224201130,102104131412412,114020312300021,102400204043012,100000000200102,101011011000320,114420200001202,102100200233123,101012421000011,114023004031001],
+        224400120211044: [100002030102221,110414000032411,100120301022212,112203100201021,110000142000203,100013220400031,100200000430401,112203424001001,110310322100124,114000010010203],
+        1010240040002121: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,100103104302044,102141212000200,102042000222002],
+        1400101021431000: [102000001132113,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,100004410120102,111222214101043,114412142320040,102100044000000],
+        101310324040001: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        110013423010002: [101041310301004,110021122100000,103001224014142,114431224113420,114033012202420,111211002241330,102012000213011,112040004000012,112410214043412,102113201401300],
+        1100423401003000: [100004221020020,100013214101120,103321300144024,103241114031030,100143001000202,112040222001200,102010304012020,103131032021030,100004124302203,110200231314311],
+        101000020211200: [103111401420301,110124010031144,102140230210111,100011210412002,112004431132202,114130202311020,112120402013111,100434444323300,110230112032040,114031400042021],
+        120011030120000: [110204034240010,104102030012121,110000011100204,102110231441040,101021111000022,102100111413012,100113214302002,103442014000100,103021000144000,103132014002131],
+        1032020012230112: [110230000000002,110220301202400,100004414101224,101003140322000,110401001002400,102002001130001,103012000100400,114201142324042,102213401111223,100040120000031],
+        1110112230110132: [102323304112342,114003222201103,110240020100212,100022204300000,112012211120102,100101040400110,114221002340120,101002204001310,114220200000002,102324004112400],
+        1002112332100123: [110301011234204,114211102321011,103330421400224,102000200201422,102412004022002,103220124034124,100032204200023,100023211030203,102104301004310,112000132302101],
+        1040000021224110: [114040100030400,102301011002321,101012011022300,110003301213002,103412224020402,112033311122000,100210001002210,102110120202141,114241032332313,112120201101200],
+        101122020023011: [103122114004113,102242301122200,110030110122402,101344140314114,102100201400122,100011111022300,114032300011302,100234004033234,101222221020440,100230020410200],
+        121012011002001: [101210144014403,102111420233012,110000020022324,100020231201012,102210424042300,100101101020002,110030420410024,111002012202324,402104002030100,101032040320334],
+        1004000430310231: [110213002132000,100311221002322,102022420220121,102401214020202,112102204024002,101000131030120,100001301214030,111140000012120,100410040430220,101041404002020],
+        1021311102043111: [104110212100123,101200140044000,102214014010030,100021230411014,110024000412302,102331104110040,100002134300030,100130414300000,112310002020302,102002201413004],
+        240011130320214: [101042411000122,112041402312040,103023021244000,110104434402221,100224210432130,101002024012004,101421210302410,112030022300112,103100020122200,110241130013040],
+        133402201020122: [103140014002031,112003020220120,100043024210301,102014001130100,103400201200000,114021200012000,102422131400024,103210304000030,102340101000041,111201000013222],
+        300134100002212: [110224314430000,102203301123001,103100134001001,103210400110122,114030314123101,101201124013202,111322012202310,100400201010000,100010321043134,111220020010043],
+        300010200313412: [110202210102120,114001004100003,100041014102004,110320022101120,102131421000411,101412030302001,102222021124112,114000040031021,102400001110113,100404201012020],
+        1030111104004221: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,112020012002031],
+        100341200042220: [110000202003120,100130220400000,102312300220000,112221024002232,101020111140040,102041111130300,101042200303012,110401202021231,100240204101020,113020012400412],
+        133102000010222: [111130224102101,102322020212020,114403304140021,102103021340120,100031131042030,112201422040000,114021040001000,114024130031020,101220201000030,114022300011000],
+        130044324004400: [102303110220130,100124120011100,114003004031430,100220304220004,114110000214110,113004001021230,102411000200112,110332432020400,100120120402022,112110322044020],
+        124021132014040: [114021000012310,101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,100400231000200,112143144020012],
+        141004020022004: [104140321242022,110020004422304,110310000104014,103204301200000,110122022041331,103010311410024,103403411212300,111102412112040,102230002023220,103012041241100],
+        223001001300404: [102000140200220,114233210000201,100002001024100,102103130221330,110011002100114,114102220033034,114004020020313,102022421132024,103303041402240,100002121021022],
+        101211101320010: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,114004142244000,111212114131222,102140001441301,111012030022123,110000011220204],
+        1003120112012004: [103220000100202,103122224034122,100142011002402,114004200021000,101302331000221,101111440324120,102302221002020,102101114000401,110102002120401,102124301120200],
+        1114204043000300: [110312332102012,101404204001310,101003100302100,103000331422023,101400101100001,100100020401310,101040234210040,102003424021402,110021330033102,101002034003411],
+        1120100200003322: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1124101002002300: [102001404012100,112004202302034,103300004021200,102122214131011,100023031000024,103230134011412,100020004101012,102402000201011,102311011000200,102021021101204],
+        123002100034100: [102422001400000,100301224310100,103002104012101,103220130211414,101020220323012,100012324202240,112101102012030,110003410100312,114000022300301,114000000021100],
+        1003011202213222: [101011004212201,110032022002020,100214230430124,103031234000122,103230011412301,101042001021012,101100104002023,100400000010020,100124021201021,100102001000000],
+        100130000013301: [114020024120310,121021032342113,110220210110004,1122204031101014,100003204214031,1100220200041014],
+        1001121021323132: [110112102211042,114200022300033,101400220303133,110431442110400,114011120021012,100100111041320,101420010300310,110000004210112,102334001004100,104100001240034],
+        1012100044011013: [111101010010203,110110212010011,103120101441202,110011000022102,101002121003112,100004104210221,102202410240103,400014404414011,100030211040004,100000010101402],
+        133020140000230: [111102110012000,101001400301113,103101024004200,101000344010212,103300021402104,102100431342023,102102024000001,100104400021023,114003104032034,102020304000321],
+        1140232120001101: [102000144014000,102100104002302,102120010230031,111202300010010,102020304000242,101232321020000,110002400023342,100120044233220,103402201212100,113031010134002],
+        132103142201004: [102300324010203,102100142002204,102040011121100,110113004402201,100030024303023,102042204000300,100001134100120,114023214101310,110301232000100,110102400013020],
+        1100412112100411: [100041200010000,110111001300044,111000002202324,104132100011024,111211010001300,100113434301241,114030020020301,111014014401303,103210001422303,100100000022131],
+        124031212031103: [102110104004031,110130100010331,114004004100022,142100000024013,110022000022202,114300402320043,103110214004242,120002222420113,110404044220000,101010211033230],
+        1140002323210032: [114000102240100,103200021401030,230222010240012,112102121020220,130300100333301,100020120024010,112042042001002,114102002344100,100011204340230,100202400002411],
+        1141001143204003: [103210400110122,101112020300011,114104302341000,100400201010000,100010321043134,111220020010043,102100021342024,102244400201444,101010001000121,101232104040130],
+        1030021010204101: [102020044000030,100002001022412,111202320012012,100003001020010,102442004020131,101011124210300,112101422301001,101301220311200,110040014213300,100320421002220],
+        1020112001300220: [102000020223013,114040102301100,112121032014014,102310111001210,100020241043022,114413232320000,100100001040134,102100121341102,100002004130101,100301024310020],
+        110100401302202: [100103200020313,110000431213211,100414024102342,101120120330222],
+        1003232100422034: [110104231221040,100042110122000,114400322311044,101021021002110,103224401422304,112112122012022,100401140033104,102120100212020,100020114200220,102411130201102],
+        1004201300020013: [100001300102001,100220101204311,112033124022002,101013114001130,110022134210202,110110102042312,110440211340302,100001300000022,101004104010020,102001014003100],
+        102012021000021: [111101122102222,110034004420011,103000114001000,102242024030234,110141201000200,100003344214000,114400300000221,110314014422011,111022214113044,103104024000023],
+        243300413202000: [110041030411301,110001041213031,103301210142043,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002,111202012222402],
+        243103020000241: [110020402002000,102042221101230,101033124000402,103310421404111,102101134004010,103000020120303,100112044024030,103240100102101,101202024231020,114100042311200],
+        224044330400040: [103102101422031,102130124130100,112404002023002,102022020204430,103214021400010,114003422304142,100012401020212,110100022010014,102042231130200,103144220102102],
+        110124302311002: [102010011411233,101030114211022,110033124420110,112002142310023,100040101020201,102102240210310,114231220004002,112020300241320,110410012020110,100004424230021],
+        1100013010001240: [111020044112020,102004404000111,100020040101021,110100312012040,101104312040120,114044400021021,111412122101012,100003200100331,100000124200111,112220434011000],
+        130010402030010: [111102440020002,101202001024340,100004000102302,103312010113222,110130022140122,112002304004203,100034110413403,101030040320021,114104000002301,102232110201100],
+        1000102120101030: [103442110132330,102111310313001,100203010434220,102140322001242,114023044020211,112013124020300,102202321114004,110401214221203,200200133341004,100242001200000],
+        1141200320010130: [114213002340022,101400104042212,100000021022400,144200203310100,1003022312322100,102001244001224,114030214020000,102023422000000,120101041020020,102330204110410],
+        1010204301300213: [110200400000020,110203131211112,102301004110004,110021100023210,103122000100403,100002204340200,114103412201420,111140000000000,110014300041302,110020041310021],
+        200340341310214: [102130124130100,101002121000111,100000201024213,102022020204430,114003422304142,100012401020212,111001404112102,101400031014311,102110230200201,101240404011020],
+        310020203111444: [114120030223400,114423312314004,100340100424220,101202014010412,102144031403200,100041004202111,342003122142040,100243404101011,110421104220200,102322124112422],
+        1000221100000124: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,112004021121002],
+        120242012440140: [100111334330000,110023240021020,100300433210004,102240100011000,100400213242110,100020201002004,120021202100230,102320120240200,100000012221111,110102301010411],
+        1140023440311401: [100430211011410,110010340040012,111010124402202,110211020121140,100020244310231,101000030321102,102110320210011,114221234002100,100033100101240,102420001110301],
+        212102030132222: [103312010113213,110020240022142,114401212310021,110131022111320,112000401132020,111302014120120,110013034211021,103001214042003,101020241021030,110020001300000],
+        140241400202022: [103010021422042,101110000010122,102100404000021,110323002022000,104123302100200,100103414300020,110010121333141,102402034020001,111202324134000,101433201010200],
+        130002021100101: [103003001400110,102143011343003,112022001120410,100341410422102,111002012200131,101400040330021,112210001102424,110101321301120,110001032002011,114102012344003],
+        1000300014100040: [101020044011003,100021014100124,100122040012210,101040000300110,114202124000200,112041432030144,114000120020004,114241110000102,102140214001144,110200202121001],
+        1142021241010010: [103000011402201,110210134244100,102121041441000,114102022200000,110233010002020,111203034103022,102101304000012,114020202241323,110004402131000,102132421000100],
+        1121140022033000: [100121230031032,112000431120410,103042024040104,102304104110001,102000200200301,100104211044110,110200101200402,101342300314204,114241222321321,114013124030022],
+        124402000221041: [100000044204004,101020224210014,114202244101041,100122310020400,112423102010012,102112022001414,101212214011134,100001121023210,100012101020002,114204120000200],
+        1040033030201302: [101230111024130,1112100200412130,1320100232411004,100121120102303,1020024112001010,120100010104132,423203002400042],
+        210001020023030: [111102104100334,111210014102030,110401100001104,111440000000202,111200344442041,103141001240021,100001401034130,101220200304110,110420014242010,110403102222001],
+        1101432000001304: [110230000000002,110220301202400,101003140322000,110401001002400,103012000100400,110210024220020,100401424300314,100040120000031,114200142324000,112100322040040],
+        214414123000031: [104132340011314,114012040020310,103132004002242,110000212104130,110200200004002,114131040224332,100123020032031,121002023311103,100021124203441,102022411412401],
+        1002100411213122: [100422000031421,101214104041040,110104231221040,100102000010243,112410034040040,103031410122401,103101000100022,100040021031201,103000300120001,100020141044111],
+        1002400232420012: [102004300220000,102010212000134,102110021341422,114241022332104,101403020334021,100010001040104,110141020400341,114133102311014,102341204111304,103211001422023],
+        144212103223430: [110011414240022,111142010020301,102100104000040,100000144104100,100010044300003,112120224040040,103301410110110,112114324040000,102124031023100,100204104320231],
+        221340140432000: [101220111020012,111401200000040,102300122004231,101041204222101,100024024211001,102110001342114,102042444010014,102330311004110,114032110040320,111203012221030],
+        202331013000002: [110100100031014,114001002300430,110411130100013,100021044210012,102212034044212,111341300011434,100401304302243,114101212202230,100420001001112,102140400210434],
+        1000223001223311: [114041400010321,101002234002002,100000310102011,102220130204110,102331020242011,102012030220314,100244244322120,100220034341000,102101134030334,102103202002232],
+        120022010300020: [101121211101004,101114101012020,101001304001101,103000110142041,102002112041034,102041111020030,110022001201023,103101124003110,112401144042000,101222044204000],
+        1100030000444204: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        222201234100023: [100002001013012,114120220214130,100002200001011,100120001204102],
+        112310442004211: [111030124112220,110000230010221,110202110113000,100324114310222,114001020022140,110002242100100,114012004020230,110000104211010,101022221002220,110220400401033],
+        130013314023140: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1103040030102440],
+        1010224102021001: [101240220300022,100011000202214,102200130202201,102002020220000,100102120422002,100002010014040,100001300012442,100022000410041,103020000102011,103001031420203],
+        122430102020402: [220212211200433,110002144411414,100003024303000,101204110411102,102142302000411,103222440102000,102440420200031,110002241012102,100131100001021,100000100422002],
+        204103001102322: [100440031001120,102020200223310,103220011420242,102032012000101,101001400301113,101004201001232,112102102302000,102141231343401,101231104200000,100002120200101],
+        211130330201010: [101221414041100,100032424312011,101110301040312,102204010204023,103041020101400,111300402200003,114141024004011,110022341300320,100210301002021,103040000000212],
+        1113002200100201: [110041030411301,110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,110033041200104,102000221442214],
+        1010010411302200: [101010241003223,102000020220000,114412142320040,100003044100101,114012402332300,102220211122102,114420022314022,102234004010003,110204314402021,103121004002210],
+        1044002110020220: [100400224300040,111144042240304,102000131131100,110201002043201,102400021401101,102141201342300,102140210230000,102131211411102,101001004012413,102024244002012],
+        1201222201213002: [100110000410200,110120200030233,100132040031022,102442004020131,110031010430100,100432431000310,100004000014032,101014121024142,101001201022304,102104004002400],
+        1041121212311212: [102000221101002,102000431130020,103102314001204,103120004004010,103222120102031,111104404100200,114432224142000,100202234320210,102112400210210,114001332210232],
+        100040011201012: [101230002122040,101210241204043,104102040011120,111311120014011,100123011004113,100420001002101,102430121110340,102020121102120,112141104020201,102000024000002],
+        1100100120201300: [100301301000024,102020111324200,101044400300030,100100310024040,101024024002120,103212010100200,132224022200202,100231004331011,110203002102023,103442121212103],
+        202310400211312: [114200212322001,100401210020002,112210322040121,100402042200000,110001440041003,100010111022102,100220300410430,101402010301000,100000220111021,103140120112001],
+        101300043401010: [110101200032041,113402202420020,100000012212010,110041002000220,100040111030202,101142410330304,103110001242101,103431011210021,111132304100420,110433222223310],
+        1120000022102114: [100321004011041,110002342100014,110021312002040,111101042244210,110441010002400,110124002040002,103110314000100,110023410122402,114203104001000,114302200014241],
+        1002022101340120: [103203224022224,100143200421104,110213010400012,100123221201001,112313000202012,114022114010220,100010001043004,100011410400320,101112020330001,110102101002040],
+        1020421022112102: [112010032340022,114120304000212,100141410402200,114111202313213,101042041021001,101211414040000,100010031232443,100242024100000,100114020414244,100012404203210],
+        1400020342002003: [112012000220043,102414000203000,111101400022211,111320100000001,112002202000010,114001102301101,101010041003004,102000121442001,114011020020242,114030100040000],
+        1021420024210010: [110431442110400,114011120021012,100100111041320,101420010300310,110000004210112,102334001004100,111321424123422,100004000002200,100001140411014,101312014234200],
+        1410343201224101: [102242304042410,112032012004300,101001034002001,102000201131020,1010120030012200,101024411001024,221104221024023,100010410420002,102123332000002,112000034000041],
+        1021212301002021: [114104200220022,102010244010000,114430412322343,100000430014301,114010134021022,114102224104002,100040240003341,114422404110312,112140134003231,102403144000120],
+        111012320010012: [102000034011002,103204000110000,100001014340021,100000034312214,102103001340022,112032000211000,134402411001001,110032020020001,100002110000131,112021020220112],
+        132234122213020: [103040014000114,110012040030401,111020142230010],
+        1040111100100000: [111122010010414,102040404041112,114140030222402,103331304032010,100121311021322,112301120200041,111003302200334,101000200321321,102440000234100,103030100144420],
+        1130210231004021: [120402022102021,114400210002021,102010002000402,114201402332241,114211030021301,210412232040000,114030214020000,114022000013011,111232232222210,102230104030012],
+        1003220132012024: [100030204300220,101021334000222,114010122330030,100011024201101,111222442222413,110030122102303,103044001412002,102211124032000,110400200000240,110101301000001],
+        1444200133302110: [100101024303332,100013201020230,112300101101010,114301302323032,114200304000002,1300040101002020,123310121130130,1001210043013022,143442111023013,1022003020311200],
+        1022120000030130: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102,100030010102102],
+        101000000200420: [110020301220324,103040020122332,102020100243032,102012200202303,101110404021211,103110041442122,114042014102321,112003110242131,102112222001200,100011114300032],
+        1040030020032021: [101004200304221,111203102223243,114221334111220,100010034310013,114311400000224,100040101001132,112211132040204,102113232001100,101110044000400,102102021002000],
+        1123032011000000: [111001000020034,112011041110422,101410014021040,110001032010100,102242210200010,114422214113202,1100020120011024,112411210202004,110002421122010,102001200200221],
+        1024034310220010: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1120120243000100: [120101012430440,103102124000030,111000324110232,103402001200000,100400120022020,102120300203403,110323300004120,111102204403003,111401114423000,110010120020200],
+        112100410221222: [110002004410202,102103114000024,101101410010023,112041002002124,140343100002103,400200234320200,101041200320322,100020124204330,110200320000000,100001424102041],
+        1000100012210014: [103134014000340,104103100010141,101440004041120,111101222240010,100040210411102,101031214000041,100110004102034,114112020212203,102040140220220,114300132321233],
+        1142300113030404: [100022041030000,102202000200010,100010430202422,112340020203003,102443011400041,100010430022021,103032441431121,111300030040030,111003000041302,112434400204320],
+        1022042041011200: [111110214100223,100012000414010,101200020300410,100110224304220,102330211001002,114002110022030,112211110200310,102212141112000,100023020200332,114020204100242],
+        121221003240413: [101211201202134,103120104030100,102020030220200,110100440400010,110003434410403,111110000014401,100000004130010,101300204230000,114002004100140,102311020240020],
+        110300322300102: [102130411411444,103103204000110,100441301014410,102404004001203,114001024010010,102101224000013,111212204420203,114230020000033,101012004002440,103110400120002],
+        131134004004000: [110110010022302,103000431240102,114011004114100,110101140002212,110420000104020,110410140000110,100000401031111,102004101410420,110204242124012,110022301301002],
+        130232344011120: [110011011212100,101134030011000,103220211421421,110123230124040,131000001020102,100044130000101,110420001000202,100102110402220,110412310030001,114012022302022],
+        122201020003224: [110441234224400,103100014031411,110000300424304,100032121024110,110013122130200,114020204102020,103121221400012,102022400211311,110030400004330,102004204001111],
+        132444244300220: [102140014000020,103011020140013,110030002102021,112200401102102,110304200001120,110022042000121,111122104100001,110402324221020,102412021114100,102110004030420],
+        100240020000010: [100001044201401,103022120100401,112411042012210,100110444302011,102142140210001,102000202041211,100211004220330,100000304104221,101002104004003,114124004001310],
+        1023120202043100: [102104002004301,102144002001232,110000221223422,102002104001004,101440001104012,102441140234014,100411130430221,102344004014110,101120121103012,111032102202040],
+        1004324022323001: [111000000010022,102040001123104,100210414104124,110403022010001,112110001103200,100204004123220,114300202300030,103401140121121,112100122010004,100100240010030],
+        100230002202140: [104102202102142,100000401022041,101012310301211,101204234044003,122002011010101,103014134000300,112001002030020,112030200241011,112034002002000,114100202203044],
+        1422202204201044: [100310304310342,100010041031020,100042400001023,112402000200101,100020201221000,101010020301243,111010130022401,112140214000020,101310000314110,100013111020021],
+        101000000100031: [114210100002014,114440140000234,100021100420321,100400000020412,112230002033202,100401222201402,110000001012100,102101011123100,101440001100100,111210200002411],
+        1023401013100200: [101230002122040,111124004101012,101210241204043,104102040011120,114103220220104,102120004001310,102430121110340,102020121102120,112141104020201,101200111020111],
+        122041001000441: [111320012221132,102302144110440,102143202000400,111020002202333,101321311004010,102110241342210,100002320411400,100143034304100,114021002331014,100100104102112],
+        1020020021012120: [102001404012100,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,100023014313010,114021040010311,100020004101012,102402000201011],
+        100202040412040: [100043104240004,110002034200042,100001240100033,114100304002030,102100001340122,103414101212410,100424030024330,100123021223100,112302011102312,102400041110112],
+        1003022434000120: [100200101000000,103110431441100,102101324130010,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110,101400300300111],
+        130220041030320: [102200001120020,100004400410040,100004210400203,100002431220022,110300102021320,102301221102000,101012004001204,111411000030222,100040011020200,101414411104011],
+        103103120201012: [103000004012003,114000014014332,112303041103203,102101024022111,102020231440400,114030304122412,100023041030400,102014011102400,100020410124020,101013200321014],
+        1004022310201032: [110004301222000,110221000111302,110022140120012,110024140142000,100321001001010,110321302022203,100002204310140,110110210011002,110221322123012,100020320002000],
+        1120011002410001: [100034204311021,101121024024120,100102204231301,112201104011200,103020420121211,110341024422102,111031030040220,110024120430323,101403200302022,111400102104003],
+        122013003210012: [103102011422101,102412201400413,102201102000000,110022000442031,112140202302210,110001042012030,100200104102011,110432132110010,101420304041030,110040222132423],
+        111110310130240: [102231130213210,103214010102022,102000402041014,100043324210140,100023024211011,102404021403141,100003201021001,100122020011232,110002021121023,111102042213043],
+        102331242012033: [100104341010424,103142210104020,114400240003003,112203001103411,101022001002030,100212024121000,101104040302120,100010001032200,100221110101420,102441030231300],
+        1002301200031033: [102340221000300,101000130320340,112401314040311,100110020031042,102011004013000,110422102110221,100220124221000,100402002201002,111110004402021,101011014002032],
+        1120212202013102: [101201000300102,100100034002202,103102111210103,103420240124040,100120110111021,112121011101002,103111010120121,111134204101221,110241211302001,110140300034040],
+        1021003340101023: [110002302010012,114444044140220,101212001204031,112100232040011,100242011002002,112032410212442,110021233042220,102002200222041,102404414041110,102144044001000],
+        110141003140201: [110124012142001,103110044002000,100000000413211,103024214000000,100403110022202,100021031020121,100001104100010,101013004000002,103131021420001,111200230002002],
+        1024120002020144: [111104102242110,102210011101414,100002200410230,100044010200300,100003010413400,103334120114003,114032124013234,110112131124012,102143020230411,100440221001232],
+        242303322114230: [111001440020003,102020204001132,110200020010003,100002214100100,102120104003011,102100144001112,120020201100121,102000041441002,102120402000014,102000200210032],
+        1010342240120403: [102001404012100,1010400230221020,102302200210010,102340120222440,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122],
+        1144043310022002: [100042301001230,110002240134040,100040014310020,114000014100101,110031324200020,101110310331140,100300001003012,101430021010144,111210412213001,110000022201310],
+        1120001001311304: [110100120400020,102113200210140,100031021033010,114030000030012,100000010202201,100012024210210,100120004300001,111140214103110,100010201030330,114022232303310],
+        1403112003023002: [114400022321400,101302340312230,101000034000203,100200321200200,112044200243000,100002300421000,100202140430012,110200301210031,110000420020100,114304212302401],
+        302212402010210: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,114113104123200,102030304001101,100020420121003,102300040221403,100114021040000],
+        312003244021002: [103301210142043,101110044200100,102411000200000,100400014321101,112012020230301,100010101020023,102000221442214,103142111441040,102140101343110,102242000200420],
+        114400102222313: [111100114401014,110003112130100,110103011302220,102020440242023,101230000302304,100030021041110,103222010114132,102300121004102,100042024100140,100110004332200],
+        132420000000431: [112020200242131,110240024241203,102020204010103,112432120204400,103130044003012,100022214101010,110001340112402,100142221013104,103040421244210,111111014402340],
+        103200001210003: [100000241020300,111021030042411,110131011000142,100201134320102,110000302122001,103302031401001,110202012020000,110043414212400,111110004101041,100402000010424],
+        220414040300300: [100202030140400,101024130300401,110010321011300,142011423130201,102000401130243,114031212300003,100442230030000,114002132240212,111001122224141,100000220000220],
+        1044310320020000: [102144201343034,100430010431044,111020122230001,110111221000100,102100204000340,110330221300223,112020442310202,100023001030212,114344200014300,102240001302103],
+        1420020302042323: [110141201302122,100000411231000,100023001222000,101002124002220,100101004230030,102103012004030,114034000012210,101044004000132,114114004140010,101010241113102],
+        1012010000131300: [100122220023132,110204002043423,100032101220041,112003011121310,110110110133103,100130101220012,100400030022020,114302144020021,111012414402104,114122020031041],
+        1000202200021220: [100000144201001,114202202322132,100000011032020,102022201320204,100002111020330,114432200001322,101040404000121,110300230102002,110103032012200,100010004340042],
+        1040004023000010: [114200402332011,103240411403020,100020101031131,101010000323030,114200202330330,103101101440200,102142221401140,100000101031020,114000002302313,103012201401210],
+        1010223022000012: [103110020210000,101420200304000,114024102212214,102102000212010,100233404320202,102210004110000,101142420012223,100000004204012,112214024003000,114001410022014],
+        1120114042002241: [100020001044100,1340120100441224,1301223001003430,232020104433104,102330042000001],
+        132302002220112: [114110200030200,101012130310043,114001310043110,114102344121242,110110104204000,102010021132200,102011001411100,100001410411142,111010020021202,114003300023020],
+        100000120212142: [110021040020010,100001140020000,111011030004021,110013030020121,102001221100211,102100132000411,100121104300201,101220330300003,110132000024420,100011014130012],
+        1042404102220010: [110034300021014,101042401000112,110230010000000,100112440013034,100011014101313,110104140001020,102011114000320,100041001211002,114200134110042,100204304122112],
+        131110144032023: [111000024110140,102230100201001,110000401221440,102410104040240,112314301103022,100020004210021,102000222003200,100001040020122,110104101220110,110112211000311],
+        1010220000431300: [100321004011041,110002342100014,111101042244210,110124002040002,110023410122402,111204200002001,111200020004203,100141101040300,103000104042400,110000011012202],
+        1020310100100200: [111000022202402,100430211011410,110010340040012,110014032101430,104421312102244,114131014101010,102240214041033,114200322333401,103010021422042,100000001022401],
+        130012120011424: [110010130000004,100000331040124,102122022000230,101011200324311,102301011004011,112030040242300,112400002021310,114030310030022,112224304041202,111103044400100],
+        1024000412011400: [100031300002022,110210020002243,110210022120040,103002044002032,100101020402424,102201112000001,112211120202000,114211040011201,100020100423404,110001222202031],
+        200000201004010: [114010200011100,100102110412002,100000204214001,102013024000211,102022000220004,100012001042030,102000404000400,102004004004200,101002134011001,103440411210000],
+        124002021321013: [110412220102021,100300004310110,102002400430000,101200124200010,102143120210003,114310012300020,110003212104043,111011022203010,100001000100020,103211021423243],
+        100230411103001: [104100202101022,101131141042121,100440000031023,110012012004102,101320244221142,103100401421202,100002211221402,100103301000402,114101022341020,110340122100210],
+        1101210003102202: [100032041021210,110414300030001,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,114142044120310,110220410000040,100012000022003],
+        100034000004222: [110001422030011,102144314002302,114200112340002,102343014022001,100211000430431,101213240301002,102240320200212,100140200410200,100020020120200,110210001214000],
+        1101441010123430: [102021001132040,110201201211024,100032201024101,110221022101104,110023100402320,110123004401121,102032020214001,100040341020133,111101344104210,100410220030300],
+        1024401021240112: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1004230232322310: [103212014020132,100102101000203,114111200034310,102231301122300,103230040101112,102001004000100,111121104100004,100010041032043,102441311400421,112030004021010],
+        1011344010300421: [101214200300004,114330120000222,110001440004103,110010022202202,100003030202011,1000301003020410,1014111023013000,110320044420300,1003300020121100,110201430400400],
+        1122011114203300: [100000041040000,103004104003011,100101234301300,102331104110040,102300010242203,100020410410021,102144002000300,101233320302120,101421000304101,102011204023300],
+        134041034223422: [102334004110232,103013000104404,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,114124002341030,110302322102041,111300202200414],
+        1121000000204032: [102210011101414,102102011401410,114032124013234,102143020230411,100102014301210,100001000410200,101023134002011,101000131030300,114241402320044,102334040242404],
+        1004201441103122: [114014112300100,114030034013101,100000044204004,101013004001421,103000014011004,101020224210014,114202244101041,100122310020400,112423102010012,102112022001414],
+        1003040030421401: [103011424002021,111121204404010,114210000000224,111202112220003,102311110211420,122210101023210,101044111022300,110302241332230,110002004410314,101012000311412],
+        1111110100002020: [110122120100022,111100424100021,110111121011004,103001020104102,100242444300104,110002202001202,110200422113400,110022300021012,112000000223310,100002214210110],
+        1000000010122041: [102304340220231,102103440200402,101014424224002,100043000200103,100142401040042,114001032302222,101013404210010,110230000002324,101401304040214,112003011110221],
+        1411020222201202: [112002110220340,114040210021100,102002220221002,114100234004010,100030410102000,112240334012440,102101010210022,100010031222001,110020200001031,100034021034000],
+        1410002000001121: [114211010000210,110200020110120,100003040101420,101440004020212,102234400200230,100000004210012,110202102231202,102112000204313,100224120001302,101000330304200],
+        1030012012011004: [100010400022200,102300001002144,102302444110110,103001000142003,110310004424232,100402012200112],
+        1042202003423010: [110303120102044,100131031020002,102323304112342,114003222201103,110002022030224,100204011002001,102013301320044,100022204300000,112012211120102,112300000204010],
+        1141404023020000: [100004001021111,101021004214202,103022021431010,100003000104203,102101220214011,102114320203000,114001112300001,101003104212220,102120231343021,102311110240101],
+        1041400120014300: [110220202124002,102030024010020,104100212101210,111320000001004,101101021110401,101004204211203,110002012000001,110201002040204,110010402102122,100300024313211],
+        122420402014110: [102000421131000,114404020003022,103100114000000,100421242201010,114410212320200,112020011110100,102030000221301,103300010110424,103020011430001,112000002000112],
+        1023021104102301: [100001201220014,100210000032400,110200422121211,101213311020021,110040411222022,100041120200010,102303001003004,114010312213204,100400020022321,103211000211000],
+        1100040012201200: [102020000204032,110000000003200,111401200000040,111202004100121,103230104003200,101041204222101,100024024211001,114031000012100,102110001342114,100222220001202],
+        123003311204111: [101222321200012,103211144033404,103103240104001,102123040212103,100204104322122,102100011341012,114130000220023,102314224010213,100000120000202,111100230023321],
+        1033101124442100: [100313324320240,100001310421201,110000110021420,110100410011143,112000221133021,100130000010204,102443324020000,101134004004013,110401020100113,101214311020403],
+        1024102010130120: [102020000204032,110000000003200,111202004100121,114031000012100,102110001342114,100222220001202,110200000004322,114342044032200,111110020000001,100200024323300],
+        214432414421000: [102100321320100,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102140121410131,102310400240000,101201340300430,111320312222220],
+        223412000312023: [102100004130301,102113020210120,102201101122100,100102114100420,101012310342300,102321320224101,100002404310212,114012212302132,100430324300003,114230222331120],
+        211012410102104: [114404220000142,101100214003002,100021231022220,102410420230111,102301220210011,102120004001102,102323210221002,103211001400330,102410220200400,103020210143120],
+        1002023202310442: [400004112102010,1200020030443142],
+        100100002221212: [110231434430114,102340144111123,100140010100100,130011204200020,140243003020120,100120014301440,112020240233004,102144311342041,120422012013021,101040400300024],
+        1044010413203120: [103130021444021,100022001040322,101400004022210,110020030024004,102112204131410,102312301104422,100000411002023,102303200241200,100022021041122,114120140000100],
+        1400100210120201: [104100012102004,110000010120043,102102011413000,102403404004110,102031024013013,110044020020202,102122410220401,110301311303102,110021232000021,100001140000010],
+        1040312010102100: [100004211221210,110201001212001,110200134240420,110403221000002,101201304200320,114022042302201,112002320212232,103310101401010,103140021401211,102404042001400],
+        1000300001000101: [100003011041040,103200141404212,114001112300222,100203141001002,114122440000024,103000020103121,101200024010043,101044211032201,100011111032203,103021440122032],
+        201034002100400: [110003004410041,100000444104204,100014420000000,102012004013201,100104004230031,100021000021202,101400000302113,112211030201201,110432304221110,110410212110111],
+        101101331204020: [110112012140003,112110220202020,112002012030102,111003410011000,100400100022002,110300200044430,110401422114111,112020021110112,112120020220421,110220244403201],
+        1122221100001000: [112023022001022,103122221240032,110310022220010,102001000202131,101020401034111,111012400040302,110140021322121,110120202212130,110013140003302,110220002040001],
+        1020000002421121: [100200011001220,111202014132111,100003141022321,110201434240143,111030044110010,110041304201404,100040211022000,114000134102201,100420104301012,102110001401111],
+        201022410220300: [102020410220200,100013014101040,400204300024034,100402010420301,102022110202024,102010140220011,1002102003210222,1130420100342202,102120000210110,140020100011012],
+        1001100100001221: [114203000004300,103140044032100,110322100104010,100032021041010,114100004121121,100040214102023,103033044023040,102403101400210,101000001001104,102100330231011],
+        1424104010001321: [114213002340022,120402022102021,102120140212001,114400210002021,103103221421013,102010002000402,100240011000013,114233112330324,100000021022400,144200203310100],
+        1403010413000123: [103142100103020,100100014033224,101002204213002,112001002300102,110002402130200,103144111211103,112202002030000,110100001014012,112243034012420,110010344204120],
+        1022030220022102: [114022300022421,111210044410020,111420230003130,111310004122000,101221000312044,100400240013333,111001314111000,103100040210040,100210001002200,100001210100102],
+        1104301030300303: [111220002220100,100000241020022,101133410300302,132200010004401,100030044202001,110114410003233,140200430112430,110012030002010,110000040024442,101410044021332],
+        131420104131100: [110230000000002,110220301202400,101003140322000,110401001002400,103012000100400,110210024220020,114201142324042,100401424300314,102213401111223,100040120000031],
+        202204411100110: [114231202331202,100003021234044,111102032220111,110200204224211,111300042200340,101010041032322,114020042300022,100021421020002,102400004040100,111120204100203],
+        1111100011232413: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,114100124002210,111122200021102,112400034040002,101041100300001,100000020201032],
+        1002000201011131: [114200302320443,103100420210210,102132004132023,102040240242204,103224020100300,110030012000101,100403220022142,101001240310031,100000101022200,114030000024010],
+        1004104010000220: [102231130213210,114113104123200,101210210300031,110002021121023,102300040221403,102201100200430,100114021040000,114121300224141,102301100241002,100021020412110],
+        1421021020110001: [103132204001001,110003404411303,114410010001200,111211232220002,100112301000311,114000142301404,111301032200412,100210011201011,113030011000324,110100120120001],
+        200021104204110: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,102023021321020,102114020210202,114040204014042,114001010044120,101010111033143],
+        1120310000031004: [110411324240311,101011034000230],
+        1112021100202003: [114031004020241,102430321112030,112101432300231,110213042222211,100320224314301,114202032320004,100040014101440,110321100100401,112200102033440,110100000101440],
+        1102000220103034: [110011414240022,112004202302034,100042001020203,100010044300003,114130210231020,112120224040040,103301410110110,102124031023100,100204104320231,114002104020100],
+        1440232013001100: [103012024004312,101040040300223,114234004000210,100100001040410],
+        1110140020111223: [100321004011041,110002342100014,110021312002040,111101042244210,110124002040002,103110314000100,110023410122402,114302200014241,111204200002001,100002300411002],
+        1222102001102032: [110200321303322,100010030100011,103002041402004,102022024000100,102103030210003,114120034123300,100040001230110,103010011401200,100020014210002,114010112332112],
+        102121400201014: [111124004101012,104102040011120,114103220220104,102120004001310,102430121110340,101021204000200,102020121102120,112141104020201,101200111020111,110001200422320],
+        102010300001011: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        110101402310010: [114011302301400,102304034110400,102100220210000,112000022000300,100003214102204,102430300201034,112030122000001,101102104020404,111222024104240,112000102000001],
+        1013400111031002: [110300222104222,100002040410130,100440001000012,100403011002204,110202414214022,111002420031340,112432142020024,101103012130233,102320304030000,101112241010002],
+        102003130120100: [100001230201101,101101131132022,100010100000042,104120211242040,112220104002000,102223004042102,110410312121010,110330130010041,100030034303012,102422200201100],
+        122040420010323: [114203042330220,102102231400111,100032421040120,101004201001232,100000400412200,100002020101023,111100232241200,100011234202334,102111024004010,103343010113030],
+        1031013022303011: [110000322130121,100200001210021,103204230111030,100422211004214,102100000210002,102121010210004,114013214010111,100010004210020,112002100240200,100001404100110],
+        221002402022003: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,103303000112122,102100014132110,100021304103002],
+        1001100210002400: [110322104424202,102112201020000,102102220312102,103004204021310,112220102043102,110012310020200,103030120100220,100232224340041,112400002011010,112011001113222],
+        212002400114144: [100032041021210,102040011121100,114310000001232,111322234130000,110104002010100,100030024303023,102042204000300,100001134100120,110303401230040,110024140142000],
+        1120324010000221: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,112401014040034],
+        101031020122412: [100000210100030,110001440041003,100000220111021,101000430320220,100401022201110,101100001110030,102210011101110,112100302012023,100102410403204,110042021100041],
+        200422320010040: [100000210410212,100202021212012,102000032003002,104003410010031,103020201401104,110020030011011,100100000012334],
+        213123000110000: [103010010104000,102330030243120,102100100210033,100002200014412,102140142001210,100141004030100,104130442103041,110000012124020,100022201040213,110221320111003],
+        1002203431222130: [103241000112010,100034114100102,110330002104200,114000000030300,114101012201420,101114420310142,102112100210100,110011111104432,101300000340401,100011301210241],
+        140000130120401: [101000211032200,104100001242022,101210000300320,102120022000224,100204000410301,111213130001022,101030120340201,102121444003011,102240121302011,100401400022202],
+        1020020030010202: [102202204040010,103333040110114,101022200343023,102000000221222,102011014001111,102331201001140,102101001342004,102103001414002,102022011101012,103222024031400],
+        1000120402321010: [101010400300001,110002211302010,100040004310211,111101144403004],
+        1111020032213240: [100404210032112,100121010022020,112100322040040,100112134030041,102000000224001,102013314023030,102103111403000,102004044000100,110030121201003,102110030210103],
+        204240141002041: [101022000322012,110123000122000,110212010000000,100200020144110,100230421212431,100101201021044,112400000200011,102112400224210,100400230020212,110440401003310],
+        111403302134022: [102001144013040,100012111020031,112203400410130,100302320420012,102000404001103,100022211040222,112012220214324,110030400140000,102242022004100,103043001412001],
+        1004010321040430: [100104100022200,101010020320410,101120201100110,102304021004012,110120001121422,120000042021310,100100030402102,100300414022102,102100234022140,101024124000000],
+        140113212104010: [110211002121001,101442031012013,103202000101303,110020232002103,114101004000301,110012311001312,100241100430000,102102400314222,111022022233042,100120020401013],
+        1103120200120021: [110134044242442,100002302213022,101030020022301,110120400022300,100041044101100,104032420010121,100121104031022,103004030121000,103212210100022,110144200000122],
+        120101001020342: [110210400114203,100001100104021,101101300010301,101122200300011,112210201100012,102120200221403,112001122302311,101001211004233,102303011002000,102314100240010],
+        1002132023000020: [114001204020002,114230000001013,100022211001110,112000002310000,100010201030300,112420104040020,100403430013124,101002100322211,112004000230002,110220111110412],
+        100000200014040: [101242011000124,100202340430142,114420242311240,110141001301302,101200200300310,114011402303024,112124000203110,101011000320010,102020004000040,102110201342301],
+        1004311210021102: [100114004100001,102012030213014,102003320200411,112440114040203,100401001011010,103001204002010,100340114211043,100033001220020,101100120334014,114233002340141],
+        1240000303230010: [103204424022010,110304304420001,102110402001413,102131334020220,114210024001201,1031024222000122,200003020011141,100020111230000,114102010224000,114301012300202],
+        1001310301020000: [111201000013222,114004104012300,114211202324143,101203211010000,101200314040213,103302140112020,114003200023323,100012014300020,114110024000020,102213214110012],
+        202000424030110: [101020000300112,100002020410020,101000001111200,102012220241003,111120214102000,102113200210140,103130020213032,101430211012120,102323204113210,102403031110014],
+        120121341000001: [102041100200402,112100404000230,110400112021140,110112121002403,110122221240302,102401200230234,102241230200120,110201111200204,110400104222012,103302024010240],
+        1400200011214220: [100002101021120,102102012003220,102313114114000,103030304021102,100000101001431,100104100422041,100001044241012,102030420223110,102120200201042,100200011000020],
+        101332113114042: [110144240011020,110011011212100,101134030011000,112000244001222,114441114123013,103220211421421,110123230124040,114000012334102,101000014012442,131000001020102],
+        1000030222202004: [110221204243141,100400220010240,102300221002020,111010204401023,100000010004124,110312300040010,103120000104021,101220200040320,102102001402012,100124221021011],
+        1144441010000220: [112002204004403,103013001430040,100402021000101,101104121111112,102141032001100,100100220024041,114000000023404,103030200142241,103010040123432,102112322004011],
+        240201020200121: [111133110023322,100400024103122,102000021101201,112024200220201,101001440303020,102000124010400,103002224002043,110140141201202,112012030233024,114201004001120],
+        121221411100014: [100012320001320,102000331120104,100232214222204,110203111111000,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        1010044020430310: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102,114032234033303,112400034040002],
+        1020000200222300: [110402402020010,112421302011301,101023431001040,110001210120320,110300404422030,111024100022301,110200310012010,110102110124010,100000404341421,110000022100112],
+        110302143030000: [101201004044021,102422122000001,100040204202102,100200124341000,110021212130000,103230324024140,112120022010120,102113111410044,101042130310010,111202014413200],
+        1031222012302021: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,102001014013004,114113014000010,114022100010000,114321004030021],
+        124203022000303: [103100221440010,114003344011001,100021101000000,101014201030204,101203001010111,100031201030102,114201104114111,101041001003300,100001100411302,114012444020220],
+        220102220004103: [102342110212020,100024024200032,221123404200214,100021024100301,1101210010010223,102042000211301,1300004102024404,100421001000020,1300102043130042,1333020210312100],
+        1113300400421010: [110021000410432,100042304102210,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000],
+        1130010120120310: [104130242103012,100002131024210,102410001402210,102000101132400,110000102100012,112023140212112,114000312301300,102120214001422,102400231404200,114200422324023],
+        1000412130010144: [114042102330002,100014001041000,204020131034103,114113404003030,102310030240210,102100204001030,102200400234000,103001324012043,102110222004041,100102240020100],
+        1400220101000132: [102023000220003,101004204212040,112130030422202,102202014030001,100444021001102,100020404302120,112013400220104,101022424011430,112112002014120,112321041130330],
+        1000141214101410: [102101320220430,110100010000102,114020444100202,114020232302203,100111120012323,100014044200222,101001000321032,101124021110021,100023100104410,110100112141141],
+        200000101104221: [104132340011314,102203304123030,114012040020310,110000212104130,110200200004002,101000040320021,114131040224332,114002210021300,103230114000201,100123020032031],
+        204143214033312: [110000212101040,100014401210011,110021410020203,110411044221200,112024232302040,102423031402210,114013022304040,102021311100042,100201020140421,100004001002300],
+    },
+)
diff --git a/.vim/bundle/black/profiling/mix_huge.py b/.vim/bundle/black/profiling/mix_huge.py
new file mode 100644 (file)
index 0000000..0d21755
--- /dev/null
@@ -0,0 +1,7692 @@
+config = some.Structure(
+    globalMap = {
+        103310322020340: [100000031211103,101042000320420,100100001202021,112320301100420,110101024402203,112001202000203,112101112010031,102130400200010,100401014300441,103000401422033],
+        110040120003212: [114413100031332,102101001412002,100210000032130,214000110100040,103031420121210,112114222301010,110133330100020,100001001203011,102210220202130,102200120234012],
+        244402003102200: [110212012114431,100001140020000,100012101223021,110031301200114,114002020044120,100021004302202,102202200240222,114102010220042,102021301441201,104103102103201],
+        122013242003223: [100014100100001,102100004130301,111120004100414,101034024000101,100021424301033,102003004003400,103340410140122,100102114100420,111012202111021,100103144302200],
+        1120010021223330: [110332202020000,104120130021200,112421004012141,111100220022101,100021104201130,102224410201003,110030021010001,101300401002320,112001321113132,101110434020010],
+        214100003030021: [102122000214201,100242141004122,102024240221040,110320011200230,100011114300334,102303004110022,100110201042101,110134201140010,112101044000202,100040024340013],
+        1000220132200020: [102231130213210,103214010102022,102000402041014,100043324210140,100023024211011,102404021403141,100010004313001,100003201021001,100122020011232,100121031014040],
+        1200041022422001: [100021300101110,103010301402112,100011401031000,100020034100101,100122214300222,103134021420204,102042210220100,100103200021130,103204214043011,103020320102002],
+        1000232101122040: [110011414240022,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,103301410110110,112114324040000,102124031023100,100204104320231],
+        110002000000001: [110010000111020,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101,111243002222100],
+        200211022142211: [102231130213210,103214010102022,100043324210140,102324014112020,102022004012201,100023024211011,111130210020000,102404021403141,100003201021001,100122020011232],
+        114121130201204: [100040031020241,101100104000222,102324141000002,101010234004042,102041224010012,100411400030100,100002000102100,114340102322021,112033124022002,102120221120200],
+        104101002123040: [100032320000112,103140011442322,100312120141341,111144020011120,112142204020032,110044031204131,114012010020012,100001420412010,100102110020102,103022000123142],
+        241101103112120: [110333404433042,112240002043300,110021100132240,103104221443021,101100304000101,100202210410011,114402212310021,102411011111011,103020141414101,100113001040420],
+        1004020030320422: [100022214203010,110310011234031,110123111300000,100020031041304,102120004000101,102020002000420,110100302010110,100422020030044,101220100303222,100002220411002],
+        1041010100001110: [111124004101012,114103220220104,102120004001310,102430121110340,101021204000200,112141104020201,101200111020111,110001200422320,103210114021430,114223242332100],
+        121103011132000: [110021104200001,110441140102024,111140124100100,110310020040401,100002024303323,110030002130201,102103320232241,110302000400221,110111001302000,110210304220000],
+        1042022101004111: [110021104200001,111140124100100,110031301200114,102103320232241,110302000400221,110111001302000,110210304220000,102033124000111,111000212204213,110010324410130],
+        102220010222003: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        1442130103121040: [114413100031332,112121020204344,102211030203010,100210000032130,214000110100040,103031420121210,112114222301010,100001001203011,114214404142034,102210220202130],
+        110204013021024: [110301402000211,103030201402004,110420104221220,103200004030020,100320014310021,102000110221110,110240214432004,102122141142000,103041204010000,114432234113040],
+        100001440133234: [102111040210242,114110000002430,102010011412143,100424220032043,114013422300032,102021004001004,100131414303044,100201010110320,100000221030033,110101101120302],
+        114002033000020: [100001121002141,102000040201003,101132131221321,100004440004031,102002011033030,110310300003402,110220022132003,101001000302103,110044112100220,100010120031210],
+        112123022000131: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,100002100124101,102304100210334,100403210010142,112003100241220,102204304000304],
+        1143001230040001: [101033124003122,100313144100202,103201004024412,114014222302011,103011020110211,110203420111140,111003412201430,101411214000203,110222422042203],
+        1002403200000231: [100122004300410,102140014001101,102000104012232,112400202020003,102000224000011,114122134140002,102101010202004,114400202310210,100042030201341,112233332034000],
+        1003123041101031: [110043132100300,102220120203200,100002004201122,110132031134031,1320303202002000,1321200010022312,110130330012140,114102134002330,140403400240000,100003230110201],
+        242220101103400: [111130112100210,102202200240222,110131044200121,100100004102234,110223332120231,100001024301322,114013044102010,114220114140122,101023021034304,110200210110130],
+        121030040400021: [110011011212100,101134030011000,103220211421421,110123230124040,131000001020102,112200412033030,110420001000202,100102110402220,110412310030001,114012022302022],
+        100104011300401: [110320414420310,110100100101041,100420124100211,103010211222002,101040120320230,110013021300010,101043234000412,101220000040002,100422001002123,114010010010002],
+        1004003211220032: [102400100230000,101100300302102,114120420223002,100002210201212,102302020212101,112410424012010,100030004104210,103030201434002,110232110004010,103021201430000],
+        223011102020040: [110012420131001,100132040031022,100020310000200,100220004030002,110020002003334,110014000442004,101441204020001,102014201411102,103231320100042,104121201242032],
+        100200110422111: [103100221440010,114003344011001,100021101000000,102140000212141,101014201030204,101203001010111,102424114020143,100031201030102,101041001003300,114012444020220],
+        134300111030221: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,100021014100124,100130244302034,100122040012210,100014010104404,101020104000001],
+        114001000330100: [401142101000022,400114001102410,102100000012031,431232000323104,1012100023110102,232023302143031,120200122422404,1040100003200241,111414004440203,1020220210340010],
+        211222012120321: [112000112000031,100121214300000,102123214020000,102022124012030,114002320022312],
+        1122000200402140: [102401141113031,103042420143020,102304314110202,110210400002012,113032012204012,112310002020302,100204311000400,100403012200201,112002111121013,114211100001224],
+        332000024200013: [102120010220042,110103312142034,102210210312302,101120100320100,114140014100000,102110004002301,100130020001030,112022100213011,100101231202322,111210020001013],
+        120041442412123: [102133011413110,111001200041102,101223020300040,102034324000220,100210000032400,101230020303000,111340130010314,110200422121211,110214220002020,112220414010040],
+        1011011320300100: [100102024301030,100111134302041,100112234000041,110004244214343,101002101020003,102214021120301,114221224100022,101330210310300,112003021111000,102012141134211],
+        220020021000101: [100301001000202,104101112102403,100023121223031,114201432320014,120000002023011,102133120200123,101014020301201,102000031130401,101010111002141,114123124143310],
+        1024011342000021: [102001001130100,111204203012002,124020002020003,122222120003214,133332002141010,144000013213001,124010030100142,112310202021010,110014020020011,100140044020011],
+        1131011002310011: [102230040200031,110122001010214,114043140010022,102101204000010,110022300420031,100100401040001,114230230000123,100222024320003,103323001400013,114013012300240],
+        1142024120224002: [102203344011410,100021324100000,102103430210003,100012014300120,102414014022212,102012220241003,101004411032102,101430211012120,100204021000012,103242044020102],
+        1100004410231120: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1440220030001122: [114010330030011,103021220104200,101010020320000,112000210211020,100010324210003,101000000343443,110002400011111,100402132200000,111100300024000,103144040104204],
+        121414301110004: [110144240011020,110413401240204,112000244001222,114441114123013,103220211421421,114000012334102,101000014012442,100312401002102,111022210021013,103110001420121],
+        130004004220120: [111240340004003,102021024000010,111101222244030,112011012004300,102300010242330,102000401120420,102004012043122,114011102210402,100120001014040,114300100000041],
+        1013303000401020: [101000024004442,100002100000100,110130030020000],
+        220041302111231: [100002014200331,100034244210020,102012004000003,100411000030110,102041201121230,103011014042120,100000030120242,102110400210023,101012204221200,111212422222300],
+        1000031031200013: [101302134233230,100000130010033,101030404212000,114102224000201,100022021041122,100020001042002,100013011020311,100120041020012,102012204000242,114143024003322],
+        1000303301100221: [111333104124202,101000304014100,100040011023101,110301030010140,104100002101431,101123232010002,114421242204443,110100222001100,103102000121300,110010331230210],
+        1410211342331412: [111002100000102,114021010040140,114222302321101,102101024002121,110014024202014,110220130100010,100020011030330,102404221402210,110203022032320,101222014230110],
+        1411020122202044: [100141401021003,102010000231120,101000400320211,101001010300214,103010020142023,110132002212113,110010100040100,102101002002002,111020302232033,110224030114311],
+        101010042001102: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,102020004000014,100000211023014,114144014122041,100201111002224,101410304041000],
+        204204011102020: [100212030414010,101400004022210,102031021441200,101200020303202,102301324112020,111340300010010,102013224003020,103013020123142,102240344041020,102140202001100],
+        240000420312002: [110002004410202,102103114000024,102240221000001,112041002002124,114000024101102,140343100002103,400200234320200,100020124204330,100001424102041,100100021040230],
+        1030000001422430: [102343230224321,103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,100001104301200],
+        1104234221030010: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,104130020011020,101114422122000,102001314013400,114110414140400,111201100011141],
+        121341130003000: [111102004100101,102021100220101,114000040010421,112042110220004,100000214240410,100433201004014,102301102004413,102003000220111,102010100204023,102414040230400],
+        100101220022002: [100010024102110,101041200320012,114303400002201,110204211000331,112121014003422,114430102311021,100240444100022,103004411424400,111014002140322],
+        1023303420422001: [100043104240004,110002034200042,100001240100033,114100304002030,102100001340122,112030010234104,103414101212410,100123021223100,112302011102312,101020030343002],
+        101114102124321: [110403244220202,103113014002100,110120400402324,100402340010310,112010020211000,100102200000211,103030201240100,102300210210222,114100332340213,111031030024010],
+        1422302020100030: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1121202400231120: [101211201202134,103120104030100,100004000100101,102020030220200,110031404423144,110003434410403,111110000014401,100000204312321,101004000304012,110300121220201],
+        1042001221000013: [114032104100141,101213114040141,102210101002412,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,102021241324040],
+        1102433033042110: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421],
+        100103201011144: [110102401201204,102400100230000,100212030414010,101200020303202,114120420223002,102013224003020,100002210201212,103013020123142,102302020212101,114303340000001],
+        240343043023011: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,100400001001300],
+        1020301032424304: [101302134233230,100000130010033,101030404212000,114102224000201,100431000032001,100020001042002,100013011020311,102103331400000,100120041020012,100020001041231],
+        114200022220040: [100014100100001,102100004130301,111120004100414,101034024000101,101243024011000,103340410140122,100010021221221,111012202111021,100103144302200,101414100300221],
+        142041243300010: [102102002002242,101130104022002,101230331020012,100004244210201,102420124024204,122312222240401,102041014011340,110200130004300,100140101012000,101400000302141],
+        1002203102111022: [100434000032200,110004020020022,114032412303041,112000301122111,102020130212402,100010001020000,200000020021022,114321212322303,112302112002211,114202002333330],
+        1110102121041413: [101012310301211,103112200123144,114242304004011,102302200241241,110001420021023,110201040003402,112301421130130,110020012100302,114412202320010,110021030030202],
+        114020200220012: [102010114022011,103340041403223,114002200000421,101020321002002,114302210010001,114030004104220,100104004301000,102443211401140,102301041000014,100001111201214],
+        202011212123200: [102203301123001,103210400110122,101112020300011,114104302341000,100400201010000,102244400201444,101010001000121,102304000220032,102002131132000,100000031024222],
+        201032103003132: [110212041114210,113210300100002,112404024011000,102131034000220,111212124130140,101002014013010,103402020120010,112110100230023,112003044002004,103020200102200],
+        120222032001012: [110121100004131,111400214442024,111122200021102,101041100300001,102140011440001,101011220342010,110200004221020,103114211441300,110000222010004,100114000101041],
+        1100013040001020: [100003031030034,101001044211204,102100010233022,102120400212001,114313022302101,103001324000110,100002014200021,102300401001010,103212320212011,111120034400000],
+        1001031021300022: [102000020220000,101020104000040,114412142320040,100003044100101,114012402332300,102220211122102,101010110302010,100032121020101,100013224313301,100012244240030],
+        124000010122242: [100032320000112,103140011442322,100312120141341,111144020011120,112142204020032,110044031204131,114012010020012,100001420412010,100102110020102,102002204001140],
+        1121211020204132: [110020301320101,102014001130210,110401041140300,110002302201420,102202001120002,110200010003201,102421004041011,102240040202421,101001110300111,100130004300103],
+        121320202004301: [111014240041102,101100004200110,112021221130424,112200041103002,110400040402041,112001011112202,100112004304314,100232041001122,100223030001010,100104231000300],
+        1024242230240244: [110322104424202,101202421002031,102102220312102,103004204021310,112220102043102,110012310020200,102030130241300,103030120100220,100232224340041,112400002011010],
+        1002100010130110: [101400001011042,100002011020211,100100110010010,111110002213142,100002131030310,111102214100400,103220201402330,102321000221140,103113124030200,102110300311400],
+        200010402222410: [101210320301302,102100221340112,100114104101001,114002244103320,101023221000031,101400014040400,102012034000402,114221004002212,102100122002001,101000011021414],
+        112300020202111: [103141411420221,122102400312000,110002100110002,1340024302404122,100002001043010,113110330121030,410020013004430,1002300040412102,1210020204140003,123211320000102],
+        100102203210034: [102023021100022,111200302222011,112040241120204,111000022200000,100010011232324,110220030000133,110000330430311,101211221014003,103111230120100,102221220200021],
+        1021001032000012: [102020010203200,100011144312020,102011204001010,102001410221023,110130201302200,103041021430301,101100440320434,114000402211404,101000100302003,110000030430422],
+        1031102424140120: [100011010414200,111121102240240,102002121101110,102403100202003,110000100041101,100400000010033,100101211001320,101141020321000,103224101400400,102000002043020],
+        102001021434201: [110131122012210,114010200040441,110032014420232,100000344100100,111304022202211,102302011002003,102011021121200,100012441030002,110222042022111,103131004002200],
+        220100132400104: [1010400230221020,111320012221132,102302144110440,114140004123122,102143202000400,111020002202333,101321311004010,102110241342210,114122302311011,100002320411400],
+        1110121023020002: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,100301020420101,102002202000000,100022024100041,102010410213111],
+        1042030001044121: [101230040301234,110033032100000,102303014024221,100100224304110,100400432200321,100020200012311,114140144122230,101400201102014,100000020004004,101040040303102],
+        1100100224104011: [111130112100210,102202200240222,110131044200121,100100004102234,101023014004000,110223332120231,100001024301322,114013044102010,114220114140122,110200210110130],
+        212002042300000: [100030220100110,110011202100142,112400102013231,114012002212100,100002114314022,114203110001031,112030122000211,111004012200210,100413131013301,110001102103432],
+        221001240043040: [100420021010013,112101302302202,102212011120200,102344111104233,100432104320110,114021014020000,102121321340000,114200214002024,100111221011100,100023104101340],
+        1040021200420124: [100042111220111,112220100202000,100042041220010,100403211010100,103240301400123,114102210214041,100021300103041,101010204000242,111334004121414,114101000213410],
+        1101110030041022: [112013300240132,114303044030300,102340044111034,100110021021010,120003030010112,114200212320001,101020240313001,102330220242002,121400042034110,100033201030040],
+        1030000302042203: [102110231441040,100113214302002,110000002133140,101233341022410,103021000144000,100100124100031,100040204240000,114100012313002,114440440000034,120240000020201],
+        1403121230220020: [110200400000020,100324140141402,100002204340200,110000410001034,111140000000000,103102224034002,110022002120332,111110230014001,110020041310021,110001001200323],
+        203110414022010: [111240220002100,110030344201413,101001014001021,100103224301304,114000100020200,102102100231000,114040202330200,100410331002222,100032204311200,102202111110404],
+        133032004200001: [110314100012011,111020422203010,103121124002320,102240300202212,114140422203401,110210420000001,102210331401030,101102104000100,102031010200122,111104202112001],
+        1120000102422014: [102140211342044,110020301220411,110100200004404,110131142010001,101032441003040,112004400210201,110004102230402,112021004020000,101012004001204,110420001344420],
+        1000030222010034: [100320031001240,102104320220212,102100200232044,102434104021201,102300004022020,103003301240122,100210024101140,112220011101022,101000130304001,103020024043010],
+        300210002300114: [112100021100243,101123001100112,112003002001002,111000200012220,102120100230203,100111124101112,112001010233001,103313021401232,110430034224001,114110200221240],
+        1421020010140012: [110010002014100,112030001120220,114231034004040,100100301202103,110301021331320,112001100232420,114020244023001,110342014420100,110200402220240,100114200402104],
+        300310000040102: [110301222101110,102023301102400,102012204010044,104120110010402,111010214402000,110401440001204,110204310112224,110303104423010,110340022023321,114010200012200],
+        101010002031100: [110324020012330,100001134302201,102100011402012,100020221031000,102032220220223,114042004020130,114030400021223,102022021100102,103301304031211,102000004013440],
+        1032221241200404: [104120011242011,110020002104100,102000301101102,111122200021102,114032234033303,100000020201032,112011204004112,100003000002034,110102022000200,102200034040443],
+        1131211404001020: [110200100002031,101420310301020,100020330100100,1002443410030003,111103224103001,100011231042030,102100141413100,102110021342213,112002310211210,100010031020102],
+        132013120010104: [111300232202103,102301401002404,110122120100022,102012004010000,102400100220000,102001104012021,100242444300104,102002104014323,100401241010122,100010010102122],
+        130000310202012: [114200044114004,102202010204130,100220101204311,100002000102100,102100430233212,103003210141014,110421222011222,100201000410010,112110202014400,100400030013200],
+        1111023010042112: [100000201220420,114000030021040,101002011020001,113141112413242,102021111130104,110401030101001,102201214011331,100013011043231,102031114002042,112302012020342],
+        121010001111310: [101400220300033,100012021032040,102001130224032,100012021040320,102130224023220,102100401143124,100010001030140,102110101410144,114142204121324,112102421102022],
+        1113001011001223: [110202400003213,114112014140000,110001012101334,114200124000134,100001114302424,101222134011002,100003011231420,103230231200010,100431031014023,100120120401041],
+        142034000000112: [100310304310342,100010041031020,100042400001023,112402000200101,100020201221000,101010020301243,102030001103000,100040021031201,111010130022401,112140214000020],
+        1012401424032042: [102401121113302,111201210000103,100101101010100,101320040302031,114010102300010,102321044112101,102000014002000,101034014011332,101203011023020,100021231020200],
+        1103400010414230: [102010114022011,103340041403223,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,100010031222001,103001114001210,100001111201214],
+        1400000301203010: [114122134140002,103012011434022,101032010342004,102322330243202,103101411424112,100100114103001,102134131144121,114030222300123,102102301021403,114103402201140],
+        214024214401412: [102220242000201,103010021410203,101000304214111,102120040200200,103202220100114,111100132103413,112203220204012,100113040003021,100010204200010,102410134022300],
+        1221011020200210: [110041030411301,110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,110033041200104,102000221442214],
+        1000120020110040: [110200411140130,110114120120100,103124210100201,111014200024034,102301002004242,112020014000340,110021404214210,101003014210212,100130220400031,100210024300001],
+        201001342101001: [102001444000222,101400134043222,100010400013202,114340312301134,114310242320310,102110021401100,100113201011032,102230000204000,103102044031002,100011421002120],
+        1000000133120020: [110230000000002,110220301202400,101003140322000,110401001002400,110210024220020,114201142324042,100401424300314,102213401111223,100040120000031,102002104011244],
+        101400102142302: [100004211221210,110201001212001,110200134240420,110403221000002,101201304200320,114022042302201,112002320212232,100002210413202,103140021401211,102404042001400],
+        100203202010202: [101000114000402,100043100123004,102014014000100,112212042024100,112410322024122,102300110221100,110002332102000,112001111111212,100020104300430,112041020221402],
+        1011401013024410: [114444244144110,114201004110120,114033234032101,100412114304000,103001020120202,101004411032102,101000020302400,102021014012210,102244221114031,112400000200011],
+        131012202321232: [110041030411301,110001041213031,103301210142043,100002024200142,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002],
+        100303010210441: [102304034110400,100043010120010,102101124001310,110030110122402,102430300201034,100004121030301,102143432000102,101031001004201,114001110033210,110120011014412],
+        1111011030001020: [100032041021210,110001041213031,101110044200100,110414300030001,100030020011022,111202012222402,102000221442214,102040041320010,102402104022000,103203401400132],
+        1420144022031000: [101240220300022,102200130202201,100002010014040,100022000410041,103020000102011,103001031420203,102301324112020,101040421033204,103130011441212,102240344041020],
+        104012440012200: [103000001432331,110131110401120,103000004011102,100120041014034,112111110422120,102130300200301,100121100002240,110224032100120,101104220322100,100001001201301],
+        120311002000121: [101220014012231,100104024303320,114422004110130,112210132031001,102010310213001,103244320114100,103422430124013,100121424231222],
+        1002120002022122: [101201220300012,101232104042101,101220404012304,101000304000400,102020204010341,112020100202034,100140410020232,101221004040204,100412414304143,102110404001401],
+        1040331220001000: [102041310200042,110301030010140,104100002101431,110221000111302,101010001002000,110022140120012,111330020002213,102011440201423,114011212320331,100002204310140],
+        142030323441430: [110020120023302,100043120003103,110002000410040,100433001014104,100000004102121,101022411030002,102000021442024,100030314100004,100404130020000,110400302114103],
+        1020000001100400: [110001202000032,100024204211200,114200004110244,114230412332011,101210101010023,114422114140221,100001211042341,114032104123010,114303122321110,114330204034200],
+        1001130242231402: [100042320001030,110024001010110,100100014300230,102043104010014,100001004300242,111120044100110,102200201110443,114240314000100,101002411030000,102002324011002],
+        1014202010302102: [114200212322001,100401210020002,112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,101022440300020,101402010301000,100000220111021],
+        144100013100013: [114020200020222,114330002323002,110213022100021,102202000240014,114424424144210,101224321014333,102100121342000,102204321003224,111222002224302,114100104030132],
+        101213002101214: [114014104033302,102120200221403,110323110104120,102110314001121,101020104000300,114003402300102,111202104100014,112402102021111,103344224020241,101002114000424],
+        1012442110402240: [104310001300102,114021132202032,112012004004324,103001314001021,114122220031004,103040024041111,101004004213014,111124002211203,112034420220403,101211231023001],
+        1002210200000101: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,100414004300100,112102232300222],
+        102400210400022: [110010334200041,100001024102001,321114010100340,102322101000200,102110100322014,110413131000201,100000100000432,101020021114310,114200104110001,100010314202003],
+        1043003020000104: [114101024120020,102004011440212,100000001021013,100011204300012,100101234330123,110024000432310,102012101443110,110032220022103,102102104000102,101210031201114],
+        1243002022101103: [110203120112002,110000002100100,102221410200012,110213401202110,102300104113403,102213224110010,102300004112300,102420024020120,100040020001022,102141140210200],
+        1421204200010112: [100140101044224,101120004023340,103040031403031,101030014001004,102012421412000,100010044300131,111010130002222,110200300000010,110144102001321,100020304102100],
+        1003013101233010: [102400111402142,100040240004024,100010000002400,141030301403400,100000024100211,103224200113121,110140101300004,120020211120020,110230010010142,101002041000124],
+        101432210141203: [100310120141002,102324014112020,100301421002002,102404021403141,103022021431010,103200020111014,100010004313001,103104200210410,100002200410030,100121031014040],
+        1104003002031130: [102420020200202,1023413000203201],
+        112011130023123: [101020014011102],
+        1102310021242142: [100022041001002,111240340004003,102021024000010,111101222244030,114032424122040,112011012004300,101021401003220,102000401120420,102010410213111,102004012043122],
+        1002120410241114: [100222000144103,101240000310400,114022002211402,102311020240221,110211000004002,114101402200030,100000034200300,100010124300001,114200022322000,103133001441320],
+        1022312211002000: [102123140310122,110101214402023,110400014224001,101410030330122,111000144410222,100040001022000,100222404342030,112204022020043,112320100202120,110222241300101],
+        1402011002013421: [101043042401310,104001222102120,111412020003222,101113012101010,111212022200012,110023132100402,102022102010211,110231202040203,112112410232001,100021220002020],
+        1010121032032211: [100002024340032,110000011220401,102112340210300,114100214000010,100000104201200,103000304010211,100010000002132,114100042311312,101000014001020,103014141222013],
+        1020030002101022: [102040431121110,100400002201113,114111100021420,112024212301420,100300310140241,100240134323001,102111024000402,102001011100100,114402104142102,103312241402001],
+        1010240311230422: [110200400000020,110203131211112,102301004110004,110021100023210,110402420402001,103122000100403,110000112100402,100002204340200,114103412201420,111140000000000],
+        1401004204000003: [102102011412000,114204030210041,110033101044200,114440120000030,101002004014401,100400224323100,102112112004300,102010014001001,102000001440004,110321100402021],
+        244331203200002: [101221422120021,100001000002210,100400320033201,100004130002301,101210300302302,102020131413423,110020204200342,100000220011133,102144012001113,114431110001011],
+        1130301120301001: [100401140034220,114002002300222,101242004043300,101013111000000,102102131340404,102420041111041,112004312310301,100040121030000,102000404003020,103111020223101],
+        1002000403000204: [103343014022202,102003104011000,102220330202001,100022200120040,103002020110334,101021134012211,102140200310400,110010002103002,100220034341000,110200002121242],
+        221400100111330: [102031100200300,114102134122020,110024102010002,103010034004303,102023032000000,102101440201242,103000204003200,100021044343014,111433000002144,110001002002424],
+        112133300441020: [110120101220000,101040014002010,112001001133213,102000144014000,124204212002003,102311101002242,102110210210004,100000100412410,100012441220104,111032320020122],
+        133313202104310: [110013334202122,103330104030103,111200002220003,112043421121002,102212030201100,100111401011110,102010341440030,100001120100002,114001000024011,101021024012041],
+        100143040212102: [100422314300200,101210241204043,100123011004113,100420001002101,101134224001001,101021204000200,102321234111310,101200111020111,102000024000002,111122222240232],
+        1432344120130401: [101001040340004,101013004002011,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        1100030203241342: [100440104303400,102122000214201,102220241100202,102024240221040,110320011200230,100342024100204,101422034042201,100011114300334,102300001002140,110040122000002],
+        1011102003042024: [104110021244203,102224101113104,102103022002001,102102224000012,102100102001032,100142431013000,101000031001011,101100001102230,101010130321200,114004322330012],
+        300210041431432: [103114001441122,100422004320024,114211110023303,111000302230100,114044144020400,103001101422012,4000113102314022,100022204104123,1400100000042343,1002411322210040],
+        241241343121111: [102021001132040,100032201024101,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320],
+        1100142404020120: [101210144014403,102111420233012,110000020022324,100020231201012,102210424042300,110220032120121,102130240221020,100101101020002,114442102312001,100030201024402],
+        110001043032202: [114240012324120,101022011003022,101240101000020,100003101003001,102313100240202,102000014002101,102110422004402,102100411340400,101300414221100,114020210020424],
+        1100103200140000: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        212420003003124: [103000001432331,110131110401120,112111110422120,100121100002240,110011010001020,100001004340202,100220100432201,101000140200002,110140001201040,110001041310202],
+        1041144140041401: [111120214100003,100014131222022,103110114004210,113002020130400,112012112001000,102101404000324,101142141144040,100101231202210,100003001223010,103142204001221],
+        201023043021424: [103001024002110,100231114320100,100001000002210,101210300302302,110100012120201,102020131413423,110020204200342,100000220011133,114013012240011,100010104312120],
+        1011412300010442: [110104112010103,111102004100101,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231,114022400020320],
+        1130200034001002: [112010102000041,103210304032003,102130224131022,100000201034001,110400011140402,112011220222001,111230204100010,110023022130322,110022222231002,103110100210212],
+        101001320111143: [114000044020204,102320000221020,110142020400012,103131420221204,102120141343312,114321114032200,100142011022211,114230344103210,100030020104423,100102011010000],
+        241102301203043: [111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,100104100412020,101020031030240,111204000003031,100012004110024,102142000210040],
+        100021101400201: [110000101304203,104121412100011,110040020001022,101104020300301,102101004000011,101401001010021,101200200300020,102011200213421,102011021411140,100000001020100],
+        1041203303120002: [110010334200041,100001024102001,102110100322014,110413131000201,110020104210120,101020021114310,114203002330010,114200104110001,100010314202003,101013220301033],
+        122400010411021: [103100221440010,114003344011001,100021101000000,101014201030204,101203001010111,100031201030102,101041001003300,114012444020220,101414214021020,114412010002302],
+        1143000322124010: [110041042000232,101002400343001,100032400410212,101202321024330,102303000241003,101000001002320,101310201000040,102004341420021,100012101001312,102010334000140],
+        1040230013042024: [102302440220001,100104400403240,100020111221020,110010122102321,110002322101200,102220124000003,101020201003002,100230300001042,100311334020020,112400022020023],
+        222004201002140: [110313002103302,112424204040112,101000014000004,101142310014123,101430401010120,110102410400023,102120220310102,101010200311020,111211214133000,110304102022001],
+        1042000233033310: [101000004000241,100120000410020,102311000240202],
+        1000002141204230: [111240220002100,110030344201413,101001014001021,100103224301304,114000100020200,102102100231000,114040202330200,100410331002222,100032204311200,102202111110404],
+        134224341021441: [101210320301302,100440024301100,100114104101001,101023221000031,101400014040400,102012034000402,103341124011404,102100122002001,101000011021414,114101000221221],
+        212200220320113: [114423002314000,114040002210432,100010040122204,103314044033003,114102224104002,102001420220112,114422404110312,102403144000120,101033041032041,101010010300020],
+        110100002004320: [101000040320021,114002210021300,101401300300011,100032001041230,100141120014242,113000201000000,100142114304120,103031014003010,101001021032110,114400404121002],
+        1411200112202131: [110030002000422,103100014031411,110000300424304,100032121024110,100011004343022,110401140004202,110040002034100,102402330230011,102022400211311,110203210002230],
+        330234311421104: [110443010102111,111320004131241,102020101324002,102401030202031,100210031004220,114140304122040,111321012222400,102000104002003,101223000300000,114201100210120],
+        210040200410202: [110010000111020,100430014323000,102011041320000,112100021100243,101240110302200,100012121040101,111243002222100,100020411020310,102121401402131,114030012302003],
+        100000040042044: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        1224441200202014: [111320012221132,102302144110440,102143202000400,111020002202333,101321311004010,102110241342210,100002320411400,114201000004122,100143034304100,114021002331014],
+        140222000310233: [104111102100000,102012201321104,101021004000000,110130042014110,103012301401041,100022130100210,100001020002400,103042224001110,111000230041031,112204300204013],
+        130101221040100: [110410412110241,100130124030404,101021121112112,110101002012003,111131132101000,102300131102042,111121230030002],
+        1033022310023442: [104120001244220,102202300114223,102310000240000,110301034241300,120440001302100,122032310023401,110113002140210,114331204032013,112042402000000,100002010000241],
+        100204342220311: [100010014100021,110403241001010,100101334233020,103120110111300,103202420103102,103004330103000,102002424001223],
+        100044003200110: [100021400101221,102241341113010,102300020241001,114100124100413,104130301242304,101001114012114,101141400302200,100002044101122,103342424024214,100100021040420],
+        1002131022022212: [110200400000020,100324140141402,100002204340200,110000410001034,111140000000000,110022002120332,111110230014001,100210200034304,102032020214001,100301101000021],
+        122003200104101: [110033000022043,110100200030100,104412212102010,101230004040022,100000411231000,103140021211010,110132020031210,100020140121034,102340211000200,102300231000210],
+        112200012414342: [140400400201014,110001212100204,103220130211414,120020020010400,101100211042114,121022000104032,112101102012030,111201122241213,142100040004101,100002244100310],
+        1014202212322031: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        130211322041021: [110311022103222,110302002100013,100210240412200,100000104343000,101140211100200,112301000204230,112202101100120,100000110412000,100034010000110,110402404222022],
+        132200002220122: [102100441341013,101440004042202,114201102342110,100100204101010,114101200210030,100104004100400,102002331440012,101223301020130,112100002302240,101430001014014],
+        110230202100302: [102012001130022,110040322000012,100331124310011,114102222344020,101042020300000,101220201204012,110042104411102,102142101121010,103200211200414,102111111121420],
+        1100244431221122: [100032000002120,102313234112000,102000000220040,111101100020030,102014024011240,112022330222011,100030201220012,100203401002120,100404024103100,103144000112000],
+        112120203210001: [101241200300411,110111001300001,110200012120122,114000102330022,114021104100400,110000430001014,101214400301420,112420200202001,110122201304044,112000004001011],
+        1010021212012040: [110101114200020,102144201343034,112132120202010,110002201320001,100430010431044,111020122230001,103040201222041,110111221000100,102341131103201,102100204000340],
+        1101003002401011: [100000041032002,141000211410012,110101322000312,103002420100102,114000204013024,110101221001401,111044114411101,103423300120104,110412140000033,103021100002140],
+        302220212000441: [110023342101220,101001421031220,100021004310222,112220322030220,110202222043022,110313312021120,102223400201104,100220214333200,110330234422000,111000034110311],
+        120200310232204: [112000210212000,100112001014144,103310140140002,101310340314200,142012003022120,111130114102040,100111100000100,102322104114020,100010131001221,100013201220121],
+        1020004042003403: [100110400404220,114221032331220,103200104032220,100212031002000,112002004002011,103100024001400,112400014020404,102000020201240,101012004044003,102021010212032],
+        1114040203024320: [110020120040121,110000100022040,111021030042411,114004142244000,110131011000142,102401010202301,110202012020000,114240000001020,111110004101041,114132022312030],
+        1141211203210210: [110301301232014,121202234011000,102140002000000,102124021023300,112444304040204,122022100000222,100003024211200,102102402003021,114302402321024,110202020004003],
+        132004224340023: [102002120203400,102000221101002,102000431130020,103120004004010,102143000210010,111104404100200,114432224142000,100202234320210,102330124110411,102112400210210],
+        124200241310040: [110001121012020,114244444114012,110404002114232,110032330032030,110032230140020,112224000203234,100404112201001,114141112324244,100111040404120,113431040101200],
+        130014011300003: [110310044430300,101010021020013,110200020001000,100420104100222,100401022201011,100030111042110,110032110010141,103302000142020,102010321104413,100102210402003],
+        134414300403411: [100002021021021,102200000200300,100000101040020,100110040013320,114023012303230,102402000202120,112442220201020,110002100012000,103211400100200,102132300233002],
+        140221020202033: [100003104342121,100400414321103,102132204131302,110020034203040,100032304202003,101420300301103,101010231112144,111000100003022,100113020400211,100022030414220],
+        1002220010000302: [103112010213010,112200410200142,101212000301013,111400002102112,100034100124302,1320102201231021,100000211020034,100000040413022,101000000323000,100011221224211],
+        103201211120304: [110441234224400,110030002000422,103100014031411,110000300424304,100032121024110,100011004343022,110013122130200,110401140004202,114020204102020,102402330230011],
+        1000304403212210: [103122020213112,114101100211240,114122134140002,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,100022301000112],
+        1001320110010041: [110011011212100,110123230124040,131000001020102,110420001000202,110412310030001,114012022302022,101042024210020,102202144030004,102141111100102,111030340040341],
+        1002002040323201: [102100224000210,102400100230000,102114022004023,102031001411010,102030000223420,102031021441200,102300031004340,100213310112333,101200020303202,102013224003020],
+        1022232012234013: [101011010320431,103041414001042,102441324022342,100002004344013,103220000104122,101401030302440,102040124010141,102314221101100,114240004002100,103131401421331],
+        1040202023040201: [104132340011314,102203304123030,114012040020310,103132004002242,110000212104130,110200200004002,114131040224332,100123020032031,121002023311103,100021124203441],
+        1002440332021113: [102004010220020,111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,111204000003031,100012004110024,102142000210040,102320214110001],
+        111301001000030: [110204004430204,110300011230013,102100400222242,102122114003140,100002021032001,102011404010000,100000011220004,114111002340233,110000210004001,102100324001200],
+        232110121020324: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321],
+        210031213113040: [103242420100012,101400004022112,100100210000011,103002221400000,102022030241032,102200000200201,110020402004210,103110020210000,102120124004021,100022141030334],
+        1040100401210131: [102420101111121,102101244022242,103222000100010,102013131134030,102004004010011,114101042313041,121211001014412,111012222200402,103300221402010,114021004010042],
+        1000130012301000: [102021001132040,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412],
+        210104220300403: [100023114341301,111000020010011,110101302141002,110114102004120,103212121402022,103330410111310,110201001200101,100102014001304,102030120200010,101030441032022],
+        222012013140120: [110004202003210,100424220032043,102021004001004,100000221030033,110210402031211,112032220240044,111220100010101,101012400340400,100020330410000,112043101112100],
+        1011000044400003: [110413304221020,100440000030040,112130010202041,102012404000211,102141010230441,100100341010111,100110214103200,101030320322101,102322121000140,114140002313010],
+        1003200020100003: [100442024301200,411231400122100,100400414321103,101024000322432,110302030412400,100110020000040,102132204131302,100010100000320,110020034203040,102014031440442],
+        1204020342100023: [110001332120300,110003000420200,110243234240200,110004014411012,114110200212210,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        1221300430001000: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,100030024303023],
+        114320100101321: [100031300002022,110210020002243,110210022120040,103002044002032,100101020402424,102201112000001,112211120202000,114211040011201,100020100423404,110001222202031],
+        112000242020101: [102304341100321,110010202103141,112003234002022],
+        1011020202100000: [111443032100000,100010314103002,100240240430022,110310321232001,103221100112240,112000000211220,114022300002101,102323131000021,102020304012021,101020024210020],
+        140022010210210: [112300421134001,110321031234422,103021004014220,102023001440404,101023014004000,100020010101201,102312344020020,103210404010101,110124411120222,110100242012000],
+        1420302200420011: [102041100200402,112100404000230,110400112021140,110112121002403,110122221240302,102401200230234,102241230200120,110201111200204,110400104222012,110104004202014],
+        104210020310230: [101004010304203,114104204002313,114300000002130,131204100021112,121200013012000,102122210230200,103110411212041,110421410100301,110244400212004,113003221014312],
+        1011022012144233: [110241142024233,110021104200001,110441140102024,110310020040401,100413311002132,100002024303323,110210301200101,102033124000111,110400241240242,102210101121104],
+        1114132034120400: [100441204302021,102100101340232,100011320001003,100000221020200,100200000030010,100200010431000,100003421040000,101012400320022,101332004231001,103300004030100],
+        1100123300430003: [102002040220110,102141220210212,111320022200100,102232004040004,111202024134001,100000014100202,111302120011012,102203001120342,101012104001020,103101031440430],
+        111031040332200: [100040031020241,101100104000222,102324141000002,101010234004042,102041224010012,114340102322021,110311011330111,103040044010112,102310001100113,102000114010020],
+        312000003010222: [100030324200410,102110202001010,100040041020102,114200020003431,114041002212302,101002200343110,103332044032320,100212024322044,100140004102001,114101024122320],
+        1201001101040412: [102101004000411,114221312340014,102434121112224,101200210300413,100311204312442,101211204201231,103210021401223,111110014101210,100323140143012,111130412210000],
+        120444122021322: [111030212113431,103222004032000,102233034000002,110123011200000,112130004021000,100100200021431,112101202012010,114240004000000,101100304021321,111212024101031],
+        1140403033012140: [101214104041040,110104231221040,102012204010044,103101000100022,100020141044111,114200000002420,110401440001204,110204310112224,100042110122000,101021021002110],
+        1400100200041100: [100131031020002,102031401100332,100014201021012,110030441223002,103010400120230,114120212310000,102424010230103,114200020210110,103110230210201,101403004020323],
+        200111121232200: [102110142004430,114310100014104,102001020200310,110211244400301,102040214001410,111101002240300,112411002010104,110400031142011,103000324042100,101101000300000],
+        100124214220001: [100010101043200,100030100004000,102311210221101,100401320020240,110201222120421,101000011020103,114121202312210,110010402103240,102403004020021,110040421210032],
+        310304311200040: [102410001402210,110000102100012,102010020223010,102120214001422,100020201221000,114201200004112,101400201100022,102141431343320,110010444410200,102010101130000],
+        1100201114304220: [112004300230022,110202001000101,102202101300230,114000102304201,114221124140000],
+        1411020200331011: [110200002031302,102002020243020,102040021121030,100311314310000,100000204130001,102041130200101,100412441010422,100220031001210,101010200312020,101040204210210],
+        1044022301110402: [114000000032100,110140102142200,100122124300010,100110034101010,110410224241010,111300402201232,111011100022010,100400444100202,102004000201030,112020401130100],
+        1040020040030020: [112113214020100,102010202004402,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004,103113010102100],
+        1032310201201331: [110413304221020,112130010202041,102012404000211,100110214103200,112020112300102,101030320322101,102322121000140,114140002313010,114040124102130,100002001021101],
+        122031421042034: [103130314001202,102143314000241,100244210034300,101100322120020,101133040012001,103302320110042,110112324202034,100020321212233,114042324104012,100001101222001],
+        1000100024120002: [112241020202432,103341411403412,114100130002210,100100001013001,112401002022010,103000214012340,100004204101200,102400134001010,102001004014032,101321040311120],
+        1120432001140211: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        111402030002020: [100200301002001,114303120004402,100444004302301,101030224211010,112200002010004,102000101410021,112034222002010,103020404002111,112010230210110,100201040012000],
+        1010031002102240: [102022000210010,111201240001232,100020301020413,110421202220142,100204314320400,104121410021020,100220004311122,101230130041001,101042034041342,110404034223424],
+        110021013020313: [100022010100002,100004100410134,100102014301210,102430144043230,103100130102014,101023321002102,100012030122000,100020200120000,102020024003420,103111230210043],
+        132033102211110: [102020221411320,231011321002242,110001332002010,101421101011202,101143201101212,100021341042001,110400131001004,110411200000004,114041104100241,111044212143023],
+        131132404101202: [102110141401203,100003021041343,102040034000131,114111302203401,112040041120040,100341001003013,110002341300120,101010011000121,101022140300332,110140412011321],
+        1412234223200101: [100020021042003,112404212020403,102100021341110,100002000100120,103031041400001,102022412000010,102300341002000,114002304100240,100100201020222,101000011003244],
+        100210020000001: [110011414240022,100000200202012,111142010020301,112114324040000,102124031023100,100204104320231,114002104020100,111222214101043,100010021034000,103132004002020],
+        1401424102220030: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        1000002322230111: [100040301042132,101021104212100,102102241341004,103031000121000,103002020101431,102020300220201,102020431101132,100000041020230,102041021121210,101404104000404],
+        1410043040014040: [103104401244021,112031202003020,104114400011000,140402143000011,132344004001203,100210134104040,110422001144121,110000031031240,102110224004010,100022024300010],
+        101000122104200: [102041310200042,101000304014100,100040011023101,110301030010140,104100002101431,110221000111302,114101420030202,101123232010002,114421242204443,110100222001100],
+        110203202020302: [110041400410001,111010002232002,102402104001124,103210300212001,102023111131000,100000441022011,102012010200010,110441042222033,100040224101210,110320300011130],
+        1144000100040220: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,100000301221024,101224322120022,110104422010121,110302204433321],
+        1032023214001301: [100002100100210,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100102020411200,114221030000011,114200302341234,103002110100200],
+        1104101020020230: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,111112204404021],
+        1100032122422030: [100220034322312,100203104322011,100021101021200,112002224004011,103240321400010,102010134012140,111102002240013,102110000210014,111101142110100,101002114000002],
+        1141000001411102: [101001040340004,101013004002011,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        200220014302300: [110300100100200,101000224003200,102110140224010,100024101020044,103140024002140,100103240011013,101020120322020,102020011103400,110222000000130,110120021324222],
+        1021241323320104: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        1140020120203220: [101111140300020,101240301000140,103100014000001,103034130144031,102140200212214,113013120103104,100200241000143,102010031101223,112401102020023,114101320030004],
+        1403231230440022: [100223000012020,101123031111011,110014300001402,110120424221121,101022011140403,101031411140420,101030114013043,101042301120010,114423312201001,100104044230000],
+        201134111400004: [110113314221413,112004310224204,102304420211002,110403042110030,101221414041100,100032424312011,114112132313033,101110301040312,102204010204023,100220000432400],
+        1013111302201242: [103300344012201,100122200012014,102313204114304,100011200201400,100201104224131,100002100204114,102203001300000,102101004001020],
+        1001001423001101: [110330400010040,100101231004020,110010100022010,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        120112010202304: [100010104331200,110010104201022,100012031032234,101000204210021,110100121224222,110002142120000,102011011321024,111132300020000,100022301030201,110100100030303],
+        201020143002010: [110020100042220,114200302320443,100401111000221,103302010140122,102113101400001,100010001001122,104240202023232,101003114010200,114030204021200,114000022210140],
+        123431202011002: [114330014002002,114020024104430,101040214213002,102010210200102,112002040214231,102100222002040,100011004312001,102033041412332,101014240302113,100011021000412],
+        1240321040221010: [111311002203000,103301000140120,100332111004200,101033220300404,101440410300202,110013002101010,114401020031002,114020204104030,103243024023000,103232031411102],
+        1121243200030001: [110200002031302,102040021121030,100000204130001,100412441010422,101040204210210,100000201034001,112020024000010,102004014011022,100101234002000,101420244021100],
+        1021120022012002: [114031102200100,110003010010401,103010010104000,102330030243120,102100100210033,234131201024402,100002200014412,110040311213342,110010102234002,102003144000043],
+        1220040022001023: [102000001132113,100041000010302,112004202302034,100042001020203,102002320220202,111321314133000,101131024020440,102432101112141,102100044000000,102104442004300],
+        1043404120000203: [101004100331003,112131222010010,103001011400102,102000011102134,100002121032011,114122224003201,112034022311032,111001420021111,111100214400041,112020102002024],
+        104301030210000: [114002104014300,102000311102212,100130320031042,102010004040000,112433112020200,112301312020123,100042001020203,112023032000020,102000201101332,102231041120104],
+        1210000221304320: [114200110001402],
+        1002203002000004: [114022300022421,114401200000003,100241001003002,111310004122000,101221000312044,100400240013333,102030300224002,112010022000304,103100040210040,100210001002200],
+        130402220300213: [111231002242010,114042034104243,114000214012010,103232114040140,114010002240111,101020401034001,101440104002230,102440214020040,110004124203400,110102032010323],
+        131310204030240: [110212301300020,110210422110113,111322300013200,102202001300342,110010222000110,110433011310111,100210434020011,111212224100024,102030104012411,114200002321340],
+        223002002023302: [102231130213210,100043324210140,114113104123200,100020420121003,110002021121023,102300040221403,100001104301200,114121300224141,102301100241002,112002104003412],
+        1140102113002221: [100000431020101,100244100032320,111102420023101,110010212101240,104104001243020,100032040000331,104124102100301,110002010440412,110111420033313,103100200103020],
+        121211122030300: [101211201202134,103120104030100,100004000100101,102020030220200,110031404423144,110003434410403,111110000014401,101004000304012,114002004100140,100022210410130],
+        114010032200111: [102003004000040,102011101131021,100021100013401,111010110042210,100114200020220,114401004122120,110023031204100,102431411400001,114023202330100,102041114040102],
+        100000001100202: [100021230411014,110024000412302,111201024101100,100203141001002,102123020230114,114102204121201,114401204141201,101124000330204,114043422212002,100000304310200],
+        1043020200022002: [100020220410142,110000412003001,102011331131302,114000230023300,120202201010210,102021204013000,112042024000020,110022100044100,114400200004310,110003000024101],
+        132001114401013: [100030200102434,101101230010000,101422401012100,114103204100320,114020012300203,102112410222200,101141041022031,102000044000420,112300001103204,100001001021223],
+        1004004102101101: [101100120330110,114141302341111,112400020200104,112212220223012,101002014013300,102100030222104,114113002340212,111203010002220,114104120220323,112134100421303],
+        203100022301203: [102401141113031,103042420143020,110210400002012,113032012204012,100204311000400,100403012200201,102011001002000,112002111121013,114211100001224,102112004004002],
+        1032011304303210: [112300020201040,111200400003200,100002001003103,110200010000103,100020324204012,102021011130413,102022001131012,102302214110042,112220020202300,111222002220000],
+        201102440003011: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,100103104302044,102141212000200,102042000222002],
+        1003010041242224: [110230000000002,100004414101224,101003140322000,102002001130001,114201142324042,102213401111223,103211104021300,100011200101113,110112030121310,100000100412021],
+        101210210122022: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321],
+        112020211002020: [110041030411301,103301210142043,100002024200142,101110044200100,102411000200000,100400014321101,114100122342002,112012020230301,100010101020023,110033041200104],
+        1412022323211302: [111120002211010,101201200310001,102023120241131,102020000201200,104103101240204,114241000002004,111232000010230,100424200020200,101020320323422,114220200214400],
+        1021100100102111: [112001232000034,102100021341223,114112434000040,121000041000010,114001002304222,110142032004410,102113232001100,100122210400030,101140114002200,110113211003124],
+        1101220000020110: [103204214040130,114113104123200,101210210300031,110002021121023,102201100200430,100114021040000,114121300224141,100021020412110,103110000223000,103000210120000],
+        132134404311000: [101020100300420,100200021000412,110330000400112,110000000130104,110103041012020,111233314101101,112101100221122,114000212301112,110000020124221,101000200300221],
+        111004200220243: [100000210100030,100402042200000,110001440041003,100000220111021,101000430320220,100401022201110,101100001110030,102210011101110,112100302012023,100402000010203],
+        1141002203100003: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        220211320214200: [102121201340001,110400242110410,111302204123234,100030020423044,103013104002044,114211004004210,100034204310001,110011340001104,101023011142204,110034220114031],
+        130002321403110: [103020031403100,102200401111200,114003104031111,114200302341234,103202430100244,102302331003300,102320000221020,112131004020212,102003211120021,100033001020140],
+        1000212024422033: [100140201011204,104010100010424,103010014013304,102103030201001,101203104200224,100010221031023,100140000024021,101223024200014,112240404012020,101201024203004],
+        113101010422232: [114130012310000,102112432004423,100243120430140,112214431102032,100400120013011,102211241120212,110120032013303,102101230310000,102323011101210,114420000000420],
+        1101303000341000: [110124010031144,100021100013401,110311312000001,110010320023302,114130202311020,110002042130032,110244000000020,100003021032001,421432000003000,102210221121044],
+        1004102042113300: [111100214100402,110021130004103,114041302322043,103204324031320,112430002022342,114220212340004,100241004324000,111102310012110,103200011404234,103140244030030],
+        112004341000001: [102300324010203,102100142002204,110113004402201,100001134100120,114023214101310,110301232000100,110102400013020,114110340004414,110303401230040,110011200020114],
+        133011200040220: [100002400100121,114022444101022,100004440012400,100001000413102,114100044004101,120222000002200,110001002130011,102202014020040,110001344200402,142402303420001],
+        1010411020110302: [100041200010000,110111001300044,111000002202324,104132100011024,111211010001300,100113434301241,111014014401303,103210001422303,100100000022131,112042111120340],
+        1120204111221101: [111420012101422,110444144241024,114120030020202,110201002010420,102001101130120,101004020342000,100230410112111,114224012330022,1000310103100002,101240010310200],
+        104003013104100: [114002104014300,102000311102212,100130320031042,102010004040000,112433112020200,112301312020123,112023032000020,102000201101332,102231041120104,100111304300020],
+        103010421110403: [100231401213132,114210104113314,114021232300112,103001000120444,101144024000232,101302121004422,100000010011430,100114420000140,102022300241201,110200100001242],
+        110223002344104: [110400010031401,114112002313010,114022200031221,110100022040022,102100401410022,104440000012304,130430101032200,111024240404104,101001004012010,100113120033040],
+        1100103312223300: [102222320200001,102024101321401,101100021101232,100000321040000,101010001000432,100134101022112,102402004041120,103310200110020,100020031030323,103101200100001],
+        1122320140101221: [100203344301100,101000110300300,103420104020200,110131411300312,110200124240014,103100000124010,110030414202400,110032040000332,100011011200212,114200024101400],
+        132213141012022: [111113202211020,102000100202041,101021041001434,111200024131220,112004030241132,111203034440323,100232004221200,100201000011432,101042144010200,100112401020300],
+        1230000101040111: [102440001113120,114311204002010,110004221040341,103200204031212,102313114114000,114004102201202,100000101001431,101010014001032,100222014121024,102340140222011],
+        1003024441100101: [101220111020012,100004024202000,114200020003000,102112430210103,103000114012224,100033131043244,103000024040413,111102002220124,114423100000411,100014201030221],
+        124002102002000: [110041030411301,110001041213031,103301210142043,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002,111202012222402],
+        131043001013100: [103301210142043,101110044200100,102411000200000,110414300030001,100400014321101,112012020230301,100010101020023,102000221442214,103142111441040,102140101343110],
+        1140102323000314: [110200002101020,114104032211214,102410400233132,103101011210300,114213002320124,102200200240031,110011212030112,102101114021130,102012410213213,102002010240020],
+        1042032223340200: [110340014422102,101022400300001,102140004000100,103202130122102,100021000010213,100004101033223,100231004220242,112430010114123,130020100202200,120002101133400],
+        1104300420300020: [110301012022220,100000130410014,102303414113320,103401344004004,110010114200400,102201001122034,100132431021202,103122110400104,101001211002201,102100234001041],
+        1010123300040300: [103222100212012,114010112201001,101224244040310,111323210000204,102001030240003,121102200401021,101001324214240,102301010242231,121244120211020,121100000400034],
+        132041000031014: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        201022320130011: [110433012110300,110440201342022,112101414041022,112243340202002,111103412240000,101000204003420,110101240024120,110300310011030,100230101001020,112021300220021],
+        101114041010101: [110102042010220,101020124000413,111210000001101,114013400011030,101201104040034,102202000201220,101020111030400,103004104010210,101220024041000,102010300201414],
+        122430010030030: [110403302023130,110001004204310,100010311020030,100020000200000,100141230020203,101031121003021,100200120030203,103111201443022,110101214400030,114104040220130],
+        200110400021200: [100300041001121,101240004011021,101011001103200,101002244012322,102302210210322,100012401020212,100003131040012,103004044010300,111210004101111,114004130020232],
+        130021140213331: [114402404141241,110212022133311,101041210311410,110022004211030,102104101122100,112230240412241,110000204203220,100034141030202,101000300312123,102204141300100],
+        1410110013004410: [102102000233342,103302220110131,110100111121002],
+        121212010020410: [110330400010040,111000100012002,110022140120012,111102010012102,111300030012334,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        200013001002114: [110442104221030,101224001202324,111211144101202,100002001024100,102103130221330,110000300140010,103102134001111,102011310202304,100003114100011,100002314204210],
+        312124010300220: [104100012102004,110030002000422,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110021232000021,100001140000010],
+        1000212113420430: [102002040220110,102141220210212,111202024134001,100000014100202,111302120011012,101012104001020,100002314210021,103101031440430,102022001101234,111422202210212],
+        120221011100303: [102001404012100,1010400230221020,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311],
+        101004101220212: [102023104002000,111114010020011,100001204302200,100310111001140,100000004204201,114002104011010,110001221101201,102000031442000,102400014020400,110301011230230],
+        1011110400240232: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        1102202110002002: [101222101202341,100020220410142,110000412003001,120202201010210,112042024000020,110022100044100,114400200004310,110003000024101,100010024302100,100000011020412],
+        131110002301301: [102224101113104,114202144102100,103000214012040,100034140011211,102333204110024,102103002002000,102402001403121,114114300221122,100044334102300,112332301100223],
+        1034021200100143: [110300221220031,110201220000032,100021214313034,114300200000110,102000021133001,102301434110030,122011001202102,102100301400242,202023004201110,101001021001033],
+        1100003040100031: [101030000320122,100310301000321,102001002000000,102300010221100,110020004413300,100121320401222,110021200040000,100301124210103,112211024013040,100040014310010],
+        1124201010140100: [100111011011011,100030040101021,114310102300021,114014112300100,114030034013101,102400124020001,100102224234101,101013004001421,103000014011004,102010321411140],
+        1022210110130021: [1300422220310121,100422321032021,120032010212320,411001103222300,411311131413022,1220101103414143,320440200013001,410000244003240],
+        1120110020011410: [100304201000221,100112021020320,114212104110100,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,100301104104210,111022134112141],
+        113022000112320: [102300000221114,114301000002344,114212310002312,102104014001023,110200442120120,102020031123000,100022101040044,100024000102402,110043301220422,110022400021000],
+        1100100020220202: [100102204300424,110102221014102,102002010224011,114000030042240,100200020320224,100011010022200,101403144040010,104133020011042,110031132130311,102022001440012],
+        200311014111000: [110301120404342,102113304130002,103124420221210,114032024012040,110100000100220,112000210210301,102012124012120,103431021204400,100031341030021,101014004001312],
+        1010300002120034: [111102420023101,102102244000330,102140140210323,102001004012322,100004001041301,210202011010122,110420104220202,102320420240300,102222131120032,100203101000022],
+        1211000020003020: [110230000000002,110220301202400,101003140322000,110401001002400,102002001130001,103012000100400,114201142324042,102213401111223,100040120000031,100040030122003],
+        104130311211041: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        1101112101300324: [102000001132113,100042001020203,102002320220202,100120010421220,100000201041300,114011200003102,101020104000040,102432101112141,114412142320040,102100044000000],
+        213143030122200: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,102042204000300],
+        120024032114020: [100102004300104,101020004011302,114212100023341,102300021103201,102410101112322,102121041340000,110010140011021,100123014103104,100001011120400,120131201313314],
+        303013014000413: [100022041030000,110100104403201,102202000200010,102214204040420,100010430202422,112340020203003,102443011400041,100010430022021,100002021031032,100403022201202],
+        1020203111100020: [100131424302300,101212040011001,110201344402000,111011242233002,102320001000230,111110223004100,110020212130021,101422404040210,111040224110141,100120041224204],
+        222010011014131: [111001440020003,110200020010003,114121000002140,100002214100100,102120104003011,102100144001112,102000041441002,102120402000014,102000200210032,100041000100422],
+        1430130300002324: [102100201440001,110400011311001,103300120141130,110040002132020,111144202220301,100000000120200,102304011004310,103101410212231,102120044002231,100002404210001],
+        322400301320302: [111321220003002,100332104310222,100003201212143,112000014000303,110120200000111,102000010204312,103220434021030,110211200101114,102122001402410,110430001110403],
+        1020312101344012: [102011114002011,102042100242012,102144201402040,100014201021012,110000214214420,114021212301131,112010112000311,110030441223002,110440002111230,103002044010020],
+        1122122000102011: [102202010240210,102203101120000,100010204102001,100002010102040,112104000200322,102140201401023,100414000433302,114120000000300,103032224000200,102103200210010],
+        202213212001411: [114001024011334,102312144114200,120012102310332,101022220320012,103023404040213,114211000210320,112103000204401,103100004001120,101201114041014,102101034001100],
+        320214120004400: [110204034240010,104102030012121,110000011100204,102420001110401,101021111000022,102100111413012,101422021012014,103442014000100,103132014002131,122120120140231],
+        1040010003012010: [100220034322312,100203104322011,100430020001120,112002224004011,111102002240013,102110000210014,111101142110100,102000411410342,102310314114031,130200211400203],
+        1121100230120400: [101222101202341,110301442021010,110001332103022,100010024302100,112041000220020,102022400210202,111304202202230,111300000001323,110000002001040,110101000121214],
+        1000110011013122: [100002104204000],
+        1022200103210210: [110010020020011,100000001221100,110240242120033,103141100120000,101200400303000,112400002013000,100120440000022,100010314313000,114310424030011,101001134014021],
+        103001300220211: [110111001300044,111000002202324,111211010001300,114030020020301,111014014401303,103210001422303,100100000022131,112042111120340,100101141042243,100101100022012],
+        100122244200330: [102130020200000,101104020300301,102004204001111,102101004000011,100002040102100,110023330004130,100001104303411,100224204323201,110201124211431,103004240101010],
+        1200204124402002: [111302020010000,101300221003002,100000121020303,102403004020102,110200220010220,101000001001114,110020004203240,103303021404201,100020010420242,100100204232000],
+        142002102104021: [101000411030013,103012004020122,101322310313010,100000000410101,114403020000214,100003341020020,114110104121414,101313000312100,100040424212200,114040414102120],
+        102411011130240: [100011010414200,110430000400002,111121102240240,111320022200100,114000100020002,114104332310202,114410102310421,103131121421321,102101331342000,102010321131241],
+        202304002020040: [100000220100001,100122230031414,210303212040010,100000014200104,114011120024030,100101121010100,103002011240201,102440024021100,103231014021201,110110420034120],
+        102204104000000: [114201204111222,100104001041200,103300004021200,102004204041000,114210400000112,103230134011412,100012004101221,114122112202230,102301101004100,110432112111103],
+        310404203100341: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        1122001024210202: [114010330030011,103021220104200,101010020320000,112000210211020,100010324210003,101000000343443,110002400011111,100402132200000,111100300024000,103144040104204],
+        221134213203000: [100121230031032,112000431120410,103042024040104,102304104110001,101342300314204,114013124030022,100013200100011,114104200220022,100021221021201,110001244204302],
+        320031312101204: [100020001044100,1340120100441224,1301223001003430,102330042000001,232020104433104],
+        102241201232300: [101413321300222,110304111230123,100031004101000,102003011120001,104101420011121,114200224001003,110010141221420,102201201002010,114310224030143,111214003022100],
+        1043331100042020: [100021204100204,110211020000002,111230214102412,100113410410320,111201442222420,114012000022010,114222440003300,111022120023311,110041341300041,100031144310241],
+        1000404012003420: [102301000220000,100024114340002,110101231300241,110000140132110,102402010221231,100304100140104,100213444314000,104132100010310,100241000440432,110411200400010],
+        212123200410100: [110002320424340,102031100200300,114102134122020,103010034004303,102023032000000,103000204003200,112300020200242,100021044343014,110001002002424,111100404100043],
+        140000222031301: [110301042101400,112423414042122,100400320020104,110001404210000,102012201100202,100220021000001,102011210242012,100114330414120,102121314001202,101010001030001],
+        111112010310012: [111333104124202,101000304014100,100040011023101,101123232010002,114421242204443,110100222001100,103102000121300,110010331230210,102030020224102,102430014020010],
+        1012000440233031: [110041240000013,110131122012210,101021000341001,114010200040441,110032014420232,100012044101230,111304022202211,111021212200430,112010034020230,102100010222101],
+        1100112304402303: [102001000212142,114121000002140,110024042103114,110123042010000,100041000100422,114020002303212,102223231121242,102103132002023,100024121030022,100000020001022],
+        300100043121010: [103130314001202,102143314000241,100244210034300,114001102211300,101100322120020,103302320110042,110112324202034,110031422000002,100020321212233,114042324104012],
+        122431102040020: [102021001132040,110201201211024,110402420402001,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412,110123004401121],
+        202011242024002: [103114204002100,114230004110101,102122101023020,100001101033010,102142002000030,102023110221011,100100114302030,100100014302013,102020121130000,101204031024110],
+        200012020220101: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        1414410110001200: [101230114202200,100400000020230,114300124030100,102211020204231,112011204004112,100202031002101,111000004401312,101000034212001,100121114230123,102321014111202],
+        1114201310030110: [110132010032031,100200044102003,102210430233001,100110231000142,102420210200041,101003204003100,101312004211100,110010030101400,111022114120310,114003422242201],
+        1101002041041001: [102402434020211,114103002311110,101004344002124,114020024120011,100001001032400,102402030203003,103022011400040,102011011133120,101011411002311,114220102331110],
+        221241002003004: [102014130241422,110001002203134,111001002201122,103232040100100,110212020100040],
+        221000241023300: [111201000013222,114004104012300,100021014100123,101203211010000,101200314040213,112032020220030,102320120240012,100003021030220,103101324001100,102123021022412],
+        110004430041000: [111132230010402,110000400023242,114000004102010,100110014032131,110113041303100,110100314401022,111301102204130,103010104011202,101020220310112,110000421320024],
+        114103210330002: [102440104021410,102012214041011,110411344210012,102010214000220,100100014322200,101042134014101,111141022224102,103004030120101,112221404014110,101032011143223],
+        1000004213102000: [110443000000102,102430100200123,100040214102300,100002214202010,101424010303040,114042244102400,100034400410112,111020012203011,100100111043114,100000044241022],
+        143210020000210: [101210331023020,102021111412201,101201000011000,102322124114210,101011211002010,104110411304420,101401221011342,103200004024040,114220000002123,100010214302012],
+        1010222200110100: [110323344422123,110011010021004,111220002202002,110112001343021,100002101020204,114212000211041,100431204320300,110001040020213,110112121200203,110300200013040],
+        201113000120214: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,112002104003412,114201204111002],
+        1011213312000014: [111200212223002,114141044000340,114020444100202,114020232302203,102320014112013,114402000003130,101004001001201,101001000321032,100023100104410,100024000010031],
+        200200022302040: [110140201222000,114112232313023,100102001000010,112032200230231,112312420202020,114130004004200,103000031240330,101020304002132,112220004010404,112102400202324],
+        141201040004004: [100034304101213,114002014100310,112023140212112,112313301100030,102101031412121,100020020121132,102102010220401,100001020100030,100021120201020,111000024404021],
+        220320200002034: [102100010233022,114313022302101,103001324000110,100002014200021,102300401001010,103212320212011,114000030014400,111120034400000],
+        102201300004002: [144131233204044,120130001004000,101001131032132,110102030010210,102220211120002,114014010033321,101400104042212,1003022312322100,102001244001224,103441112000230],
+        1403121024040210: [101020024212042,100041204212120,100410110420202,112423424042102,100320431000002,411200101402221,100120214230002,103204200103440,100210004104001,101410201111300],
+        220300201301120: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,100301020420101,102002202000000,100022024100041,102010410213111],
+        122303001300104: [114211440211420,102200024042003,114320004030033,100231411001200,111010000022022,102112200321043,101000021140240,100001011040221,110221102221300,101021311001001],
+        111203120100014: [102044104002014,102022000220004,110210001310230,103001220104301,100010144303000,100102434300310,100421200001003,114024200040223,100133404030004,102240001100210],
+        220020202243103: [114003010024040,123102202010320,101020211140102,102104120200134,100120230012241,104210140212241,101112240323103,110203232020010,110043200023212,103441014002310],
+        130230234000404: [140420100400012,111001202231001,122012440110401,202220202402001],
+        1124221120201422: [100040201012040,114100222310230,114131002342130,110002022003101,110224130002014,100403122201202,100100220403100,102303304020122,100310210142030,114132012200110],
+        131344111020111: [100001024201214,103433121201311,103404001214121,110113211301114,122004120000100,102300002103012,113030410122021,111400202101243,101012114000111,101020211140102],
+        1040302200342312: [402000401204030,114124020222032,102121221343020,100140201000222,110110000004210,101400010303002,104200202141001,112104424022201,130030220200012,112200110000221],
+        200002300140211: [101021014002020,112000404000001,110320332022210,102230040200111,111241000001011,100240034101400,100220304100400,102102004000001,111000412203041,102400121110000],
+        134200201020210: [114021412213020,110030002000422,100032121024110,100402431012022,110040002034100,102031024013013,102402330230011,110044020020202,102022400211311,102324410243220],
+        112120200100343: [110130102010010,110100030123401,110001010030000,110102202013213,110021404214210,100003110022310,100000400100142,114102000003021,102220314013103,102002034001310],
+        1000144202110034: [103033004011100,111320122204241,110132212010200,101000024000022,100000204310440,110110100033221,110000224410201,110100400020121,110011304200020,102030021102211],
+        1004033332023033: [103214010102022,100043324210140,102324014112020,100023024211011,102404021403141,100010004313001,100003201021001,100122020011232,100002200410030,100121031014040],
+        130220204001330: [101400004021110,100000241120103,114232000002310,100402000000101,101000114003100,102202301300240,110010044203000,111010014400030,112211030204411,110210102120000],
+        210002202200000: [103211144033404,102123040212103,100041301021020,102314224010213,112113012010000,100000120000202,111000030043110,100002314203420,102001121134000,114220414000310],
+        101220020001403: [102342014111202,114040002330341,411010033020221,114102020422002,1224320120024001,200002003223300,1000412032200202,300204110434340,111100001002113,132220124203004],
+        102120012021134: [110400000002213,114132100210100],
+        114000223000041: [100011200121231,100102004100201,114040020021023,111230114102201,101400300300111,101220200301400,100001101021134,102122302000300,100000300202000,101022031034002],
+        101110430324122: [110200002031302,101403220331230,102040021121030,100000204130001,100412441010422,101010200312020,101040204210210,100000201034001,110000324412304,110000201230100],
+        102113104000201: [102041310200042,110320202023400,111431110000042,110301030010140,114101420030202,114421242204443,110104422010121,110100222001100,110302204433321,101010001002000],
+        1000302330420004: [100000020004101,110130014400011,110011232100412,100220040142222,110232002101410,110200021210212,110131021240303,103100101442233,100424331001120,100000031220100],
+        300220113110120: [114021000012310,101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,100400231000200,101000100340001],
+        1004301013110120: [103310020140014,112000204002100,110210030100111,100041200002402,100000000411240,102030021443010,112300220202122,114010000024012,103100421422110,112120002302004],
+        212044320041421: [100244104101010,100200011002201,100211310140340,100200024104410,100220011004202,100000101232030,102101200200034,102243201302244,104430421104102,104100402102320],
+        1030202410202120: [102222111120010,103200224033413,102300440221022,104120201242031,102320110240231,100100101011200,100133001220421,100122204301312,101022220322100,100114113200203],
+        110020300043342: [102112020222030,110320022101120,100022431030100,100022004301043,102214101120310,114000040031021,102400001110113,102002224011000,101030204214013,100004201211032],
+        120220023043020: [110024404211001,110100022010010,100120001040202,102140140210112,100004220412010,101222020304402,101201130302002,111020400044101,411120024124200,114202102321131],
+        130300014233341: [100102211021000,114203142321301,103141011240230],
+        1113010112422040: [101012131000024,102120221022200,102110141410402,101044001032114,114221104114000,100001111032112],
+        110020210041024: [100020400410010,102103441142340,101211210304010,102100001004041,110000403400000,100000414104102,100001020044101,410310420012412,101000020100020,403002310120143],
+        1003113220430003: [102422114040010,102020004001311,100101101010100,114103212312012,102321044112101,100022024100041,114231212342200,100020011043020,100021231020200,114201112322020],
+        1101000402201400: [102000004002101,110202000000310,100422314300200,101403014020203,102141410230020,100042030120422,101134224001001,110020001224021,112100000200031,110003032000041],
+        101002121200031: [101203231002222,111430032210010,100000204100040,101003030304240,112113224020012,103002211240301,100220120432010,100004014202422,110411232110220,110220042121003],
+        1141011011423232: [100012014341003,101100411104001,112111010201220,112222122032004,110100134403210,102300210242404,114300432300422,114101144001040,100040414212104,100000424304010],
+        1410200232000002: [102422114040010,100022041001002,101204400304011,114032424122040,102020004001311,100101101010100,100301020420101,114103212312012,102321044112101,102002202000000],
+        1042200002202040: [111223402220443,110430000400002,114033000032021,102401004043011,111320022200100,100300001002041,103000200122014,102203001120342,103133004002010,101202330304024],
+        213021140040011: [102230040200031,102101204000010,114230230000123,104121001242101,102024400223212,110040004411003,110211110001322,100014110201012,102200310201220,110300014422013],
+        1003112022201200: [111000022202402,100430211011410,110010340040012,110014032101430,104421312102244,114131014101010,102240214041033,114200322333401,103010021422042,100000001022401],
+        1001031040033013: [110023401320200,102301224110000,110000312001020,102133211401043,102010214000003,114032204104044,103002010100104,100220310430010,102124011340031,102410110232000],
+        1020014220203011: [100012320001320,102000331120104,114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101],
+        130003010203330: [102211220201114,103000021411202,102101004030220,102003001132213,102100204030012,111432000004311],
+        220210100042200: [102102430310202,101020030332430,101022004214304,100020101031131,101010000323030,101001414212120,103310220113140,114200202330330,103101101440200,100000101031020],
+        1003010414041111: [111200200000232,111410210001002,100101001011114,101430004040203,103122104002013,101020404210020,114040414014202,100000024301031,112022140234004,100143440001301],
+        312040323040010: [101211104040023,103042004001000,114233024034201,114030002301220,100221100432104,112003120220142,114010430040320,114303222301000,110001022011241,113423202410240],
+        1400412203240330: [101020341034234,102113101342000,100212304243333,100431001010310,110002010042440,102022401412124,100121210402002,102212004030221,100030404311202,101410010330014],
+        1024110200120012: [111300232202103,102301401002404,110122120100022,102012004010000,102400100220000,102001104012021,100242444300104,102002104014323,100401241010122,100010010102122],
+        1040202023020134: [100000020004101,110130014400011,110232002101410,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300,114200444140203,100000124211001],
+        1100220301211442: [101240210310204,100000021023020,100100220423210,100231020112302,102000111441024,101110204004210,114240000000041,110004010004010,102210220202001,100110040020104],
+        1222211202201004: [103111004004410,114220012340000,110102141201112,103112024030310,112210222040000,111100002220221,114011014010300,100000020413022,102244101111124,104103031240201],
+        1201104001013221: [102000324040000,110222200103041,112411400202001,110212311111030,110000110022002,140143400110002,102042211100202,102010000200240,114000002302204,112431244044400],
+        221100201100100: [112030004004130,101340041000104,104100212101403,112001102000201,110404212112030,110104220400022,100040020000313,110211130002000,110134310404210,101420000330441],
+        1114122030000002: [110104112010103,111102004100101,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231,114022400020320],
+        100142421420401: [102002212000021,102013201320403,101134004004013,112230122032000,114300300000020,100020001040312,102203011002032,101000324011134,114302022300311,102220301302413],
+        212100201001020: [100200101000000,103110431441100,100011004340114,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110,101400300300111],
+        1400100010000112: [110230400000202,102012314004200,102112304002110,100432014100103,100104220412020],
+        102430101140002: [102310000222133,114104310000002,102100011413420,100001001034141,112123102010143,102130201140012,100010204202202,101101404003003,112422320200210,112100211100021],
+        1102202210214234: [102104101340301,101033011001100,110014010012200,100100004230402,102110304020201,110202420004101,100021220010031,100000014211030,100000200100141,111303012201100],
+        200012204110023: [111011304114002,103000001402120,100020314304002,102120400200003,101020300320020,101220301020130,111012310000204,101222200301130,112340340203340,103203314020144],
+        1101000220032204: [100000031211103,114210424101200,100420110312244,101420014021400,112230324002000,112320301100420,110101024402203,112001202000203,111034200010244,101122000320210],
+        1002114144412000: [114202012340131,110322034430002,102323131001211,112023102003010,101010104011313,102000002041020,100320021000000,102034100223241,102020014021021,102240234121424],
+        132032202211121: [110232022123020,103140044032100,100010240101221,102100010213413,101024011034002,100032224101400,103033044023040,102403101400210,101021410320100,102430010202411],
+        1441300113003204: [110000021202100,100420014301410,100010101020403,110302030011010,100101300011010,100020111001344,100022121024103,114401032320120,101201124013202,114223002333020],
+        212100103212123: [110120200032000,102140011140002,101211001023004,102204024011121,101012100320111,110311100001210,100214200000020,100000012212010,112122034022100,111230102222200],
+        132114221021100: [100002010413410,101433010300204,114310100000110,112002020214003,102010231121200,100140301000432,114400022311400,110010220410220,114040010022000,101133104002112],
+        222223344212101: [100000201020000,102030024112031,102401011401222,100002002212000,102114341341012,111420200002021,111001224121320,104042022102100,104030002100140,102104120200021],
+        201140431200121: [100114234102203,102030000223410,111101312240400,100231124320130,114000010012243,103040424010400,101141111100022,100000404100021,101332011001000,102103000310202],
+        102004443030100: [111302204133040,110300000011120,100000221020004,101213020304210,111020010022310,114011302300101,102420021400002,103221200100302,100432211002022,100424444303100],
+        212024120403302: [110240301111040,111123014100000,114200000003241,103103404004112,100110120023012,101042044010040,112021014022022,112002322032030,101040401030013,111300002204430],
+        1122013000001010: [103313111402304,102031212011001,100010044312000,110213220000201,101204034200001,101002200021030,100031011012000,102000141010102,110304220100002],
+        1140001000214020: [101221020040220,114022412330004,100103104302044,101041030320401,102141212000200,101203121020430,102100104002224,102020004000014,100000211023014,100400001001300],
+        1130320404222410: [103111001422000,111244302220204,100042100102211,102110030200120,100202140000111,101114000332010,112112211102024,114001032300011,100142044103021,101100010012423],
+        201121430001102: [100030324200410,114202244112111,102110202001010,100031021033010,114011404103142,114200020003431,114041002212302,101002200343110,103332044032320,100212024322044],
+        1001220024010440: [102011201101012,102300304110030,114412000003141,103020041420212,100112011040011,100401024300321,100102030423010,102101004022104,101432240300300,101232104042101],
+        112220043001024: [101221422120021,103001024002110,100231114320100,100001000002210,100400320033201,110011402100202,101210300302302,110100012120201,102020131413423,110020204200342],
+        200402011402220: [110341200403110,101130034000022,100120004230130,102030041134220,110000400142301,114414014142230,100000004302210,111001404111020,100024041230002,102000104044004],
+        1003110001234320: [104132340011314,102203304123030,114012040020310,110000212104130,110200200004002,101000040320021,114131040224332,114002210021300,103230114000201,100123020032031],
+        1203102204020140: [100000010202003,114234324112000,103200101401010,100002231021012,102400001110102,120413040002400,112410024040000,102300234110002,101221001202021,102111134001302],
+        1000430300020111: [102021001132040,110203131211112,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320],
+        202100013022332: [111134204102000,110422200000213,101020031000300,110000400000233,112000112030300,110240010002041,110021040001310,102120001120141,101003044001244,100131121222212],
+        212101100440000: [100031300002022,110210022120040,110000021221134,103002044002032,100101020402424,102201112000001,112211120202000,114211040011201,100020100423404,110001222202031],
+        1040003320021143: [110010000111020,100430014323000,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101],
+        1141001103140230: [103000024014022,103010000100410,100040404102010,102203240202202,110002110021301,114231020001120,100100211012004,102340202000001,110020402100200,102023210221301],
+        1000030000032103: [100102000022402,100000001033001,100124100031200,101010200321022,103304014010000,103123041444340,102200231120202,103342100110221,101021220300001,113023341020302],
+        104023223104010: [100323401000042,110103020011001,110210410123112,101100004000244,101000014211204,101011204004013,114422004142011,110022010002210],
+        1002220100110100: [100122420031012,114200334112132,100210204343141,100000104300130,102202401114113,102140201342144,101021001031113,100100124234311,100022004310010,100010114310001],
+        132310100001031: [144131233204044,120130001004000,101001131032132,110102030010210,102220211120002,114014010033321,101400104042212,1003022312322100,102001244001224,103441112000230],
+        1001303020002020: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        300211300011104: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,103140124002022,101042421021120,114013204013220,102000100221400,114241204001213],
+        1041044202311111: [110401004221204,111112000011222,100322444314002,101003301020022,100102431021300,110200212041001,100001030100030,112012004004000,112044204000441,103141100104002],
+        1020202240114112: [110200321303322,100010030100011,102012124012120,103002041402004,114120034123300,114010112332112,114204202332300,114121304121000,102221024044110,102030004000400],
+        124300110101232: [102000004002101,110202000000310,110000010120043,100422314300200,102403404004110,110301311303102,102141410230020,100042030120422,110020001224021,110103111120042],
+        300412012111013: [100040240004024,100010000002400,112000013244041,114020100001120,101002041000124,102100000231232,102030034011211,102000400221230,102122001404300,110441342010200],
+        1021041112002002: [114020200020222,114330002323002,114001020042001,102202000240014,103014101432000,100003014100041,102100121342000,112404410204002,111222002224302,102214011120002],
+        102334000202111: [100424331001120,111040300024044,111020232200302,103124000104424,102100102002012,110201014241230,102110431342142,114201410004440,100040331221012,114442130003110],
+        102211130414013: [110310001202220,111131224100212,112000112001400,112111412011211,101240000302141,103414034000124,100002020110200,112410024043011,100003200400110,101222201020020],
+        124001011241420: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,104101201240100,110000011012202,112102112301130,101244324043222],
+        104220142130201: [100040201012040,112021004003303,114100222310230,100011120000004,114131002342130,110002022003101,110224130002014,100403122201202,102303304020122,100310210142030],
+        1000013140040000: [102311004012010,101020401033332,100012001023022,101104414002010,102112012004120,111112242211204,110422020000111,100004020021344,100100000000042,100000041201200],
+        1041120100004010: [102224420201000,103013034012221,110302311302101,100000120002200],
+        134202314303143: [110102401201204,103020200141000,102400100230000,102414034040100,100212030414010,101200020303202,102020041321410,111340300010010,114120420223002,102013224003020],
+        1001420010000230: [1020102021344321,101030301001232,100104302001300,1001102321230101,1002001200441033,220200021120010,100021204230002,1401214001003110,1023121121030343],
+        132200000042020: [101211214040304,110412001213211,102040234002003,100100021013214,110420202110040,101301204220200,102304422004020,100000110400321,114011120033402,110020330014410],
+        103032204302020: [103110044003033,100123041001320,110310010113001,114414120002440,100221101003010,100300314101444,101130430331440,100002120004202,102200002021022,112123104020101],
+        1131304130122001: [103010231401402,101011400302300,112003012002211,112002414002043,112442004040022,114140222200101,111104232241021,110013232131112,113022341002031,100013411042212],
+        1114320030021030: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,111212114131222,102140001441301,102223400201104,102342120222031,102221010201113],
+        121002010411143: [103102300102243,102113020210120,111202004100121,100020004310022,100222220001202,100003100122232,102000414010131,110410300402321,110020014410200,110320100400100],
+        1040211400101414: [110233012120121,100000241030333,100020011020010,101000204002210,102000131130020,110112210000002,100001204130442,102100321410122,114024004020023,1014400221004004],
+        210200000101402: [100422211004214,102100000210002,102121010210004,114013214010111,100010004210020,112002100240200,100001404100110,100002044200330,101213110310042,101424044043122],
+        1400413220404104: [100003030003020,110410000104042,100000040413000,100001034310012,121310232003222,110011300143002,100220021000033,112011312002001,102110201023020,101344331000033],
+        100003101320110: [100010104331200,110342022000001,101000204210021,110100121224222,110002142120000,102011011321024,112311212021024,110100100030303,100043100103044,110302030004323],
+        124100012022014: [101032111230411,103010110120020,110100032122000,101020210301131,103201004020101,110200001314040],
+        103140020100202: [100023421041402,103101224000011,101144134001102,102200042000104,103002000104400,110114021000012,103002144042123,110012220002021,102304204110040,112020004002110],
+        100021323044101: [110400000002213,101101230331040],
+        102330100031011: [110120102041110,114002242304240,102100111341030,110213131203122,101203440304221,112114004043430,100002334340000,110010432000001,102111044004101,100121101023404],
+        123000400311001: [101002204212400,114041204104222,102112300201410,100100121043010,100323120143000,110432111241204,114200200002223,112123142010120,101002321032002,101121100013002],
+        221041130130032: [111120002211010,101201200310001,102023120241131,102020000201200,114241000002004,111232000010230,100424200020200,101020320323422,114220200214400,102010001104000],
+        1100202311010001: [101010001000031,100021020104221,111120024101141,103201214021013,110310304430141,102113304130002,102000131131100,103124420221210,110201002043201,100011034302423],
+        103000100303220: [110111222040014,110100000123402,103003024001001,102004204000422,103010000120000,114211324100034,102440234021012,100240011000000,100002030413101,103000310141142],
+        1403120024024100: [103123004002102,101020000320220,110111140011114,114131304142010,110132011002023,101100020300101,114423210001210,101040024002000,114020024010020,102040111124412],
+        1200302124321320: [101230002122040,101210241204043,104102040011120,111311120014011,100123011004113,100420001002101,102430121110340,102020121102120,112141104020201,102000024000002],
+        241120112010000: [102000001132113,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,111321314133000,100004410120102,111222214101043,102100044000000],
+        1041302012300000: [100002014200331,102012004000003,100411000030110,102041201121230,101000210303342,103000121424330,101012204221200,100300114310112,100202004324322,100143244100101],
+        1040120000222002: [100024234201100,100010234114300,100010044310002,100331200141014,130000420243230,100232104120201,110112204224100,102212234021233,110224102230230,100120411200320],
+        1003040010110001: [100032401030200,100021420120102,100014014210044,100022214101010,112434200202302,100310410140021,102001000221230,103221100211210,112400040102210,111110244102101],
+        1003020101210132: [114444244144110,114201004110120,114033234032101,100412114304000,103001020120202,101004411032102,101000020302400,102021014012210,102244221114031,112400000200011],
+        1140002103000201: [102001130220001,101410211021400,100004214100234,103000011400001,102104241412223,102002421442002,111131214422402,103100000210002,100000004200324,100013001031000],
+        130122010311204: [102030111100022,102120000310301,100200040430313,100010021220004,112040021112102,100010000000131,101034124001203,100000311031000,100220124220140,100011101020000],
+        321330000144224: [101000004210011,111230342220010,114010024011000,102000101410201,100004111024200,103302100140200,121103000144034,100211044311141,100111104002300,103002011432010],
+        120221230002203: [111222202220021,111432124443120,103423201200020,110332111334020,111042000000020,110000001012000],
+        132002410000033: [110243234240200,101301014221122,114110200212210,102041220200010,102130000312121,100400122201222,110231210001113,110012130410040,103210034021301,100104101200201],
+        101101010210344: [110201201211024,110202000000310,110000010120043,100422314300200,102403404004110,102141410230020,110020001224021,101110020013040,101012410301010,112100000200031],
+        202300121000400: [110320414420310,110100100101041,100420124100211,103010211222002,101040120320230,110013021300010,101043234000412,101220000040002,100422001002123,114010010010002],
+        222100300214200: [110223010013204,102230400202000,100000121040140,102241330244410,100330041000221,100342011001201,114102100034220,100044000103202,102023020203230,114110200004041],
+        1100013000421002: [103100030100010,102013110201200,100042000102010,112000230220102,102013000202010,100200001210240,112010022302321,101040224003400,102304111101041,103204101402321],
+        103000012020402: [100404000022030,102301121100200,111131004101000,102010300200001,113003022402221,114400242311000,102201102021043],
+        1000201230301400: [100021104340400,100003000410404,100230404343341,102002301442023,114200322333401,102403001400101,112000134002211,100000001020020,101221022120042,102034200222010],
+        1023410200200310: [100040300102020,100012230204000,110131214220303,110143101120300,101101200311102,112401402023020,103142104001331,100200204123011,100301400040120,103031120143010],
+        1102103311313110: [100000201020000,102030024112031,102401011401222,100002002212000,102114341341012,111420200002021,103421124042304,104000102100004,104021021224211,100100134300302],
+        120200232204041: [111441300003100,111211414134201,114200044000012,100140101203122,101000121143120,100411310430002,112401102010230,111003000021043,101020030300010,102242011301200],
+        133101010301002: [110101231202300,102023324010020,100130444102110,114000004103003,100001204342232,111131002212014,103010304012101,102210044010110,112000404000001,112000001121002],
+        1002032043002014: [100004101032202,112100002011214,114401022311200,114020004020300,110114130114210,100004321021120,102300420220003,101400211012100,110012112003243,102104000213123],
+        210300102002144: [104244002023000,120133001040211,112200431102021,111320124130040,110000110000231,100142041012023,110000000411120,110302100010342,101301030313022,111440222100012],
+        1000100104404124: [112213000200301,100003224334120,100404224300012,110204130004030,110202120003032,100322004314021,102022010220223,100404000020012,102343301100440,102410434000220],
+        1042412021024000: [101240220300022,103011431401300,100022000410041,102040300241403,103020000102011,100013011020311,114021004100210,103000310100320,102103331400000,101040421033204],
+        1421000230400442: [102200004120034,101000024002230,111001200003214,102100021410210,110012020021204,101001420312100,100022201044101,102200010204000,100031000413030,100130241010201],
+        1404022130033110: [114032104100141,101213114040141,102210101002412,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,100002021033103],
+        1210000442011122: [100000044240301,101140021101302,111120224100101,114440120000030,101023041001203,100211400140102,101010040320111,103023101420104,114300014030021,114000010041302],
+        1040120310344430: [100004214303020,131001224202110,100100400113040,131100001014001,102211122121042,114020420021403,111000014110301,110000012130411,102213244002203,114340224031221],
+        1001130310002130: [102001404012100,102340120222440,102122214131011,114223204100010,111041202200140,100023031000024,111300400002313,100023014313010,114021040010311,100020004101012],
+        1020001131220331: [100020331001310,100402010022123,110200131102200,100430204220020,104110241240001,110011242202000,102201012022300,110000421302031,112131442302432,103202111411203],
+        1040212410000200: [101033101002303,102001104010010,112002030210041,110002102003311,100041130040040,111000030042302,111013004412334,110402410002301,110023032002000,101201010301001],
+        1111013232224020: [103011041410132,100102134031030,110233000100021,100112104301200,100021242211014,101001210201440,101110040002210,110211104432213,111401304441341],
+        1000010210231030: [103114204002100,100112011040011,100401024300321,114230004110101,102101004022104,101232104042101,100001101033010,100000201022420,103000011403101,100100014302013],
+        1100010300003000: [111121100010021,110310034424102,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202,110043400012000,100010020101222],
+        304410010232404: [100114004100001,114102300004024,112102201102030,103222244003021,102420011111224,100340114211043,110232020002221,100033001220020,101100120334014,114233002340141],
+        1020040001002013: [100214104301120,101002000321201,114300014030310,100130004300103,100040004331010,102320234112041,112420030202242,101001424004240,112321101102000,101401201013110],
+        1102020022034142: [110400010001201,112012002002332,110412010002312,101004414000144,100143221000221,102000214001143,100312104100320,101002224000124,101022110304020,100104104002111],
+        240012020420010: [110013030403023,103010204010010,112003002030002,110401231001202,101031211140304,114230110212040,100000034301140,102111011142022,114132142312022,111210404410344],
+        140132113010222: [110330400010040,100101231004020,110010100022010,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        100301020102120: [110202102121414,100110014103210,100041204331000,114012032240012,102130004002131,110143020121321,101413001100003,110130020003201,102414231403301,101402211011032],
+        1031020022320001: [102021001132040,110200400000020,100032201024101,110203131211112,102301004110004,110402420402001,110000112100402,100002204340200,111140000000000,110020041310021],
+        1102000101201030: [103124001420200,100220210034042,102401001110000,112011300223041,102002001133122,100204011000221,100040020103014,100000201032240,102031010200002,101240204232402],
+        1120222011041100: [101321001000010,101010424210144,102203011120021,100130014300042,114034400040402,100010100102032,112010344023013,114002002300222,102104000210330,101401300301000],
+        110010000102200: [110102401201204,100222004320102,100110004103122,102200130202201,103020200141000,102414034040100,100212030414010,100000111034100,103132114002002,100412200002013],
+        1000202000424040: [112102202040000,110100104404110,102110042001043,114100002204212,102003000212104,102000100220240,102030204000041,102110021341014,100210120430200,110203221112042],
+        1023200020002101: [102010011411233,114004322320200,101030114211022,100403220020024,110033124420110,103102100122414,100121034230014,114322002322044,112040200210223,112002142310023],
+        1021000100401030: [114000222211300,102130040230200,114030034013200,102303214031001,100001010101032,102212241110430,101124314020402,110130402140002,114432002322240,101402104020302],
+        100113200442214: [103310001400000,110042014203200,100033304311022,111001210040344,100122401023041,100131014232113,100221000430010,100400302201222,110204020000322,101104301110011],
+        1020310211300232: [110441234224400,103100014031411,110000300424304,100032121024110,110013122130200,114020204102020,103121221400012,102022400211311,110030400004330,102004204001111],
+        122011330001240: [103000004012003,112303041103203,102101024022111,102020231440400,102144200210031,114030304122412,102121104130242,114104220000003,100112011040312,101013200321014],
+        1044033110002024: [102010244010000,114430412322343,114200034110031,100000430014301,114423002314000,114040002210432,102214020242110,114010134021022,100010040122204,103314044033003],
+        1103102304021202: [110000222102001,114400012323303,100100400412043,111000000020420,114320132322101,114320010000123,100021044312310,113200212430221,100010020023102,100000210000040],
+        200231242112001: [102202310203222,114404010003320,100042001020203,114130210231020,112114324040000,100004410120102,111222214101043,101011211003002,100000241000002,101001040304214],
+        200331011000030: [100100331000022,114222040214020,102000111441024,114240000000041,102032000223300,101013024000102,101000441140230,111300214121201,100100030402001,102400400200100],
+        1022000100401212: [110010302000004,110410000104042,100014014203233,111422100034314,100102001013034,100000040413000,102030414003000,101342020314000,121310232003222,141000013100220],
+        1001041002002004: [110002302010012,101212001204031,112100232040011,100132034104220,112032410212442,110021233042220,102002200222041,102404414041110,102144044001000,101013211000001],
+        221102021000012: [100000430122100,101200100304010,100000001033001,102020200220310,100124100031200,101010200321022,102000231122032,103304014010000,114020002212200,112402002010210],
+        1004212300002131: [114000024100022,101022004214304,101001231032003,100043420411130,101001020322010,114112244122013,103310220113140,112144232304210,102443421400110,100043041020120],
+        240012400200230: [100140200020242,100004120021240,111201022223123,100131101201030,110001020030002,111421014442003,100100244002230,101010001000241,102000221100240,110120014401401],
+        302210220143200: [102123220230210,101110004021320,102201230200104,103012101401220,103001334010240,100214324104012,101333201002122,103200021404423,102003114002001,102013010220212],
+        1102200224120041: [114012304010103,101232404040100,100044000201201,103320304021024,102102020203131,100000301041003,114401322310000,101110404001000,100000000101012,100043204100144],
+        121014100100044: [100020011041102,103022004000010,112110201100113,100412131010010,100130024000300,101411201111042,112122234040200,114122100211000,101101001110221,102302400213001],
+        1013221232224201: [100203321001221,102310400244210,112111040230130,100004101023023,103010041241404,110333010011034,110423301004320,114000300011121,110401321340320,101110140302324],
+        1121100201201012: [110202032123210,111122004100020,110412244220110,102411314024401,114001002300430,110101230100001,102200034024120,104102130014402,110314042102142,111120122242010],
+        141021101412421: [111302020010000,114213222330042,101300221003002,104100212101311,100000121020303,102403004020102,110200220010220,101000001001114,103303021404201,100020010420242],
+        1040412113004002: [100014100100001,102100004130301,111120004100414,102201101122100,101034024000101,103340410140122,100102114100420,111012202111021,100103144302200,101414100300221],
+        1123140233130000: [100121230031032,112000431120410,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,114013124030022,100013200100011,114104200220022],
+        110020043303032: [100024000110221,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411],
+        220141021000201: [110442104221030,101224001202324,103102134001111,102011310202304,100002301040000,112000132001414,111124402243200,102001331441012,100203014121400,110042002002040],
+        121044040131204: [102133011413110,111001200041102,114022424102243,101223020300040,103111420110210,102034324000220,102022400203211,101230020303000,111340130010314,101214240300041],
+        223222211002011: [110040102001121,110200321303322,114032024012040,103002041402004,102103030210003,103010011401200,114121134124014,103013224034023,100020014210002,100001421042312],
+        1010002004220233: [100004101032202,112100002011214,114401022311200,114020004020300,102420400200000,110114130114210,104200200001200,100004321021120,140243003020120,100003040102022],
+        100002100000004: [111030212113431,110001030120020,103222004032000,102233034000002,112130004021000,100100200021431,112101202012010,111212024101031,101013040300032,102112314002011],
+        100000201101100: [103012034041202,100100204100022,103130031241103,103234031200401,114011320024214,100233001000010,110322311300120,100204431000210,112100204000103,110022040140021],
+        1022102240321112: [103034010121101,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,100023014313010,114021040010311,114140004123122,100002301021040],
+        121312113301020: [112311011101001,100210201001001,101100001101401,110100124402042,111120402212201,100101021021114,102120404134413,100210010430242,101411001011011,110040212000010],
+        133122111020100: [110021000410432,100042304102210,100013030100002,101010010320112,112000021122010,100021111043012,110124041140000,100010044101002,100001000100403,100020124100010],
+        230330000200020: [114002104014300,102000311102212,102010004040000,112433112020200,102231041120104,114132420004104,114100110220013,101431304024200,103004021430003,100040404202000],
+        1420420332402401: [100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010,100004001000211,114230112330402],
+        130022024022302: [101001400301113,103101024004200,103024000103302,103300021402104,102014111102023,102102024000001,101301014220002,101012044004042,112410300200001,102020304000321],
+        220002202343040: [102114340204022,101000011030111,1303043020124234,114403402311003,111143400421100,110221310000130,100223331020012,120313211020000,1013001120112020,1311314200100310],
+        1143000013403000: [101020204214020,100131144232400,101001004220021,110232241101002,102104101340430,111333020000020,112233010221200,114020020001014,102201401001104,101003200300401],
+        231323022320340: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,111212114131222,102140001441301,102223400201104,102342120222031,102221010201113],
+        212311220313403: [103300121401234,100122200020013,100004004210020,102331104112002,110121112010004,114132002200241,102330144110211,100404000020300,110214202124100,101200004233120],
+        120040001042420: [114343002322014,114100022342130,100013024312024,111012002200101,102102211140013,110020220022010,110210020002243,110121220000022,103400100130300,112400434040004],
+        1420010032000210: [110000212101040,110301011234204,110021410020203,111120002100412,103330421400224,112024232302040,114013022304040,101023410321122,102021311100042,111000304400311],
+        240402440400100: [110111032140220,100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,114200022343003,100024101022010],
+        111100013020240: [101000201031101,131204100021112,113003221014312,103440324001431,123400040222113,103102104003010,132220204100102,131202200011113,102044400022000,112120140231000],
+        1004040110002100: [101221121202421,110020102000133,100000204342022,100001020012120,111042022141200,101441101010020,100100241020020,100002004342004,103010330100320,110113042000320],
+        1120212202100110: [112342210200100,101021020331240,100020400003003,114100234000201],
+        100000000140300: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        102301020111410: [101022014222024,110100120400020,100032000101014,114000024101202,111311002224001,114030000030012,100032134101100,112010024023002,114231032340010,100000010202201],
+        200000200033000: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,102002020243020,114002002300201,102040021121030,102102211140013],
+        1001304001303142: [100000431020101,100244100032320,110010212101240,104104001243020,100032040000331,104124102100301,110002010440412,110111420033313,100201310000404,103100200103020],
+        241003123120040: [100422040021304,102000024011300,100021320123031,100014041042003,100002010413410,101011210300000,101433010300204,102114321401000,100002414201103,101002221140440],
+        130210200223122: [102020314012030,101002100323042,114110000002010,102110300210002,100010200101222,114004000020012,101031001032010,114442102310324,102324400243001,100440000030010],
+        121021240400431: [101043224001442,110041100141020,101001004002100,110300214430000,110002001220310,111331104131204,101040204002221,112200004001330,102300121100001,110421102110004],
+        141422230020000: [102230004030112,100100221012100,1002022012411300,214021333002200,112102000202302,103013200104400,100130401022113,112001421111242,1011001024420302,114112402340003],
+        1110103102004001: [103204424022010,110304304420001,102110402001413,102131334020220,114210024001201,1031024222000122,200003020011141,100020111230000,114102010224000,114301012300202],
+        200000010033000: [111320012221132,102302144110440,102143202000400,111020002202333,111130224102101,101321311004010,102110241342210,100002320411400,114201000004122,100143034304100],
+        1102030130400422: [100000044301222,111012034402110,114221004034110,111100104104202,101223041020020,102002204000124,100011230120014,101104024002242,110133120011001,100400010013033],
+        103242023022021: [100013400423030,100033100421220,100032221044041,112210034000434,110131142113202,100030011041024,100011114313403,111010234110022],
+        213010221032130: [114410024110002,111200210001023,101101401020424,114030220011120,100002200100100,112410110201010,100020000120134,112422100200404,110202001212002,110001014204010],
+        1022203112204104: [102000101130132,100402412200004,112040100210110,111201210000411,102204311100014,110213331312003],
+        103324010102300: [110114001202122,103034031400131,100001010100220,114002114012041,102000004012011,110101100012002,110001002004240,103322000112244,100030220002102,111010024401332],
+        1030020201140321: [100032004200002,100020241021124,112342201131331,100010200414111,100121044230002,112003442002011,110010022132422,111000042200101,110043130440321,100244341003000],
+        1000112000102220: [100400210010032,110022030110040,102011211321000,102124210200120,112112004042000,110010144200414,102010112000301,101023324003111,102330021000022,100000021221004],
+        140131110100120: [102231102020200,102120201140110,100331200141014,110112204224100,100200011002042,102212234021233,110224102230230,100120411200320,112401344040043],
+        240420400202110: [102212300202110,100012120201211,100024414212001,100000014310020,100022204300002,101014014211233,100412120433120,101010100312002],
+        1012000100224014: [112003001133011,101002240304011,100201134100140,110034100040021,102000221032102,110213002132000,103010000110210,102022201020004,100100424030003,101000131030120],
+        1014301024113321: [110212012114431,100001140020000,100012101223021,110031301200114,114002020044120,100021004302202,102202200240222,114102010220042,102021301441201,104103102103201],
+        1000200001222201: [110003000042343,100020341001100,110110414402000,101100001100404,110011000043131,100121214300203,100022221044012,110312300010200,110001120021021,1020110000101002],
+        302000010323001: [102143124001400,100011011020440,101002121000111,114023314013200,100000201024213,114003422304142,111001404112102,102010201122000,114011042300202,101400031014311],
+        213000402300202: [102142221342202,103043404000202,102420000202033,101012400343401,100020101020404,100002411021201,102110010210330,100012020410400,111111102240001,102122111402420],
+        114002013020030: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        1104000001201040: [103142021211011,313040122221220,102121030212020,114411024142133,103004201240410,100022024340200,110230142122333,110010002002000,110204012111004,112311411133302],
+        111001000401004: [110002212130403,101042411000122,114101002311013,100133004000124,112440104042121,114200124000134,100224210432130,100120204234213,100003011231420,100222200002003],
+        100021020102200: [100113220020101,114031000022030,102014002000401,103103241421322,114121012340044,102104304023201,103310300140324,100002224244002,114310200002400,103211220100010],
+        1003012121103120: [110332202020000,112421004012141,102224410201003,110030021010001,112001321113132,114224034000310,102332101001000,114002100024002,114424214144024,103101440121101],
+        210212004000200: [110002420020000,100002210401034,112011340213224,101013011030413,111301042202102,101421041100223,102000111122140,100001210000030,101034231002130,114220204031100],
+        1031042010002130: [102004004002321,102001010240202,111301022200213,110310012024144,114213002341424,112031000230000,112012240221124,100440310030003,102344100222410,110431020000020],
+        1041440213142030: [102301401002404,100232214222204,102012004010000,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        110310001230122: [102311004012010,101020401033332,100012001023022,102112012004120,111321000002001,101210011042021,100042100003104,100004020021344,112420044040112,100100000000042],
+        1002022011231114: [100030010422041,114003014100103,112421112010232,102010420200220,112234001100044,102033001100221,100210144220030,100001410012241,101003004000010,101001011002301],
+        100041031024132: [102201444044432,114111140220220,114004100011010,114302010000013,100100124003241,100002310120001,100111014231402,110220022111241,114100404000100,100022024100312],
+        1100111000121110: [100200011002200,112001112002104,113134002412222,102100311320110,110430002112002,102240030230010,110030010120002,110242024430440,111003212230033,111020404402004],
+        100004331000314: [100002044211310,110430122111140,104012302104014,102320221000230,1323100312100112,242022202122014,103014004000240,1140000400200300,101141224002302,111101144404022],
+        101014020002002: [114020000020001,1302101004142102,110001001100001,201014000241421,110400102312140,114223013001001,1002000010441103,100111204004442,1300011022000001,401400200400300],
+        114000140411200: [111110232242220,100121104300001,110002041102000,103032040110110,100110001201401,112000042002001,100200130430232,103022101412303,103011044000000,100101124002120],
+        233020400311200: [110414402020021,101000034000220,114312012300300,101012104210042,101430001010032,112402012020000,103322241400404,103210120100143,101010024213100,100040000123130],
+        1124242430341002: [114400214140002,114024022241001,111342314121314,100102014230000,103410004001234,100402022200304,102242024030234,114012434103044,110001001320030,114222010210204],
+        111202040214200: [100240000032004,102000000210211,111010204401023,103142444002002,101200010300001,102211300204221,114420232314210,100301004321221,100020000410313,101220200040320],
+        103312000220111: [102141401343022,114131304142010,102110314002123,101100020300101,100111121000000,111131124100300,101020204010401,102040111124412,102113100203200,112310231134114],
+        1020111021110122: [102343230224321,102112231020231,102320000240102,100042144200000,114201104111034,102310140240012,102030304001101,100020420121003,103020004011414,102102201340311],
+        1013402100221003: [100000014102130,100022044344000,140104013031303,101101001020004,110010404413302,100011144312002,110004001104031,100013001214140,110002000040202,110110424221134],
+        100002202300342: [102021001132040,110201201211024,110402420402001,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412,110123004401121],
+        101322213042004: [114024312212020,103104001440422,114220302314020,112030101110231,103200024030232,111014024112203,102013434000000,101102411114421,110000020042112,110231004242101],
+        1022004104121240: [111400124420002,110020402002000,101033124000402,102401000201121,103310421404111,103000020120303,111013232200403,100112044024030,101202024231020,114100042311200],
+        1041110400020423: [100200024104410,104100402102320,104133012103021,102200011100420,110020231100021,102102304004203,104132311242210,101040210312111,102210244040143,101100224000200],
+        130033111010012: [103012011434022,114103402201140,101313004232122,100001004301400,100031001020001,102111420210110,102104131414203,102203314011321,102000204001042,101231220300123],
+        103012141104024: [102113300230021,100010044310002,130000420243230,100232104120201,114221000004311],
+        1240030323000021: [114031022302044,102031011441221,102021201410011,114103020221100,102002024000132,100401001011010,100212221002300,102400004021004,102240021302000,103202140103403],
+        1143132040003030: [114030110041300,103112004030003,102300001002144,103132424000410,112013102004422,100400220013232,110010002000100],
+        1010001102001304: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,114002002300201,111012002200101,102102211140013,100311314310000],
+        212130202420022: [100313030142202,101221020300020,102013401100100,112210102030020,102043030202102,102300014110023,114230024111000,100402120031033,102103422004103,100010024202200],
+        101014002002031: [112000001123004,103400100131022,101004141000312,100010014313003,114100212210001,100022230100202,110100020004310,114143200211211,102002001101211,110112022120231],
+        240100123042024: [101042104010000,114000122301411,102111002001230,110410000002004,111424002101030,100414231011020,114121110030203,100110044301024,111100040001003,100042404100401],
+        1424233242210312: [102041310200042,110320202023400,111431110000042,110301030010140,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022],
+        311001100230040: [114040102210432,100034004211240,102140121410131,112040200233002,102113111343110,103234100101221,114002220010031,103103311424020,101030010320024,100001010412000],
+        122322003230020: [110141104201032,103200000101342,100021000101421,102103034000310,110011042100122,102001231131043,112000000212221,143304200441210,101022134002430,112031020230410],
+        1000020340012002: [112124004022322,111300210014020,102103201320411,100100031043410,101033214211000,114001100024243,114100012204104,110141112044000,100034244303010,102003104000032],
+        1000002031024030: [110202012100020,102303010241010,111342020011220,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144,100001221021031],
+        121212143303410: [104130242103012,100002131024210,102000101132400,102412101112121,112023140212112,112313301100030,102110244000130,102101031412121,102313310224103,114000312301300],
+        1012030100120121: [102301004011202,102000201100400,110034120023130,102101004002000,100110010410230,112121040200102,103000101240211,114221040210200,100134044003303,110220010010120],
+        102303023001302: [100032041021210,110004301222000,110414300030001,100030020011022,114310000001232,111202012222402,102040041320010,103203401400132,103142111441040,110104002010100],
+        1000100140043210: [114443330001442,103101041421200,102222321000301,102040244010100,101204444040122,114031030041040,102114240204013,112104222012023,102031021133300,100011301043341],
+        1000000230032042: [110102224201130,102104131412412,114020312300021,102400204043012,100000000200102,101011011000320,114420200001202,102100200233123,101012421000011,114023004031001],
+        224400120211044: [100002030102221,110414000032411,100120301022212,112203100201021,110000142000203,100013220400031,100200000430401,112203424001001,110310322100124,114000010010203],
+        1010240040002121: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,100103104302044,102141212000200,102042000222002],
+        1400101021431000: [102000001132113,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,100004410120102,111222214101043,114412142320040,102100044000000],
+        101310324040001: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        110013423010002: [101041310301004,110021122100000,103001224014142,114431224113420,114033012202420,111211002241330,102012000213011,112040004000012,112410214043412,102113201401300],
+        1100423401003000: [100004221020020,100013214101120,103321300144024,103241114031030,100143001000202,112040222001200,102010304012020,103131032021030,100004124302203,110200231314311],
+        101000020211200: [103111401420301,110124010031144,102140230210111,100011210412002,112004431132202,114130202311020,112120402013111,100434444323300,110230112032040,114031400042021],
+        120011030120000: [110204034240010,104102030012121,110000011100204,102110231441040,101021111000022,102100111413012,100113214302002,103442014000100,103021000144000,103132014002131],
+        1032020012230112: [110230000000002,110220301202400,100004414101224,101003140322000,110401001002400,102002001130001,103012000100400,114201142324042,102213401111223,100040120000031],
+        1110112230110132: [102323304112342,114003222201103,110240020100212,100022204300000,112012211120102,100101040400110,114221002340120,101002204001310,114220200000002,102324004112400],
+        1002112332100123: [110301011234204,114211102321011,103330421400224,102000200201422,102412004022002,103220124034124,100032204200023,100023211030203,102104301004310,112000132302101],
+        1040000021224110: [114040100030400,102301011002321,101012011022300,110003301213002,103412224020402,112033311122000,100210001002210,102110120202141,114241032332313,112120201101200],
+        101122020023011: [103122114004113,102242301122200,110030110122402,101344140314114,102100201400122,100011111022300,114032300011302,100234004033234,101222221020440,100230020410200],
+        121012011002001: [101210144014403,102111420233012,110000020022324,100020231201012,102210424042300,100101101020002,110030420410024,111002012202324,402104002030100,101032040320334],
+        1004000430310231: [110213002132000,100311221002322,102022420220121,102401214020202,112102204024002,101000131030120,100001301214030,111140000012120,100410040430220,101041404002020],
+        1021311102043111: [104110212100123,101200140044000,102214014010030,100021230411014,110024000412302,102331104110040,100002134300030,100130414300000,112310002020302,102002201413004],
+        240011130320214: [101042411000122,112041402312040,103023021244000,110104434402221,100224210432130,101002024012004,101421210302410,112030022300112,103100020122200,110241130013040],
+        133402201020122: [103140014002031,112003020220120,100043024210301,102014001130100,103400201200000,114021200012000,102422131400024,103210304000030,102340101000041,111201000013222],
+        300134100002212: [110224314430000,102203301123001,103100134001001,103210400110122,114030314123101,101201124013202,111322012202310,100400201010000,100010321043134,111220020010043],
+        300010200313412: [110202210102120,114001004100003,100041014102004,110320022101120,102131421000411,101412030302001,102222021124112,114000040031021,102400001110113,100404201012020],
+        1030111104004221: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,112020012002031],
+        100341200042220: [110000202003120,100130220400000,102312300220000,112221024002232,101020111140040,102041111130300,101042200303012,110401202021231,100240204101020,113020012400412],
+        133102000010222: [111130224102101,102322020212020,114403304140021,102103021340120,100031131042030,112201422040000,114021040001000,114024130031020,101220201000030,114022300011000],
+        130044324004400: [102303110220130,100124120011100,114003004031430,100220304220004,114110000214110,113004001021230,102411000200112,110332432020400,100120120402022,112110322044020],
+        124021132014040: [114021000012310,101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,100400231000200,112143144020012],
+        141004020022004: [104140321242022,110020004422304,110310000104014,103204301200000,110122022041331,103010311410024,103403411212300,111102412112040,102230002023220,103012041241100],
+        223001001300404: [102000140200220,114233210000201,100002001024100,102103130221330,110011002100114,114102220033034,114004020020313,102022421132024,103303041402240,100002121021022],
+        101211101320010: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,114004142244000,111212114131222,102140001441301,111012030022123,110000011220204],
+        1003120112012004: [103220000100202,103122224034122,100142011002402,114004200021000,101302331000221,101111440324120,102302221002020,102101114000401,110102002120401,102124301120200],
+        1114204043000300: [110312332102012,101404204001310,101003100302100,103000331422023,101400101100001,100100020401310,101040234210040,102003424021402,110021330033102,101002034003411],
+        1120100200003322: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1124101002002300: [102001404012100,112004202302034,103300004021200,102122214131011,100023031000024,103230134011412,100020004101012,102402000201011,102311011000200,102021021101204],
+        123002100034100: [102422001400000,100301224310100,103002104012101,103220130211414,101020220323012,100012324202240,112101102012030,110003410100312,114000022300301,114000000021100],
+        1003011202213222: [101011004212201,110032022002020,100214230430124,103031234000122,103230011412301,101042001021012,101100104002023,100400000010020,100124021201021,100102001000000],
+        100130000013301: [114020024120310,121021032342113,110220210110004,1122204031101014,100003204214031,1100220200041014],
+        1001121021323132: [110112102211042,114200022300033,101400220303133,110431442110400,114011120021012,100100111041320,101420010300310,110000004210112,102334001004100,104100001240034],
+        1012100044011013: [111101010010203,110110212010011,103120101441202,110011000022102,101002121003112,100004104210221,102202410240103,400014404414011,100030211040004,100000010101402],
+        133020140000230: [111102110012000,101001400301113,103101024004200,101000344010212,103300021402104,102100431342023,102102024000001,100104400021023,114003104032034,102020304000321],
+        1140232120001101: [102000144014000,102100104002302,102120010230031,111202300010010,102020304000242,101232321020000,110002400023342,100120044233220,103402201212100,113031010134002],
+        132103142201004: [102300324010203,102100142002204,102040011121100,110113004402201,100030024303023,102042204000300,100001134100120,114023214101310,110301232000100,110102400013020],
+        1100412112100411: [100041200010000,110111001300044,111000002202324,104132100011024,111211010001300,100113434301241,114030020020301,111014014401303,103210001422303,100100000022131],
+        124031212031103: [102110104004031,110130100010331,114004004100022,142100000024013,110022000022202,114300402320043,103110214004242,120002222420113,110404044220000,101010211033230],
+        1140002323210032: [114000102240100,103200021401030,230222010240012,112102121020220,130300100333301,100020120024010,112042042001002,114102002344100,100011204340230,100202400002411],
+        1141001143204003: [103210400110122,101112020300011,114104302341000,100400201010000,100010321043134,111220020010043,102100021342024,102244400201444,101010001000121,101232104040130],
+        1030021010204101: [102020044000030,100002001022412,111202320012012,100003001020010,102442004020131,101011124210300,112101422301001,101301220311200,110040014213300,100320421002220],
+        1020112001300220: [102000020223013,114040102301100,112121032014014,102310111001210,100020241043022,114413232320000,100100001040134,102100121341102,100002004130101,100301024310020],
+        110100401302202: [100103200020313,110000431213211,100414024102342,101120120330222],
+        1003232100422034: [110104231221040,100042110122000,114400322311044,101021021002110,103224401422304,112112122012022,100401140033104,102120100212020,100020114200220,102411130201102],
+        1004201300020013: [100001300102001,100220101204311,112033124022002,101013114001130,110022134210202,110110102042312,110440211340302,100001300000022,101004104010020,102001014003100],
+        102012021000021: [111101122102222,110034004420011,103000114001000,102242024030234,110141201000200,100003344214000,114400300000221,110314014422011,111022214113044,103104024000023],
+        243300413202000: [110041030411301,110001041213031,103301210142043,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002,111202012222402],
+        243103020000241: [110020402002000,102042221101230,101033124000402,103310421404111,102101134004010,103000020120303,100112044024030,103240100102101,101202024231020,114100042311200],
+        224044330400040: [103102101422031,102130124130100,112404002023002,102022020204430,103214021400010,114003422304142,100012401020212,110100022010014,102042231130200,103144220102102],
+        110124302311002: [102010011411233,101030114211022,110033124420110,112002142310023,100040101020201,102102240210310,114231220004002,112020300241320,110410012020110,100004424230021],
+        1100013010001240: [111020044112020,102004404000111,100020040101021,110100312012040,101104312040120,114044400021021,111412122101012,100003200100331,100000124200111,112220434011000],
+        130010402030010: [111102440020002,101202001024340,100004000102302,103312010113222,110130022140122,112002304004203,100034110413403,101030040320021,114104000002301,102232110201100],
+        1000102120101030: [103442110132330,102111310313001,100203010434220,102140322001242,114023044020211,112013124020300,102202321114004,110401214221203,200200133341004,100242001200000],
+        1141200320010130: [114213002340022,101400104042212,100000021022400,144200203310100,1003022312322100,102001244001224,114030214020000,102023422000000,120101041020020,102330204110410],
+        1010204301300213: [110200400000020,110203131211112,102301004110004,110021100023210,103122000100403,100002204340200,114103412201420,111140000000000,110014300041302,110020041310021],
+        200340341310214: [102130124130100,101002121000111,100000201024213,102022020204430,114003422304142,100012401020212,111001404112102,101400031014311,102110230200201,101240404011020],
+        310020203111444: [114120030223400,114423312314004,100340100424220,101202014010412,102144031403200,100041004202111,342003122142040,100243404101011,110421104220200,102322124112422],
+        1000221100000124: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,112004021121002],
+        120242012440140: [100111334330000,110023240021020,100300433210004,102240100011000,100400213242110,100020201002004,120021202100230,102320120240200,100000012221111,110102301010411],
+        1140023440311401: [100430211011410,110010340040012,111010124402202,110211020121140,100020244310231,101000030321102,102110320210011,114221234002100,100033100101240,102420001110301],
+        212102030132222: [103312010113213,110020240022142,114401212310021,110131022111320,112000401132020,111302014120120,110013034211021,103001214042003,101020241021030,110020001300000],
+        140241400202022: [103010021422042,101110000010122,102100404000021,110323002022000,104123302100200,100103414300020,110010121333141,102402034020001,111202324134000,101433201010200],
+        130002021100101: [103003001400110,102143011343003,112022001120410,100341410422102,111002012200131,101400040330021,112210001102424,110101321301120,110001032002011,114102012344003],
+        1000300014100040: [101020044011003,100021014100124,100122040012210,101040000300110,114202124000200,112041432030144,114000120020004,114241110000102,102140214001144,110200202121001],
+        1142021241010010: [103000011402201,110210134244100,102121041441000,114102022200000,110233010002020,111203034103022,102101304000012,114020202241323,110004402131000,102132421000100],
+        1121140022033000: [100121230031032,112000431120410,103042024040104,102304104110001,102000200200301,100104211044110,110200101200402,101342300314204,114241222321321,114013124030022],
+        124402000221041: [100000044204004,101020224210014,114202244101041,100122310020400,112423102010012,102112022001414,101212214011134,100001121023210,100012101020002,114204120000200],
+        1040033030201302: [101230111024130,1112100200412130,1320100232411004,100121120102303,1020024112001010,120100010104132,423203002400042],
+        210001020023030: [111102104100334,111210014102030,110401100001104,111440000000202,111200344442041,103141001240021,100001401034130,101220200304110,110420014242010,110403102222001],
+        1101432000001304: [110230000000002,110220301202400,101003140322000,110401001002400,103012000100400,110210024220020,100401424300314,100040120000031,114200142324000,112100322040040],
+        214414123000031: [104132340011314,114012040020310,103132004002242,110000212104130,110200200004002,114131040224332,100123020032031,121002023311103,100021124203441,102022411412401],
+        1002100411213122: [100422000031421,101214104041040,110104231221040,100102000010243,112410034040040,103031410122401,103101000100022,100040021031201,103000300120001,100020141044111],
+        1002400232420012: [102004300220000,102010212000134,102110021341422,114241022332104,101403020334021,100010001040104,110141020400341,114133102311014,102341204111304,103211001422023],
+        144212103223430: [110011414240022,111142010020301,102100104000040,100000144104100,100010044300003,112120224040040,103301410110110,112114324040000,102124031023100,100204104320231],
+        221340140432000: [101220111020012,111401200000040,102300122004231,101041204222101,100024024211001,102110001342114,102042444010014,102330311004110,114032110040320,111203012221030],
+        202331013000002: [110100100031014,114001002300430,110411130100013,100021044210012,102212034044212,111341300011434,100401304302243,114101212202230,100420001001112,102140400210434],
+        1000223001223311: [114041400010321,101002234002002,100000310102011,102220130204110,102331020242011,102012030220314,100244244322120,100220034341000,102101134030334,102103202002232],
+        120022010300020: [101121211101004,101114101012020,101001304001101,103000110142041,102002112041034,102041111020030,110022001201023,103101124003110,112401144042000,101222044204000],
+        1100030000444204: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        222201234100023: [100002001013012,114120220214130,100002200001011,100120001204102],
+        112310442004211: [111030124112220,110000230010221,110202110113000,100324114310222,114001020022140,110002242100100,114012004020230,110000104211010,101022221002220,110220400401033],
+        130013314023140: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1103040030102440],
+        1010224102021001: [101240220300022,100011000202214,102200130202201,102002020220000,100102120422002,100002010014040,100001300012442,100022000410041,103020000102011,103001031420203],
+        122430102020402: [220212211200433,110002144411414,100003024303000,101204110411102,102142302000411,103222440102000,102440420200031,110002241012102,100131100001021,100000100422002],
+        204103001102322: [100440031001120,102020200223310,103220011420242,102032012000101,101001400301113,101004201001232,112102102302000,102141231343401,101231104200000,100002120200101],
+        211130330201010: [101221414041100,100032424312011,101110301040312,102204010204023,103041020101400,111300402200003,114141024004011,110022341300320,100210301002021,103040000000212],
+        1113002200100201: [110041030411301,110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,110033041200104,102000221442214],
+        1010010411302200: [101010241003223,102000020220000,114412142320040,100003044100101,114012402332300,102220211122102,114420022314022,102234004010003,110204314402021,103121004002210],
+        1044002110020220: [100400224300040,111144042240304,102000131131100,110201002043201,102400021401101,102141201342300,102140210230000,102131211411102,101001004012413,102024244002012],
+        1201222201213002: [100110000410200,110120200030233,100132040031022,102442004020131,110031010430100,100432431000310,100004000014032,101014121024142,101001201022304,102104004002400],
+        1041121212311212: [102000221101002,102000431130020,103102314001204,103120004004010,103222120102031,111104404100200,114432224142000,100202234320210,102112400210210,114001332210232],
+        100040011201012: [101230002122040,101210241204043,104102040011120,111311120014011,100123011004113,100420001002101,102430121110340,102020121102120,112141104020201,102000024000002],
+        1100100120201300: [100301301000024,102020111324200,101044400300030,100100310024040,101024024002120,103212010100200,132224022200202,100231004331011,110203002102023,103442121212103],
+        202310400211312: [114200212322001,100401210020002,112210322040121,100402042200000,110001440041003,100010111022102,100220300410430,101402010301000,100000220111021,103140120112001],
+        101300043401010: [110101200032041,113402202420020,100000012212010,110041002000220,100040111030202,101142410330304,103110001242101,103431011210021,111132304100420,110433222223310],
+        1120000022102114: [100321004011041,110002342100014,110021312002040,111101042244210,110441010002400,110124002040002,103110314000100,110023410122402,114203104001000,114302200014241],
+        1002022101340120: [103203224022224,100143200421104,110213010400012,100123221201001,112313000202012,114022114010220,100010001043004,100011410400320,101112020330001,110102101002040],
+        1020421022112102: [112010032340022,114120304000212,100141410402200,114111202313213,101042041021001,101211414040000,100010031232443,100242024100000,100114020414244,100012404203210],
+        1400020342002003: [112012000220043,102414000203000,111101400022211,111320100000001,112002202000010,114001102301101,101010041003004,102000121442001,114011020020242,114030100040000],
+        1021420024210010: [110431442110400,114011120021012,100100111041320,101420010300310,110000004210112,102334001004100,111321424123422,100004000002200,100001140411014,101312014234200],
+        1410343201224101: [102242304042410,112032012004300,101001034002001,102000201131020,1010120030012200,101024411001024,221104221024023,100010410420002,102123332000002,112000034000041],
+        1021212301002021: [114104200220022,102010244010000,114430412322343,100000430014301,114010134021022,114102224104002,100040240003341,114422404110312,112140134003231,102403144000120],
+        111012320010012: [102000034011002,103204000110000,100001014340021,100000034312214,102103001340022,112032000211000,134402411001001,110032020020001,100002110000131,112021020220112],
+        132234122213020: [103040014000114,110012040030401,111020142230010],
+        1040111100100000: [111122010010414,102040404041112,114140030222402,103331304032010,100121311021322,112301120200041,111003302200334,101000200321321,102440000234100,103030100144420],
+        1130210231004021: [120402022102021,114400210002021,102010002000402,114201402332241,114211030021301,210412232040000,114030214020000,114022000013011,111232232222210,102230104030012],
+        1003220132012024: [100030204300220,101021334000222,114010122330030,100011024201101,111222442222413,110030122102303,103044001412002,102211124032000,110400200000240,110101301000001],
+        1444200133302110: [100101024303332,100013201020230,112300101101010,114301302323032,114200304000002,1300040101002020,123310121130130,1001210043013022,143442111023013,1022003020311200],
+        1022120000030130: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102,100030010102102],
+        101000000200420: [110020301220324,103040020122332,102020100243032,102012200202303,101110404021211,103110041442122,114042014102321,112003110242131,102112222001200,100011114300032],
+        1040030020032021: [101004200304221,111203102223243,114221334111220,100010034310013,114311400000224,100040101001132,112211132040204,102113232001100,101110044000400,102102021002000],
+        1123032011000000: [111001000020034,112011041110422,101410014021040,110001032010100,102242210200010,114422214113202,1100020120011024,112411210202004,110002421122010,102001200200221],
+        1024034310220010: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1120120243000100: [120101012430440,103102124000030,111000324110232,103402001200000,100400120022020,102120300203403,110323300004120,111102204403003,111401114423000,110010120020200],
+        112100410221222: [110002004410202,102103114000024,101101410010023,112041002002124,140343100002103,400200234320200,101041200320322,100020124204330,110200320000000,100001424102041],
+        1000100012210014: [103134014000340,104103100010141,101440004041120,111101222240010,100040210411102,101031214000041,100110004102034,114112020212203,102040140220220,114300132321233],
+        1142300113030404: [100022041030000,102202000200010,100010430202422,112340020203003,102443011400041,100010430022021,103032441431121,111300030040030,111003000041302,112434400204320],
+        1022042041011200: [111110214100223,100012000414010,101200020300410,100110224304220,102330211001002,114002110022030,112211110200310,102212141112000,100023020200332,114020204100242],
+        121221003240413: [101211201202134,103120104030100,102020030220200,110100440400010,110003434410403,111110000014401,100000004130010,101300204230000,114002004100140,102311020240020],
+        110300322300102: [102130411411444,103103204000110,100441301014410,102404004001203,114001024010010,102101224000013,111212204420203,114230020000033,101012004002440,103110400120002],
+        131134004004000: [110110010022302,103000431240102,114011004114100,110101140002212,110420000104020,110410140000110,100000401031111,102004101410420,110204242124012,110022301301002],
+        130232344011120: [110011011212100,101134030011000,103220211421421,110123230124040,131000001020102,100044130000101,110420001000202,100102110402220,110412310030001,114012022302022],
+        122201020003224: [110441234224400,103100014031411,110000300424304,100032121024110,110013122130200,114020204102020,103121221400012,102022400211311,110030400004330,102004204001111],
+        132444244300220: [102140014000020,103011020140013,110030002102021,112200401102102,110304200001120,110022042000121,111122104100001,110402324221020,102412021114100,102110004030420],
+        100240020000010: [100001044201401,103022120100401,112411042012210,100110444302011,102142140210001,102000202041211,100211004220330,100000304104221,101002104004003,114124004001310],
+        1023120202043100: [102104002004301,102144002001232,110000221223422,102002104001004,101440001104012,102441140234014,100411130430221,102344004014110,101120121103012,111032102202040],
+        1004324022323001: [111000000010022,102040001123104,100210414104124,110403022010001,112110001103200,100204004123220,114300202300030,103401140121121,112100122010004,100100240010030],
+        100230002202140: [104102202102142,100000401022041,101012310301211,101204234044003,122002011010101,103014134000300,112001002030020,112030200241011,112034002002000,114100202203044],
+        1422202204201044: [100310304310342,100010041031020,100042400001023,112402000200101,100020201221000,101010020301243,111010130022401,112140214000020,101310000314110,100013111020021],
+        101000000100031: [114210100002014,114440140000234,100021100420321,100400000020412,112230002033202,100401222201402,110000001012100,102101011123100,101440001100100,111210200002411],
+        1023401013100200: [101230002122040,111124004101012,101210241204043,104102040011120,114103220220104,102120004001310,102430121110340,102020121102120,112141104020201,101200111020111],
+        122041001000441: [111320012221132,102302144110440,102143202000400,111020002202333,101321311004010,102110241342210,100002320411400,100143034304100,114021002331014,100100104102112],
+        1020020021012120: [102001404012100,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,100023014313010,114021040010311,100020004101012,102402000201011],
+        100202040412040: [100043104240004,110002034200042,100001240100033,114100304002030,102100001340122,103414101212410,100424030024330,100123021223100,112302011102312,102400041110112],
+        1003022434000120: [100200101000000,103110431441100,102101324130010,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110,101400300300111],
+        130220041030320: [102200001120020,100004400410040,100004210400203,100002431220022,110300102021320,102301221102000,101012004001204,111411000030222,100040011020200,101414411104011],
+        103103120201012: [103000004012003,114000014014332,112303041103203,102101024022111,102020231440400,114030304122412,100023041030400,102014011102400,100020410124020,101013200321014],
+        1004022310201032: [110004301222000,110221000111302,110022140120012,110024140142000,100321001001010,110321302022203,100002204310140,110110210011002,110221322123012,100020320002000],
+        1120011002410001: [100034204311021,101121024024120,100102204231301,112201104011200,103020420121211,110341024422102,111031030040220,110024120430323,101403200302022,111400102104003],
+        122013003210012: [103102011422101,102412201400413,102201102000000,110022000442031,112140202302210,110001042012030,100200104102011,110432132110010,101420304041030,110040222132423],
+        111110310130240: [102231130213210,103214010102022,102000402041014,100043324210140,100023024211011,102404021403141,100003201021001,100122020011232,110002021121023,111102042213043],
+        102331242012033: [100104341010424,103142210104020,114400240003003,112203001103411,101022001002030,100212024121000,101104040302120,100010001032200,100221110101420,102441030231300],
+        1002301200031033: [102340221000300,101000130320340,112401314040311,100110020031042,102011004013000,110422102110221,100220124221000,100402002201002,111110004402021,101011014002032],
+        1120212202013102: [101201000300102,100100034002202,103102111210103,103420240124040,100120110111021,112121011101002,103111010120121,111134204101221,110241211302001,110140300034040],
+        1021003340101023: [110002302010012,114444044140220,101212001204031,112100232040011,100242011002002,112032410212442,110021233042220,102002200222041,102404414041110,102144044001000],
+        110141003140201: [110124012142001,103110044002000,100000000413211,103024214000000,100403110022202,100021031020121,100001104100010,101013004000002,103131021420001,111200230002002],
+        1024120002020144: [111104102242110,102210011101414,100002200410230,100044010200300,100003010413400,103334120114003,114032124013234,110112131124012,102143020230411,100440221001232],
+        242303322114230: [111001440020003,102020204001132,110200020010003,100002214100100,102120104003011,102100144001112,120020201100121,102000041441002,102120402000014,102000200210032],
+        1010342240120403: [102001404012100,1010400230221020,102302200210010,102340120222440,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122],
+        1144043310022002: [100042301001230,110002240134040,100040014310020,114000014100101,110031324200020,101110310331140,100300001003012,101430021010144,111210412213001,110000022201310],
+        1120001001311304: [110100120400020,102113200210140,100031021033010,114030000030012,100000010202201,100012024210210,100120004300001,111140214103110,100010201030330,114022232303310],
+        1403112003023002: [114400022321400,101302340312230,101000034000203,100200321200200,112044200243000,100002300421000,100202140430012,110200301210031,110000420020100,114304212302401],
+        302212402010210: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,114113104123200,102030304001101,100020420121003,102300040221403,100114021040000],
+        312003244021002: [103301210142043,101110044200100,102411000200000,100400014321101,112012020230301,100010101020023,102000221442214,103142111441040,102140101343110,102242000200420],
+        114400102222313: [111100114401014,110003112130100,110103011302220,102020440242023,101230000302304,100030021041110,103222010114132,102300121004102,100042024100140,100110004332200],
+        132420000000431: [112020200242131,110240024241203,102020204010103,112432120204400,103130044003012,100022214101010,110001340112402,100142221013104,103040421244210,111111014402340],
+        103200001210003: [100000241020300,111021030042411,110131011000142,100201134320102,110000302122001,103302031401001,110202012020000,110043414212400,111110004101041,100402000010424],
+        220414040300300: [100202030140400,101024130300401,110010321011300,142011423130201,102000401130243,114031212300003,100442230030000,114002132240212,111001122224141,100000220000220],
+        1044310320020000: [102144201343034,100430010431044,111020122230001,110111221000100,102100204000340,110330221300223,112020442310202,100023001030212,114344200014300,102240001302103],
+        1420020302042323: [110141201302122,100000411231000,100023001222000,101002124002220,100101004230030,102103012004030,114034000012210,101044004000132,114114004140010,101010241113102],
+        1012010000131300: [100122220023132,110204002043423,100032101220041,112003011121310,110110110133103,100130101220012,100400030022020,114302144020021,111012414402104,114122020031041],
+        1000202200021220: [100000144201001,114202202322132,100000011032020,102022201320204,100002111020330,114432200001322,101040404000121,110300230102002,110103032012200,100010004340042],
+        1040004023000010: [114200402332011,103240411403020,100020101031131,101010000323030,114200202330330,103101101440200,102142221401140,100000101031020,114000002302313,103012201401210],
+        1010223022000012: [103110020210000,101420200304000,114024102212214,102102000212010,100233404320202,102210004110000,101142420012223,100000004204012,112214024003000,114001410022014],
+        1120114042002241: [100020001044100,1340120100441224,1301223001003430,232020104433104,102330042000001],
+        132302002220112: [114110200030200,101012130310043,114001310043110,114102344121242,110110104204000,102010021132200,102011001411100,100001410411142,111010020021202,114003300023020],
+        100000120212142: [110021040020010,100001140020000,111011030004021,110013030020121,102001221100211,102100132000411,100121104300201,101220330300003,110132000024420,100011014130012],
+        1042404102220010: [110034300021014,101042401000112,110230010000000,100112440013034,100011014101313,110104140001020,102011114000320,100041001211002,114200134110042,100204304122112],
+        131110144032023: [111000024110140,102230100201001,110000401221440,102410104040240,112314301103022,100020004210021,102000222003200,100001040020122,110104101220110,110112211000311],
+        1010220000431300: [100321004011041,110002342100014,111101042244210,110124002040002,110023410122402,111204200002001,111200020004203,100141101040300,103000104042400,110000011012202],
+        1020310100100200: [111000022202402,100430211011410,110010340040012,110014032101430,104421312102244,114131014101010,102240214041033,114200322333401,103010021422042,100000001022401],
+        130012120011424: [110010130000004,100000331040124,102122022000230,101011200324311,102301011004011,112030040242300,112400002021310,114030310030022,112224304041202,111103044400100],
+        1024000412011400: [100031300002022,110210020002243,110210022120040,103002044002032,100101020402424,102201112000001,112211120202000,114211040011201,100020100423404,110001222202031],
+        200000201004010: [114010200011100,100102110412002,100000204214001,102013024000211,102022000220004,100012001042030,102000404000400,102004004004200,101002134011001,103440411210000],
+        124002021321013: [110412220102021,100300004310110,102002400430000,101200124200010,102143120210003,114310012300020,110003212104043,111011022203010,100001000100020,103211021423243],
+        100230411103001: [104100202101022,101131141042121,100440000031023,110012012004102,101320244221142,103100401421202,100002211221402,100103301000402,114101022341020,110340122100210],
+        1101210003102202: [100032041021210,110414300030001,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,114142044120310,110220410000040,100012000022003],
+        100034000004222: [110001422030011,102144314002302,114200112340002,102343014022001,100211000430431,101213240301002,102240320200212,100140200410200,100020020120200,110210001214000],
+        1101441010123430: [102021001132040,110201201211024,100032201024101,110221022101104,110023100402320,110123004401121,102032020214001,100040341020133,111101344104210,100410220030300],
+        1024401021240112: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1004230232322310: [103212014020132,100102101000203,114111200034310,102231301122300,103230040101112,102001004000100,111121104100004,100010041032043,102441311400421,112030004021010],
+        1011344010300421: [101214200300004,114330120000222,110001440004103,110010022202202,100003030202011,1000301003020410,1014111023013000,110320044420300,1003300020121100,110201430400400],
+        1122011114203300: [100000041040000,103004104003011,100101234301300,102331104110040,102300010242203,100020410410021,102144002000300,101233320302120,101421000304101,102011204023300],
+        134041034223422: [102334004110232,103013000104404,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,114124002341030,110302322102041,111300202200414],
+        1121000000204032: [102210011101414,102102011401410,114032124013234,102143020230411,100102014301210,100001000410200,101023134002011,101000131030300,114241402320044,102334040242404],
+        1004201441103122: [114014112300100,114030034013101,100000044204004,101013004001421,103000014011004,101020224210014,114202244101041,100122310020400,112423102010012,102112022001414],
+        1003040030421401: [103011424002021,111121204404010,114210000000224,111202112220003,102311110211420,122210101023210,101044111022300,110302241332230,110002004410314,101012000311412],
+        1111110100002020: [110122120100022,111100424100021,110111121011004,103001020104102,100242444300104,110002202001202,110200422113400,110022300021012,112000000223310,100002214210110],
+        1000000010122041: [102304340220231,102103440200402,101014424224002,100043000200103,100142401040042,114001032302222,101013404210010,110230000002324,101401304040214,112003011110221],
+        1411020222201202: [112002110220340,114040210021100,102002220221002,114100234004010,100030410102000,112240334012440,102101010210022,100010031222001,110020200001031,100034021034000],
+        1410002000001121: [114211010000210,110200020110120,100003040101420,101440004020212,102234400200230,100000004210012,110202102231202,102112000204313,100224120001302,101000330304200],
+        1030012012011004: [100010400022200,102300001002144,102302444110110,103001000142003,110310004424232,100402012200112],
+        1042202003423010: [110303120102044,100131031020002,102323304112342,114003222201103,110002022030224,100204011002001,102013301320044,100022204300000,112012211120102,112300000204010],
+        1141404023020000: [100004001021111,101021004214202,103022021431010,100003000104203,102101220214011,102114320203000,114001112300001,101003104212220,102120231343021,102311110240101],
+        1041400120014300: [110220202124002,102030024010020,104100212101210,111320000001004,101101021110401,101004204211203,110002012000001,110201002040204,110010402102122,100300024313211],
+        122420402014110: [102000421131000,114404020003022,103100114000000,100421242201010,114410212320200,112020011110100,102030000221301,103300010110424,103020011430001,112000002000112],
+        1023021104102301: [100001201220014,100210000032400,110200422121211,101213311020021,110040411222022,100041120200010,102303001003004,114010312213204,100400020022321,103211000211000],
+        1100040012201200: [102020000204032,110000000003200,111401200000040,111202004100121,103230104003200,101041204222101,100024024211001,114031000012100,102110001342114,100222220001202],
+        123003311204111: [101222321200012,103211144033404,103103240104001,102123040212103,100204104322122,102100011341012,114130000220023,102314224010213,100000120000202,111100230023321],
+        1033101124442100: [100313324320240,100001310421201,110000110021420,110100410011143,112000221133021,100130000010204,102443324020000,101134004004013,110401020100113,101214311020403],
+        1024102010130120: [102020000204032,110000000003200,111202004100121,114031000012100,102110001342114,100222220001202,110200000004322,114342044032200,111110020000001,100200024323300],
+        214432414421000: [102100321320100,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102140121410131,102310400240000,101201340300430,111320312222220],
+        223412000312023: [102100004130301,102113020210120,102201101122100,100102114100420,101012310342300,102321320224101,100002404310212,114012212302132,100430324300003,114230222331120],
+        211012410102104: [114404220000142,101100214003002,100021231022220,102410420230111,102301220210011,102120004001102,102323210221002,103211001400330,102410220200400,103020210143120],
+        1002023202310442: [400004112102010,1200020030443142],
+        100100002221212: [110231434430114,102340144111123,100140010100100,130011204200020,140243003020120,100120014301440,112020240233004,102144311342041,120422012013021,101040400300024],
+        1044010413203120: [103130021444021,100022001040322,101400004022210,110020030024004,102112204131410,102312301104422,100000411002023,102303200241200,100022021041122,114120140000100],
+        1400100210120201: [104100012102004,110000010120043,102102011413000,102403404004110,102031024013013,110044020020202,102122410220401,110301311303102,110021232000021,100001140000010],
+        1040312010102100: [100004211221210,110201001212001,110200134240420,110403221000002,101201304200320,114022042302201,112002320212232,103310101401010,103140021401211,102404042001400],
+        1000300001000101: [100003011041040,103200141404212,114001112300222,100203141001002,114122440000024,103000020103121,101200024010043,101044211032201,100011111032203,103021440122032],
+        201034002100400: [110003004410041,100000444104204,100014420000000,102012004013201,100104004230031,100021000021202,101400000302113,112211030201201,110432304221110,110410212110111],
+        101101331204020: [110112012140003,112110220202020,112002012030102,111003410011000,100400100022002,110300200044430,110401422114111,112020021110112,112120020220421,110220244403201],
+        1122221100001000: [112023022001022,103122221240032,110310022220010,102001000202131,101020401034111,111012400040302,110140021322121,110120202212130,110013140003302,110220002040001],
+        1020000002421121: [100200011001220,111202014132111,100003141022321,110201434240143,111030044110010,110041304201404,100040211022000,114000134102201,100420104301012,102110001401111],
+        201022410220300: [102020410220200,100013014101040,400204300024034,100402010420301,102022110202024,102010140220011,1002102003210222,1130420100342202,102120000210110,140020100011012],
+        1001100100001221: [114203000004300,103140044032100,110322100104010,100032021041010,114100004121121,100040214102023,103033044023040,102403101400210,101000001001104,102100330231011],
+        1424104010001321: [114213002340022,120402022102021,102120140212001,114400210002021,103103221421013,102010002000402,100240011000013,114233112330324,100000021022400,144200203310100],
+        1403010413000123: [103142100103020,100100014033224,101002204213002,112001002300102,110002402130200,103144111211103,112202002030000,110100001014012,112243034012420,110010344204120],
+        1022030220022102: [114022300022421,111210044410020,111420230003130,111310004122000,101221000312044,100400240013333,111001314111000,103100040210040,100210001002200,100001210100102],
+        1104301030300303: [111220002220100,100000241020022,101133410300302,132200010004401,100030044202001,110114410003233,140200430112430,110012030002010,110000040024442,101410044021332],
+        131420104131100: [110230000000002,110220301202400,101003140322000,110401001002400,103012000100400,110210024220020,114201142324042,100401424300314,102213401111223,100040120000031],
+        202204411100110: [114231202331202,100003021234044,111102032220111,110200204224211,111300042200340,101010041032322,114020042300022,100021421020002,102400004040100,111120204100203],
+        1111100011232413: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,114100124002210,111122200021102,112400034040002,101041100300001,100000020201032],
+        1002000201011131: [114200302320443,103100420210210,102132004132023,102040240242204,103224020100300,110030012000101,100403220022142,101001240310031,100000101022200,114030000024010],
+        1004104010000220: [102231130213210,114113104123200,101210210300031,110002021121023,102300040221403,102201100200430,100114021040000,114121300224141,102301100241002,100021020412110],
+        1421021020110001: [103132204001001,110003404411303,114410010001200,111211232220002,100112301000311,114000142301404,111301032200412,100210011201011,113030011000324,110100120120001],
+        200021104204110: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,102023021321020,102114020210202,114040204014042,114001010044120,101010111033143],
+        1120310000031004: [110411324240311,101011034000230],
+        1112021100202003: [114031004020241,102430321112030,112101432300231,110213042222211,100320224314301,114202032320004,100040014101440,110321100100401,112200102033440,110100000101440],
+        1102000220103034: [110011414240022,112004202302034,100042001020203,100010044300003,114130210231020,112120224040040,103301410110110,102124031023100,100204104320231,114002104020100],
+        1440232013001100: [103012024004312,101040040300223,114234004000210,100100001040410],
+        1110140020111223: [100321004011041,110002342100014,110021312002040,111101042244210,110124002040002,103110314000100,110023410122402,114302200014241,111204200002001,100002300411002],
+        1222102001102032: [110200321303322,100010030100011,103002041402004,102022024000100,102103030210003,114120034123300,100040001230110,103010011401200,100020014210002,114010112332112],
+        102121400201014: [111124004101012,104102040011120,114103220220104,102120004001310,102430121110340,101021204000200,102020121102120,112141104020201,101200111020111,110001200422320],
+        102010300001011: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        110101402310010: [114011302301400,102304034110400,102100220210000,112000022000300,100003214102204,102430300201034,112030122000001,101102104020404,111222024104240,112000102000001],
+        1013400111031002: [110300222104222,100002040410130,100440001000012,100403011002204,110202414214022,111002420031340,112432142020024,101103012130233,102320304030000,101112241010002],
+        102003130120100: [100001230201101,101101131132022,100010100000042,104120211242040,112220104002000,102223004042102,110410312121010,110330130010041,100030034303012,102422200201100],
+        122040420010323: [114203042330220,102102231400111,100032421040120,101004201001232,100000400412200,100002020101023,111100232241200,100011234202334,102111024004010,103343010113030],
+        1031013022303011: [110000322130121,100200001210021,103204230111030,100422211004214,102100000210002,102121010210004,114013214010111,100010004210020,112002100240200,100001404100110],
+        221002402022003: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,103303000112122,102100014132110,100021304103002],
+        1001100210002400: [110322104424202,102112201020000,102102220312102,103004204021310,112220102043102,110012310020200,103030120100220,100232224340041,112400002011010,112011001113222],
+        212002400114144: [100032041021210,102040011121100,114310000001232,111322234130000,110104002010100,100030024303023,102042204000300,100001134100120,110303401230040,110024140142000],
+        1120324010000221: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,112401014040034],
+        101031020122412: [100000210100030,110001440041003,100000220111021,101000430320220,100401022201110,101100001110030,102210011101110,112100302012023,100102410403204,110042021100041],
+        200422320010040: [100000210410212,100202021212012,102000032003002,104003410010031,103020201401104,110020030011011,100100000012334],
+        213123000110000: [103010010104000,102330030243120,102100100210033,100002200014412,102140142001210,100141004030100,104130442103041,110000012124020,100022201040213,110221320111003],
+        1002203431222130: [103241000112010,100034114100102,110330002104200,114000000030300,114101012201420,101114420310142,102112100210100,110011111104432,101300000340401,100011301210241],
+        140000130120401: [101000211032200,104100001242022,101210000300320,102120022000224,100204000410301,111213130001022,101030120340201,102121444003011,102240121302011,100401400022202],
+        1020020030010202: [102202204040010,103333040110114,101022200343023,102000000221222,102011014001111,102331201001140,102101001342004,102103001414002,102022011101012,103222024031400],
+        1000120402321010: [101010400300001,110002211302010,100040004310211,111101144403004],
+        1111020032213240: [100404210032112,100121010022020,112100322040040,100112134030041,102000000224001,102013314023030,102103111403000,102004044000100,110030121201003,102110030210103],
+        204240141002041: [101022000322012,110123000122000,110212010000000,100200020144110,100230421212431,100101201021044,112400000200011,102112400224210,100400230020212,110440401003310],
+        111403302134022: [102001144013040,100012111020031,112203400410130,100302320420012,102000404001103,100022211040222,112012220214324,110030400140000,102242022004100,103043001412001],
+        1004010321040430: [100104100022200,101010020320410,101120201100110,102304021004012,110120001121422,120000042021310,100100030402102,100300414022102,102100234022140,101024124000000],
+        140113212104010: [110211002121001,101442031012013,103202000101303,110020232002103,114101004000301,110012311001312,100241100430000,102102400314222,111022022233042,100120020401013],
+        1103120200120021: [110134044242442,100002302213022,101030020022301,110120400022300,100041044101100,104032420010121,100121104031022,103004030121000,103212210100022,110144200000122],
+        120101001020342: [110210400114203,100001100104021,101101300010301,101122200300011,112210201100012,102120200221403,112001122302311,101001211004233,102303011002000,102314100240010],
+        1002132023000020: [114001204020002,114230000001013,100022211001110,112000002310000,100010201030300,112420104040020,100403430013124,101002100322211,112004000230002,110220111110412],
+        100000200014040: [101242011000124,100202340430142,114420242311240,110141001301302,101200200300310,114011402303024,112124000203110,101011000320010,102020004000040,102110201342301],
+        1004311210021102: [100114004100001,102012030213014,102003320200411,112440114040203,100401001011010,103001204002010,100340114211043,100033001220020,101100120334014,114233002340141],
+        1240000303230010: [103204424022010,110304304420001,102110402001413,102131334020220,114210024001201,1031024222000122,200003020011141,100020111230000,114102010224000,114301012300202],
+        1001310301020000: [111201000013222,114004104012300,114211202324143,101203211010000,101200314040213,103302140112020,114003200023323,100012014300020,114110024000020,102213214110012],
+        202000424030110: [101020000300112,100002020410020,101000001111200,102012220241003,111120214102000,102113200210140,103130020213032,101430211012120,102323204113210,102403031110014],
+        120121341000001: [102041100200402,112100404000230,110400112021140,110112121002403,110122221240302,102401200230234,102241230200120,110201111200204,110400104222012,103302024010240],
+        1400200011214220: [100002101021120,102102012003220,102313114114000,103030304021102,100000101001431,100104100422041,100001044241012,102030420223110,102120200201042,100200011000020],
+        101332113114042: [110144240011020,110011011212100,101134030011000,112000244001222,114441114123013,103220211421421,110123230124040,114000012334102,101000014012442,131000001020102],
+        1000030222202004: [110221204243141,100400220010240,102300221002020,111010204401023,100000010004124,110312300040010,103120000104021,101220200040320,102102001402012,100124221021011],
+        1144441010000220: [112002204004403,103013001430040,100402021000101,101104121111112,102141032001100,100100220024041,114000000023404,103030200142241,103010040123432,102112322004011],
+        240201020200121: [111133110023322,100400024103122,102000021101201,112024200220201,101001440303020,102000124010400,103002224002043,110140141201202,112012030233024,114201004001120],
+        121221411100014: [100012320001320,102000331120104,100232214222204,110203111111000,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        1010044020430310: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102,114032234033303,112400034040002],
+        1020000200222300: [110402402020010,112421302011301,101023431001040,110001210120320,110300404422030,111024100022301,110200310012010,110102110124010,100000404341421,110000022100112],
+        110302143030000: [101201004044021,102422122000001,100040204202102,100200124341000,110021212130000,103230324024140,112120022010120,102113111410044,101042130310010,111202014413200],
+        1031222012302021: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,102001014013004,114113014000010,114022100010000,114321004030021],
+        124203022000303: [103100221440010,114003344011001,100021101000000,101014201030204,101203001010111,100031201030102,114201104114111,101041001003300,100001100411302,114012444020220],
+        220102220004103: [102342110212020,100024024200032,221123404200214,100021024100301,1101210010010223,102042000211301,1300004102024404,100421001000020,1300102043130042,1333020210312100],
+        1113300400421010: [110021000410432,100042304102210,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000],
+        1130010120120310: [104130242103012,100002131024210,102410001402210,102000101132400,110000102100012,112023140212112,114000312301300,102120214001422,102400231404200,114200422324023],
+        1000412130010144: [114042102330002,100014001041000,204020131034103,114113404003030,102310030240210,102100204001030,102200400234000,103001324012043,102110222004041,100102240020100],
+        1400220101000132: [102023000220003,101004204212040,112130030422202,102202014030001,100444021001102,100020404302120,112013400220104,101022424011430,112112002014120,112321041130330],
+        1000141214101410: [102101320220430,110100010000102,114020444100202,114020232302203,100111120012323,100014044200222,101001000321032,101124021110021,100023100104410,110100112141141],
+        200000101104221: [104132340011314,102203304123030,114012040020310,110000212104130,110200200004002,101000040320021,114131040224332,114002210021300,103230114000201,100123020032031],
+        204143214033312: [110000212101040,100014401210011,110021410020203,110411044221200,112024232302040,102423031402210,114013022304040,102021311100042,100201020140421,100004001002300],
+        1440020223001243: [110241142024233,110023342101220,101001421031220,112300421134001,112220322030220,111000034110311,103021004014220,102200001002100,100014100124121,114443304123123],
+        112003102431000: [114142204123102,110200002111002,100012000002410,100201131000322,102000024010442,110141400010211,101032001140100,101401400300110,100240414222323,112002040210000],
+        110000140021401: [100002200103104,102040300241403,100431000032001,100202031002101,102103331400000,103013004020003,102222310200400,100204101210044,102021024004322,100001000013302],
+        1110223000120201: [100010441032031,114402414111240,102040444014121,102012110232021,100024100201424,102002230200001,101012011001200,101222000300004,100003014211000,102400204024124],
+        1030312044024302: [102400111402142,100010000002400,141030301403400,100000024100211,103224200113121,110140101300004,120020211120020,110230010010142,112003000230111,102031111324402],
+        103411200010022: [100020300200110,102342110212020,100042000200211,100024024200032,221123404200214,100021024100301,1101210010010223,1300004102024404,100000134100120,100421001000020],
+        1000201421400142: [110101210013000,100404121014002,101240220300022,103011431401300,110120020002304,100011000202214,110012101102100,102102304001200,102002020220000,100102120422002],
+        324204022022230: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        101000431101102: [100122420031012,102202401114113,101021001031113,100010114310001,100320140043202,112030312300010,100123341012403,112413022010001,100403410013000,100000021034001],
+        313040033004011: [101004400340300,100130410400000,101020404004141,100100314003011,110430201313300,110000224410102,102010104040420,100200201200001,110014002130210,110300200400111],
+        1020141230100100: [111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,100230120001003,112042110220004,112203221102231,112400202020003],
+        1004102100041041: [110443010102111,102020101324002,102401030202031,100210031004220,111321012222400,114203204004133,102401004020304,100402200013400,112300021131001,110100040033204],
+        120420321011020: [114040210021100,101001440344222,100020124303001,112414130200030,110000010003422,114010002242000,101120201104300,100300030420140,102340021100202,111031004110200],
+        122020021031230: [100030220100110,220321332020001,114012002212100,100002114314022,114203110001031,112030122000211,102000100200100,102020400244030,111004012200210,103112100101020],
+        100210000030120: [114041300010302,102011000233013,100030014212420,110000000021142,102114002001012,100014200200204,114120312310022,122213202201022,102212140200424,114203024110400],
+        102221004014241: [100301301000024,101000321002030,101044400300030,100100310024040,101024024002120,103212010100200,132224022200202,100231004331011,100200010434042,123102041021330],
+        1031001011004000: [102001404012100,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,100020004101012,102402000201011],
+        231020004100430: [110023342101220,100021004310222,100001000100000,112220322030220,110202222043022,110313312021120,100220214333200,110330234422000,111000034110311,110243000001123],
+        122231001303344: [110103002040200,100004024202000,102303311004021,102000101410104,102112430210103,100010004102244,103000114012224,102321401000212,110101020124104,102042444010014],
+        1023012341411200: [100030324200410,102110202001010,100040041020102,114200020003431,114041002212302,101002200343110,103332044032320,100212024322044,100140004102001,114101024122320],
+        124240201203112: [114000040010421,100433201004014,112002010220004,103001131403322,102002304013011,102320001000040,102000034013222,102120004134001,100120140421132,112010002001040],
+        1111113231201402: [112324002020202,100120221021011,111242212222022,101401140300101,100030124210101,103220200100320,100011224100020,101030004004303,114203224111020,100140304103400],
+        1000241010023032: [102112201020000,112220102043102,101102320320033,103042000110130,100002110202020,112121202014100,103030120100220,103101101210002,100231200100003,103224224022200],
+        121021000001400: [102340221000300,100402002201002,101011014002032,102104101122100,112002010221020,101131201110300,111012030020003,114200404001002,112000011111003,103210230131414],
+        101011222214113: [110130014400011,110232002101410,110331400400440,114021140030020,100424331001120,111040300024044,102120204000310,114021112203114,114000004110202,110111302000104],
+        1000030000002442: [100032041021210,102040011121100,114310000001232,111322234130000,110104002010100,100030024303023,102042204000300,100001134100120,110303401230040,110024140142000],
+        100140304030003: [101210320301302,100440024301100,100114104101001,101023221000031,101400014040400,102012034000402,102100122002001,101000011021414,114101000221221,114010214101003],
+        212102012212400: [100130320031042,103110021442200,100042001020203,112221200410000,112023032000020,114100110220013,100010330101003,101431304024200,100002241200002,100013014202033],
+        131021001033104: [110021310040113,110301331234001,114403020002032,100400110020001,102120104000032,112402234044121,101020121032021,112202240410200,103110201240222,112112220204023],
+        200004200100022: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        100312211012002: [110002212130403,114112014140000,100133004000124,112440104042121,114200124000134,100120204234213,100003011231420,103230231200010,100222200002003,100431031014023],
+        212000130000300: [100000044301222,111012034402110,114221004034110,111100104104202,101223041020020,102002204000124,100011230120014,101104024002242,110133120011001,100400010013033],
+        200441004232120: [101021120323020,102001111412134,102110010202100,102110234020204,100004131024040,102441311400421,114020214033220,100010040101024,102001224003302,102111221401002],
+        1400032011030221: [101003201032030,100103214302031,114233044002100,112310000201020,114404210030110,113400201011402,103202114021110,101101334200302],
+        1000200101002322: [102023104002000,110304044431200,100310111001140,112122104040040,102103131122203,102100101140030,112120012011020,114002104011010,102400014020400,112412034040100],
+        1100104020042012: [114011302301400,102100220210000,101203004042010,100003214102204,114221000210214,101410044041001,102422214021111,112030122000001,101102104020404,103400004000422],
+        100311004230102: [111010124402202,110211020121140,100020244310231,101000030321102,102110320210011,114221234002100,102420001110301,111231000010032,111110004100240,111040102144100],
+        120102102023401: [112000431120410,100031034311401,102304104110001,102000200200301,100104211044110,110200101200402,114241222321321,114013124030022,114104200220022,100021221021201],
+        1021100110422300: [111114010020011,110304044431200,100310111001140,104104112101440,112122104040040,102103131122203,102100101140030,112120012011020,114002104011010,102000031442000],
+        102001212320334: [100002100100210,102420424042020,102000430221040,100100000422320,100102020411200,102100012002000,114221030000011,103002110100200,101320224220103,101302131002410],
+        211101130124014: [103111001422000,111244302220204,100042100102211,100300041001121,102110030200120,101114000332010,112112211102024,114001032300011,100142044103021,101100010012423],
+        110301010212010: [110112320021204,100034114100102,110330002104200,114000000030300,102112100210100,110011111104432,102000221034000,102300044020403,101113231111221,110020131231003],
+        112004100001031: [103102300102243,102113020210120,102020000204032,101012310342300,111202004100121,102012014000404,103230104003200,114020404101101,102321320224101,114031000012100],
+        1001033204013302: [100301300121100,110042400130000,103020124010320,100021300101201,104101201240100,110000011012202,101244324043222,112102232300222,102000020241101,112311000204002],
+        132014411000000: [100100020410000,100030411042022,110401212110230,100031420002140,112022400231120,112203321101101,110002421122102,102124320203002,111024204402000,111014022142334],
+        1100300303302222: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,100422211004214,102100000210002,104130020011020,101114422122000,102001314013400],
+        1000213012200131: [110214024430312,100011014100041,100212341003212,112013212032000,112010220224003,112001040231401,100200001001300,100012104313201,110212310000041,100040424310110],
+        1240010040112110: [101010000322013,101123211100242,111400130001014,100001420000003,110003142001043,100034031042100,101121024000024,101020301000022,111130100032240,101113311103230],
+        110000303120120: [100012230204000,101101200311102,112401402023020,103142104001331,100200204123011,103031120143010,110020211221100,100101130101111,112000210230234,112003104002414],
+        1041004402334112: [102021100220120,121000033324102,112024201004140,104400020040320,111022320201411,121410000420112,100004140041201,130432000202002,100444004201203,122100042012100],
+        1402311031204100: [110104112010103,111102004100101,102202414041044,102140014001101,102000104012232,102021100220101,100230120001003,114000040010421,112042110220004,112203221102231],
+        1033444000022010: [100011004343022,110401140004202,110040002034100,102402330230011,110203210002230,110432242020141,103202104032224,102013011320122,102110334020204,110001031212302],
+        1113001000402001: [100441224303402,102401030202031,102401004020304,110112214200023,110100040033204,103104404000040,111201024102030,110100102010003,100122110401300,102010024001100],
+        1011000000302241: [111304340002030,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,114113014000010,100043024210301,102014001130100,114022100010000],
+        1040204043040400: [103300040140032,102104211001200,103300001404011,114211002340000,100002101231220,102040424014311,102210044011101,102000034002011,114240044002001,114302002322001],
+        121022040003003: [100140024100204,114001014102403,103210000103000,102120101343104,111122022240223,144410130020302,114302000000201,110420412024420,110404044220000,102121301022010],
+        301010203021201: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102141212000200,102042000222002,114402104142102],
+        110013000400024: [100011000202214,103040020122332,100000024100000,100010040001210,102002020220000,114302404002020,102001121132032,100001300012442,101012304001200,100011114300032],
+        1030201242040022: [111034014401112,111302202200213,100030241043214,101421001021031,101300400313000,101220040310221,102320030240003,202030010203100,114431310000020,100000004300240],
+        1010110212000220: [100100000100111,101300340341000,100111341011011,114421030000000,1020210020000020,102102211122031,102300021100000,1102400141403322,102223314042002,101200040300300],
+        101422210020110: [101000141031222,102000421131000,102020111324004,100421242201010,100012424200031,102043120222040,110200200001000,114023024101231,101410114043204,102101041341001],
+        120220041041330: [100021204100204,110211020000002,103002034034022,111230214102412,111433044442220,100113410410320,101000004013020,111201442222420,114012000022010,114222440003300],
+        100031300013400: [101222101202341,100020220410142,110000412003001,120202201010210,112042024000020,110022100044100,114400200004310,110003000024101,100010024302100,100000011020412],
+        200110001013001: [114000200020423,114002100033010,112111102310000,101241000301002,110040041310130,100004301000000,103302240110002,114011134010000,112002020243001,100003014301220],
+        1042214111030100: [100113220020101,114031000022030,103103241421322,100300211000020,102104304023201,100002224244002,114310200002400,103211220100010,101202201021310,100021404301132],
+        1040330100310012: [100111011011011,100030040101021,114310102300021,102400124020001,100102224234101,102010321411140,102111131410342,100031120413224,101304004220404,114104214003030],
+        241314003100002: [100024000110221,114130014001202,110010220103020,111004100022110,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411,102131304003000],
+        1100211001101030: [114201104111034,111130210020000,102114022004023,101022121001000,102300104110002,100104201020032,100024000101404,103000014004300,110440302011221,100101004301102],
+        101014240242201: [100024210002210,100000020121140,103000200111020,103022204000200,110241020002103,102023021100010,100221020410103,101120241102203,100010304340120,110020010120340],
+        1004002010012002: [110320202023400,110441234224400,103100014031411,110000300424304,100011004343022,110104422010121,110013122130200,114020204102020,102402330230011,103121221400012],
+        1101301421304402: [110020020001220,104120000021110,110102030403010,101040010314220,111211114421220,110000000011102,110400000004402,104101420012000,110132241240004,102010411120012],
+        141210342201230: [102200020211042,100000034312214,102103001340022,134402411001001,100002110000131,112021020220112,114201414110004,110214012030140,100000144311102,100000104100100],
+        120013202112200: [114402404141241,101100000330120,100000400000241,110212022133311,101412001100222,101041210311410,110022004211030,101210021021243,100140024230240,112230240412241],
+        1121212241202220: [102222111120010,103200224033413,102300440221022,104120201242031,102320110240231,100100101011200,100133001220421,100122204301312,101022220322100,100114113200203],
+        200321214231321: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,102044021101411,101042001021012,101100104002023,103230011412301,100400000010020],
+        100400142000010: [100032041021210,102300324010203,102040011121100,114310000001232,111322234130000,110104002010100,100030024303023,102042204000300,100001134100120,114023214101310],
+        1000010110003420: [111122100010330,102302231004020,103001000141212,101202104010412,114234414102011,132012000000230,100014001040120,110002400011111,102220000201200,103101011421200],
+        1000002414112210: [100111004103123,100003021034002],
+        222241000310020: [102203304123030,101000040320021,114002210021300,103230114000201,101401300300011,114121002310010,102042210202230,100141120014242,103141131420000,114014002300100],
+        102020320003430: [110201001212001,110323344422123,110200134240420,110112001343021,112002320212232,100002210413202,100002101020204,103140021401211,114002212210110,114212000211041],
+        132210004410012: [100032041021210,110004301222000,102300324010203,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,110104002010100,100030024303023],
+        221320013320110: [103301201402204,102401121113302,100021020124002,111201210000103,102104131412412,114020312300021,101320040302031,114010102300010,114042014014024,100000000200102],
+        1122010000001340: [103030114020032,110001131312220,103000001400001,100004020001220,110202042021023,112010334002223,100011000002042,112234000202010,102000124010244,112400114041042],
+        313020103000100: [103212134020020,110111412010000,110023210130031,103203121201001,100000331231114,111310122200002,102001311100000,101410101013004,102400201112240,101120040330204],
+        100100010214202: [112000042030034,111200002221022,120201012121032,101002100301011,110101211000302,112204010413200,112000020224300,102020011130021,102013341121201,100222000410322],
+        300001100022010: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102,100030010102102],
+        1000102011020210: [102201444044432,114111140220220,100000304102031,114302010000013,100311010140302,100100124003241,100002310120001,100111014231402,100404300013220,110220022111241],
+        1142220400000210: [101004201002001,103112010213010,102121001410120,112200410200142,111400002102112,100034100124302,111112214101000,1320102201231021,100000040413022,100011221224211],
+        112000122210000: [110102042010220,101020124000413,111210000001101,114013400011030,101201104040034,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011],
+        1114114400220103: [103102300102243,102113020210120,102020000204032,110000000003200,111202004100121,114020404101101,114031000012100,102110001342114,100222220001202,111114004101202],
+        1224100000124204: [102033124002102,112410202021300,110000201301004,110002040021102,100000001032140,100110221000310,100030401031400,110031001010032,112220100201030,110002212132131],
+        1430010401402203: [104100421240110,100042010103431,110041221200014,110301122022204,101400004022212,110233020402400,114020040031020,110010000431131,112420200200110,110432134242300],
+        243400040003010: [103042110104101,100210104330243,112001000233022,111003044110202,114330124002101,102230231120222,104102122101021,102330021103040,114020040014403,114002024100000],
+        201101204001013: [100004221034100,102232024002401,101102120301114,103400014000012,101000004001310,110120224221100,110000041322002,103412020132101,110041021300130,100001200120142],
+        1021030030402120: [100101201011100,110400340004400,103440000124310],
+        100302330021101: [103132220100130,114100204121401,102120214131012,102200324111003,102004134004013,110220034212001,101032004214120,101204011020202,101002004014003,100221114242000],
+        1404102311222402: [114233024103200,102120304032340,111211414134201,112200001100121,100140101203122,110202200000012,103200414020231,100103040402230,100304004210210,101000021030212],
+        1000000004020102: [101023001024400,112020002311112,112000030210340,102201000203202,111200300010114,102010002000404,100024220122100,100004304100003,102040004002144,100011140001404],
+        1423214230403402: [100200104321000,103220030101023,401300041114001,112032302000220,112003000230001,102004301444000,111133030010200,114000044101422,102020204002424,100003014101004],
+        1102111400312102: [110401100400430,103143111443210,102112212004043,100144040410322,110103221143200,102320001001023,111033434402423,100400402200402,110020100110002,112231010412402],
+        1110100401222300: [112004202302034,102122214131011,100023031000024,100010044300003,112120224040040,111321314133000,103301410110110,102021021101204,100231020102202,103014004012401],
+        320102010042223: [111010224110043,114200334112132,102140201342144,100100121021000,101000011141243,110122121014321,100400202201130,101330004220011,103122034000212,103120121214001],
+        1011200220321320: [100034304101213,114002014100310,102101031412121,100020020121132,103311100112220,102102010220401,114402044140023,100021120201020,111000024404021,101202014010400],
+        1102100102100020: [102001301130211,103202102201112,103042224042412,100201202200003,100000420100214,112000100210200,110204140013401,112440102010141,112443012010041,111304402204411],
+        1042030133022202: [102104210211102,102214040203031,112220010202202,101104224022322,100000030002013,100030244100404,100120101022100,101023204012124,100400212201003,102100010200141],
+        1104322000300041: [100024000110221,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,114040210022000],
+        1002212230034111: [112211122030420,100010021034321,100031004101422,112013012301132,102001104001214,112100140200020,114214220001140,103144001420031,114024104100321,130040244231421],
+        120033201000210: [100020201020032,103000011400001,103001010101001,111030014120004,101000211031021,102020001021010,111300022201241,110402410002000,110020001210102,110000020043321],
+        1441220011132444: [102002301120010,111002100000102,110001000020034,102004014000430,114222302321101,102101024002121,110014024202014,110220130100010,100020011030330,102404221402210],
+        1001220202022300: [101220014012231,102010130231400,101010311003410,100020424214024,103422430124013,103214400131240],
+        1020121100031001: [102104410220023,1024002314000141,1101200200223021,100430200104001,1341420023200031,103220020131102],
+        1030201204043041: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,102100014132110,100021304103002,101120024021024],
+        130112000110201: [110000002100440,102330031000000,102221410200012,110422010000200,103112021442033,100000204312321,110213401202110,102300104113403,110300121220201,100400440012042],
+        301240023002230: [102000214001143,114000122300001,112133002010330,102110001342041,102000344000000,112201031104011,100001004200110,102001101132013,111320000010132,101200420011300],
+        232201201211042: [102140024002342,111114212112100,102312120222342,110002004200112,102020010221120,112012000232203,102143121343400,100220001000401,102101004002030,102303130242002],
+        200400000400202: [110000002100440,111214100000104,100430221011100,102221410200012,110422010000200,103112021442033,110213401202110,100400440012042,110044014410012,110030231214100],
+        101004200000022: [114212012310002,102004004002321,110001420000233,110000230010221,110202110113000,102200301110320,110001040000000,100324114310222,110002242100100,101220100303222],
+        131401202213441: [100212201000030,110020122101104,104130030010110,100000010411400,114042004020130,111120112103420,101002304210122,100100014000020,112402144042221,102100340232410],
+        1102320110211010: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,102042000222002,102001011100100],
+        1211021010301410: [111002100041311,114011102301222,102401410230032,111212420010002,102402200203034,100001230102304,102102001320001,102332104112211,101020101002120,103002204003100],
+        120000101024021: [100420244300112,101012001030010,102230121123103,110202010012201,100221440000230],
+        112211003202310: [110330400010040,100101231004020,111000100012002,110013112004021,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022,110020130044232],
+        1022200220002201: [103041220111410,101100202130022,103400104001342,111001212200200,100000331201012,111210214440200],
+        200200024404400: [103124001420200,100220210034042,114434330000120,103224034003141,114202022320120,100204011000221,114412402323000,100000201032240,100204401004031,101240204232402],
+        1010010000020000: [100002021042230,114011244103110,110022224202024,114043402214302,100104210400100,110213042222211,110002100132300,102002200200004,103100001420200,112021104023402],
+        1432102131420423: [101001111020310,114002102301424,103141324004100,110011234213300,100010030104002,103120100104000,100011004201102,100024211212040,114121012340403,102001004011002],
+        111003010102320: [100020121020300,103432001210300,112440134041000,100210240013000,110401214242400,101044214042221,100033201031241,110010114210202,102141000313022,110110114221031],
+        1032002034000000: [112001001112001,100310444310004,112332000411020,102431200203321,100211001204102,110002400042003,100000004244400,102032010241003,110024001211221,102403204000000],
+        100022130000100: [100000211041234,101130000023030,110013322004400,101221200010202,102100014031110,101010101034002,110004342121110,101011014001201,103210244041141,103021401412434],
+        1431022230401243: [103310020140014,112000204002100,114401400003130,100000000411240,102030021443010,112300220202122,114010000024012,103100421422110,100102300401031,112120002302004],
+        200300022222204: [110402424222014,102030024010020,101001011114020,100030044100103,110001141011223,102012040223003,114402240003200,100300024313211,114022012202024,112023212001400],
+        130200034014232: [110032022002020,100400110020244,114011120010030,100411201002420,114120040222120,114304234022130,101030404003400,110002004413040,112102322011013,102201100230002],
+        1000023212220222: [100002221021122,110001041100000,110311404430222,110342230013000,110000000040230,110004031201142,111200104440321,110032230410440,111300222200201,110322014420041],
+        101034041310004: [102442024024214,100443211002141,101012400320022,102100330211131,100011014103012,100030220101040,101130031041024,101240021020011,103140100210304,100400020033003],
+        1044013000043020: [114113014000010,101200210302201,114202400003330,111201222220201,114330004003002,100102001040033,114404022311000,100002324211100,111231042242020,112100204041010],
+        1022140303310000: [100310304310342,110140044401202,101300124221002,101120101100112,102000300200231,100002030410210,102231031123103,101043314210310,100314420140013,101401204040200],
+        210103424043221: [100004011220200,114013002301104,100044101022021,100030021041110,102101320234011,102002400210101,102400204022024,111102142213410,101000021004021,100011100412123],
+        112410130013220: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,100000301221024,101224322120022,110104422010121,114100200002120,110310020040401],
+        100202003303000: [101100000330120,101214440300301,100000400000241,111102214104403,100132004231230,100033230420102,100000030000001,100222024100230,101412001100222,112000042000001],
+        1002001241003040: [102414440232000,104130210010324,102201204040211,110001004202040,100314041003230,110024102010002,112124042312000,101324030311010,104131002110200,101402001013023],
+        1120010232022002: [110100200030100,100000411231000,140300020110000,100003301030120,110132020031210,100101004230030,103044004034040,102300231000210,102412140201410,114034000012210],
+        1101013002130000: [102301031000041,114210002340104,101013224010003,110110131010010,101012104214110,100400122200034,112000202301020,103140120120101,102031004000320,100203220431202],
+        1024110222041042: [100002004303100,110130010102101,102000041101100,100042004301301,100012021031014,100000201032010,114010204101202,100404000020000,100010210410420,100020424102200],
+        134001004220200: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1042201230202413: [102102031320011,102042031102112,102102031403230,100041140201301,103021004022022,112122334022424,102300004110122,114000202300004,111103022240110,100022111001013],
+        104000031040044: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        211004110200000: [100000211041234,101130000023030,101221200010202,102100014031110,101010101034002,100040001022001,110034030120032,110004342121110,114022000012100,111213000012124],
+        1121304220200013: [110222140404112,100402020024213,112400204022010,101012400322002,110410020403024,103023141400000,101001100300012,100201020442101,101044021001402,114042034010020],
+        1120412101104010: [100100124102430,100000240122202,103112041441211,114121224001011,112200042021241,110242012041100,102300020212402,110240230112240,100102104232420,100400040020412],
+        1024031211314001: [110010200422102,100000011211210,103100024030204,103031040122130,102101021400201,112110200433212,102110014020400,102343000224001,110104011122301,100030041220222],
+        100202010004001: [110013312204132],
+        1422132110000010: [102000004002101,110202000000310,110000010120043,100422314300200,102141410230020,100042030120422,110020001224021,101012410301010,112100000200031,103120001400003],
+        120103122400340: [114200212322001,100401210020002,112210322040121,100402042200000,110001440041003,100010111022102,100220300410430,102000224000000,100002104302110,101022440300020],
+        1010300233111023: [102112104001220],
+        1022132302041100: [101022014222024,102103430210003,100012014300120,110100120400020,102414014022212,111311002224001,114030000030012,112010024023002,103242044020102,114231032340010],
+        100021304133021: [103120010103002,102040310222200,100112120404244,102100421412332,102242220202120,102122101340003,110420000002231,111324314134002,101300200311010,101200010301122],
+        1011013421004002: [110241142024233,110441140102024,101001421031220,112300421134001,110210301200101,102033124000111,103021004014220,102200001002100,102210101121104,110010324410130],
+        210320400230041: [102000140200220,102104231340013,110033032100000,110011002100114,102012001130103,102240044042003,103303041402240,100000020100000,100100020021020,114023102300012],
+        1041002233112000: [110400124241011,112104034022022,114233300214304,111020204112021,103022444011022,102101101021304,110210000000040,100031324100010,102202000232032,100040004202102],
+        1212413032110343: [110442104221030,101224001202324,111211144101202,100002001024100,102103130221330,110000300140010,103102134001111,102011310202304,100003114100011,100002314204210],
+        1100021003100400: [101042410301221,110432300102000,100102024100020,102304000210204,110040344210011,100003320401100,100020120101000,100003200020112,112143144020012,103231224012042],
+        144403431442201: [100003414100400,114221004002212,112010022302321,111110420014032,101000214211011,102300131102000,100110204101020,100000001020034,111322242223400,102101001412044],
+        220020102410001: [102400111402142,141030301403400,100000024100211,120020211120020,110230010010142,101302101002110,114233112330324,110030211224203,103222414000312,103221220100201],
+        122011002014310: [110430101000310,114000322300011,143310043400402,102200114042333,103101201241421,100210101003122,114441004120303,110000022011224,100000330000200,101012220320240],
+        1042020021012132: [102022004012201,111130210020000,111102042213043,100000024210130,102034221103124,100034024104211,100014030200221,102041320220204,100020134212021,101201004203204],
+        102120204200012: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        131000034111032: [111021202200011,100001010100220,114110004102301,100414031001210,102000004012011,114023102303000,110101100012002,114421002320003,110001002004240,100030220002102],
+        1122311210003213: [110102224201130,103301201402204,100021020124002,102104131412412,114020312300021,102400204043012,114042014014024,100000000200102,102014040242202,114420200001202],
+        1120023302141322: [130310130330100,101231031400202,120412000041110,141111210002414,131130010401211,102111000103032,110231402124034,102000444004121,100400100013010,100401002201241],
+        134024004220000: [100144100410414,102022001101400,110232400010300,100312030012210,101120204202002,101043021124401,100003010000000,100000404100023,110014301320111,112413022010030],
+        1001033402010024: [100020344302010,101000024004442,100002100000100,112004302004223,114100102340003,110130030020000,100400032200141],
+        112434100030022: [100003031030034,101001044211204,100031034311401,102100010233022,100000140100020,103001324000110,100002014200021,103211014030010,103212320212011,111010024402022],
+        103010120124313: [111300232202103,102301401002404,102012004010000,100040324331403,102400100220000,102001104012021,100242444300104,102002104014323,100401241010122,100010010102122],
+        1431013400220000: [102401030231212,114020012211143,100014011034234,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,100000324303120,102433214043112],
+        210021210000001: [110000402130200,110210002110430,103024004010134,110102204202001,100141101040123,110422420030000,420011043004003,110040002032114,100120414100102,102404224041131],
+        130041301113140: [101003024212403,100010220101010,102312004112400,103303004022010,102301020241301,112100004041242,112111040201200,103201010110301,114021102302020,114040032331113],
+        1000144002110014: [110041030411301,110001041213031,103301210142043,100002024200142,102411000200000,100400014321101,114100122342002,100010101020023,110033041200104,102000221442214],
+        1020410000130221: [114213134000203,114300020001420,114001012302043,114133230000102,102400100202230,100001021030011,112410220202110,100000010120003,103141210104024,103200110102141],
+        1010241131213202: [102301344113012,101231211020143,112144220201011,100002131020410,102012214003000,103234000104020,114420102322024,100001001002322,114003012210001,102004121130412],
+        1020023122120010: [100002000004200,103040000100120,102030324002210,112023102304030,102301030241010,114221004110220,103000204040334,100114100032200,101230321023001,100000400003104],
+        1200212320001032: [100201141200000,102003431300000,110031400020301,111001312234300,112112000201110,100223021000240,110110412014004,110014204201000,100030120422020,111312044130120],
+        100004242014102: [114101020033111,114410042322022,112202212040211,100331101004300,102124230233400,110142301120031,110101024400320,114211224002144,102001441133310,102212140200424],
+        1002000130212130: [100030401020131,100020344302010,114100102340003,1204002112200213,111214004444320,114024200040021,110112001300220,102013210240010,111024132204021,101002414004140],
+        101303320210002: [114040114100221],
+        1004232223002210: [102100200234203,110001214200042,112002242001000,100021111211003,100010210101012,112010204003014,110134011000012,101032240320040,112001302302020,100203331000130],
+        1000040404100111: [100040134340044,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110210020104031,102041210224224,110240411110010],
+        1401404020211000: [100144101000002,103220201200131],
+        1011012040221310: [101011004212201,110032022002020,103031234000122,103230011412301,101042001021012,101100104002023,100400000010020,100124021201021,100102001000000,101240404044020],
+        1120011230200210: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        1012022044000112: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,100030010102102,103312241402001],
+        1020012401200231: [110011022201012,101022000322012,110103220120221,100101114301402,110123000122000,111322402200000,103300101403212,110421412110202,100200001000040,103001004014140],
+        123401111214033: [110320414420310,110100100101041,100420124100211,103010211222002,101040120320230,110013021300010,101043234000412,101220000040002,100422001002123,114010010010002],
+        112444420100221: [110300120403013,110131002010202,101010010320020,101120101100112,102410124022400,102300424112201,101020004001002,100002030410210,102231031123103,100030031220030],
+        1001410442111100: [110101210013000,100404121014002,110120020002304,100011000202214,103040020122332,100000024100000,102102304001200,100010040001210,102002020220000,100102120422002],
+        1024013000140000: [110102042010220,101020124000413,111210000001101,114013400011030,102202000201220,103004104010210,101220024041000,102010300201414,100202200003011,114330432320002],
+        1000211120031000: [110204004430204,110300011230013,102100400222242,102122114003140,100002021032001,102011404010000,100000011220004,114111002340233,110000210004001,100142121011414],
+        1424133111312010: [110102042010220,101020124000413,111210000001101,114013400011030,101201104040034,102202000201220,101020111030400,103004104010210,101220024041000,102010300201414],
+        112132120131101: [103011200100000,111020400040100,100302000140222,101031320320042,102122340200200,114000214021240,111111000020023,101311111000100,102400220203010,111000000012202],
+        1003003210020004: [111103402241002,111200130011000,101222414013042,102210044003121,110202432243230,100140104230112,111202132210400,100120310112042,110020000110130,101202000300400],
+        112104010210330: [100041010003001,130004114102103,102001100240033,101243220304022,132220114023343,110000011231142,102303400133033,100130034000100,1022020221130104,114204100213041],
+        1010001221201024: [100031034311401,100023210021210,102100104000203,102000200200301,110200101200402,102021201410011,114013124030022,114104200220022,103211014030010,100034124101023],
+        222031420110402: [100001220400300,102212001103340,100002334202400,101222401020120,114010202211102,100023004304344,110220242131013,102102010214104,110211030000131,102222312020011],
+        1001103203121110: [101001421031220,100021004310222,112220322030220,110313312021120,111000034110311,102200001002100,102000024010002,100202000433120,114240422320041,103302020111204],
+        101010133001340: [102002014000220,100002011042020,102010200221000,101041201002422,114402320000202,112000002000420,100240101000030,102012401001012,112431004013030,114003002301122],
+        1022223410030103: [100023324302420,103111201422013,112203001103411,100212024121000,100001001033200,102304110220101,114002004100042,102402114000021,102001024012440,101222244040420],
+        130411030000022: [110000204210130,100100100422103,110020134410001,103101001422002,102204004042041,100021140000322,102101002004300,114100202200202,112000020210140,103230410100410],
+        1410004201314301: [100321004011041,110002342100014,110241024242442,110021312002040,111101042244210,110124002040002,110023410122402,114302200014241,104132420010010,100001041031013],
+        1121122214014040: [101142400332243,110002001321022,112022002000012,101401204021230,101012000342400,102041201123423,102121014020030,101020341030100,110002034410423,102340201100414],
+        1120020340001104: [102000011122000,102302021000041,102110111410032,114002100033010,111000000043030,110011021320030,112002101120233,141002100010000,101402114020000,111411332102004],
+        110012010002010: [100041300102040,101204144232110,110000122010022,100120121014401,101040014002222,112343011130000,112000340233020,110204214241002,112200322024213,102100130311000],
+        1110022402220300: [110210400114203,100001100104021,101101300010301,101122200300011,112210201100012,112001122302311,101001211004233,102303011002000,102314100240010,110312020400202],
+        214301230100000: [100102011010403,112021024004034,114030422211111,102343201103202,103343324020020,101020001032034,114000102300204,110330204422022,100000104101110,114200002320302],
+        131001021020030: [110202012100020,110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100],
+        1002100101403234: [110202210102120,114001004100003,100041014102004,110320022101120,102131421000411,101412030302001,102222021124112,114000040031021,102400001110113,100404201012020],
+        101033322422021: [114003344011001,100021101000000,102334021001211,101203001010111,100031201030102,114201104114111,101041001003300,100001100411302,101414214021020,114123420002142],
+        100020140020112: [100000110410000,102302211100230,100001004104043,114022212300211,114102010223100,112014402034232,102002104004011,102102104002322,114222422332100,101003011000111],
+        102304313032002: [114012012330203,102100020211003,100000214102101,103100124003243,102413124042401,102033200222311,100100104102000,103332430114042,111204302220322,103021024022122],
+        1000320024241110: [100030231231021,100012004104000,112204231100020,102221201300200,102221111111011,111030022230323,103200344020010,114114224003240,101022410324200,110002002231202],
+        1004121110001220: [102121221343020,112104424022201,1302314034023041,1300034431310021,1001010233020100,112012200120020,102210104000000,111023100040110,111041134000211,102203211104211],
+        1224331430021213: [102420044040023,110410202122004,101004204040210,102332331001100,114022014010344,100120404300300,100021104314210,111023304123001,103000001400001,102400021111004],
+        1004200010332100: [102102010214011,103112004004201,101040341113030,100002031210114,100014144300334,101020304004102,100402032201300,100114004032011,102204004030201,100401324321022],
+        1424000111301100: [100010424101430,114000224101044,102110022001111,101020301114001,102102300210103,103024011431131,101011324001431,102320200224120,100030014210012,114100300000120],
+        1103211204003410: [102003004000040,102011101131021,100021100013401,101242421020211,110310042021341,100204011000000,111010110042210,100114200020220,114401004122120,103123200101000],
+        210140042111114: [102000404012021,114040014102222,101213110301210,102043234004101,102204414041020,100400300010122,114130342204230,100044021222203,101010000321000,102003400210000],
+        100121022223010: [104100421240110,110024042103114,101001101031102,110001040022210,100230114221102,110041221200014,102202121300311,110301122022204,102420101400213,103104010100031],
+        1012000300022120: [101201200310001,102020000201200,111232000010230,101230000302304,102300121004102,102300211000020,110222100011043,111322224120002,101020320323422,114220200214400],
+        1100010012244110: [102400040202040,100102011010403,100220000144000,101022344001121,101044334010021,101314041002010,112021024004034,114030422211111,102343201103202,110114140030310],
+        1030003421104201: [101044214213201,103121304001014,100020024101221,110242110001231,101001224044120,101000404000400,110414001210110,111100004104000,100113000410220,111141232221300],
+        1400000121040102: [101020024001041,100200201000001,112224232044014,103032004012111,110131022014120,112000002000110,101322221001300,114421204140122,101424044043122,102112014000403],
+        1010142322233320: [111010204124220,102030010224202,101021334000001,111142000010114,102220241100202,100402022200002,110103320400030,100401000020423,103143111404003,114213014030342],
+        1000044000120100: [101020100300420,100042034200032,100200021000412,101400240300010,110330000400112,110000000130104,110103041012020,111233314101101,101122420322200,112101100221122],
+        1000000000301000: [110130314400100,100032431030100,102022004010240,102023211411003,102340200224222,114002014033200,100004301021110,101010124001000,102111244000012,100400000034231],
+        130012020321030: [102101210213220,1340021101022233,1001013211040100,102220300000443,1132012124324031,110210103122411,1220440411222303],
+        1000020002322230: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,102002020243020,114002002300201,102040021121030,102102211140013],
+        1040121003022002: [101403014020203,100402004300002,110003032000041,100112000410320,110124044400220,101210211022100,110421202110000,102111010200000,103002110114402,100100121010222],
+        1403411023011102: [110110011340130,100210304330211,111121210031101,112312022021021,101041010324010,102104210214401,100011230101432,100032024240322,103202224024200,102130031410200],
+        1123440204100404: [114101024120020,100000001021013,100011204300012,110032220022103,102302340241312,103243130100004,100030414311102,100410410002011,110133000404002,102202000200000],
+        1031002421002003: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,100301020420101,102002202000000,100022024100041,102010410213111],
+        1000032002032240: [102202204040010,103333040110114,101022200343023,102000000221222,101320310311403,102011014001111,102331201001140,102101001342004,102103001414002,102022011101012],
+        200322444411400: [112000112000031,100142104100403,114202204113222,103200224020100,112024000213011,103013024002104,100103030001121,111000004400110],
+        1010300220000330: [114202200000200,103000021411202,114120014000103],
+        311120230120020: [111101034100200,102001140221330,114221122320002,110000100442023,114121002310033,103300101403322,102201111110002,100211001000020,111202102223103,110000100131010],
+        120202342410413: [100023324302420,103111201422013,100001001033200,103201000102140,100033200000420,101330104221320,110333034433002,102343044111203,103231001400100,100112034332210],
+        300001042040004: [100030231000344,112311011101001,110100124402042,102120404134413,101100200330040,110040212000010,114102124000200,100100221040404,110211202030440,114440012312003],
+        1021204000430123: [100103301002044,111130202220102,102020400244030,100404200013100,100040104331012,101114024200021,114402102312001,102240041122001,103204001200221,114244104111440],
+        1222441104201020: [110011202100142,112400102013231,100410100030221,114410102321111,114012002212100,114203110001031,110400112210122,112030122000211,102023424004210,102212110210401],
+        212000223010102: [110202032123210,111122004100020,110412244220110,102411314024401,114001002300430,110101230100001,102200034024120,104102130014402,110314042102142,111120122242010],
+        1012403241003002: [101221422120021,100231114320100,100001000002210,100400320033201,100004130002301,101210300302302,102020131413423,110020204200342,100000220011133,114013012240011],
+        1101010400000100: [102020440242023,100220010002421,111210240010100,103222010114132,100110004332200,102430001110014,102002101410204,102000004001020,100011100412123,114401230002424],
+        1104301232301440: [111320200011200,101030100320211,114000300021012,101141114003000,100042004200210,102330004110401,101400401013424,114012404102202,103101011210020,110402032114001],
+        1200404130401032: [102302340241312,100410410002011,102101224002210,110311232120010,122203322100011,102010010220014,110330022021224,100410311001021,110123442011041,103021000110211],
+        1000204000412003: [101022014222024,103114204002100,114230004110101,100001101033010,102142002000030,114000024101202,100100014302013,112020021120403,100002114104410,102130314134001],
+        1412001330222001: [114122220031001,103002221240241,111043024121020,114104404002304,114102040034111,102141002000420,110431301241000,110101021000023,101000304013204,100100130003000],
+        213210041001200: [100140201011204,103010014013304,102103030201001,101203104200224,100140000024021,101223024200014,112240404012020,110110210012111,102000220204011,101201024203004],
+        200310002322010: [111000240044102,114402414111240,102111211401000,101030411001300,102040444014121,100014204101020,102012110232021,100002041040430,102002230200001,102004004001010],
+        120103020011000: [114004142244000,102002004012310,102130034023112,103100001422200,101330120302103,102111301402121,102010310211212,102210104011024,110010004202402,103002104011000],
+        1121001201034201: [100111011040002,100302000140222,114003114024220,100041221020214,101311111000100,100040341021101,111123212212000,114210002340000,101200221011402,102221011011030],
+        1042003233402010: [102001231413224,110220202124002,102030024010020,104100212101210,111320000001004,101004204211203,110002012000001,110304000402222,110201002040204,110010402102122],
+        231030030400001: [100440104303400,102122000214201,102220241100202,102024240221040,110320011200230,100342024100204,101422034042201,100011114300334,110040122000002,100110201042101],
+        1002210020110421: [110011232100412,110100100031014,102401010202301,111110004101041,102112004001032,102212034044212,100021020414340,114101212202230,114100010002210,102000241410040],
+        220201011004010: [102041100200402,112100404000230,110400112021140,110112121002403,110122221240302,102241230200120,110201111200204,110400104222012,100000001034120,103302024010240],
+        132241324340300: [100244210140341,102024124000001,110002222201000,114104300220204,103102321423211,102121300201244,102101200231432,112000240221140,100042000010010,102000331132232],
+        140330130401201: [100423004302232,110030220000310,100110034332223,101223100300200,102001034002201,101100011201440,101104401020410,100113004304010,101310311000124,111303214132004],
+        1044300211120142: [102301344113012,102141124004222,102430201110000,114010200020312,102124002000102,101343331004220,112042422001032,100011004312001,100111200414020,114044414023030],
+        1123304221013002: [101211020302000,102420034022021,101100121020020,112102000423104,100004400012402,103300001402313,103001430122140,101123011102101,100401300020101,102021230202032],
+        120000300200443: [102021024000010,112011012004300,102300010242330,102000401120420,114011102210402,114300100000041,114023204100222,102222014011300,102101430203000,103030204010001],
+        112323221032310: [102304340220231,110420104221220,102103440200402,101014424224002,100043000200103,100142401040042,114001032302222,101013404210010,110230000002324,101401304040214],
+        1040241210400042: [100012120201211,101410044020102,100004210412101,102011014010000,101420031011004,100000014310020,102111001341321,100022204300002,102202122000302,112100222300311],
+        1002001420000321: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        130011001120203: [100422000031421,110302040102004,101032000323012,101402114042420,102220021120430,111341300012200,100102000010243,111302304130401,100024334203210,103031410122401],
+        124202200022300: [100021234303000,110420020103322,100030101232000,101140030330020,110030242131210,100340204211100,110203200013020,111101202242012,101400430300211,102010311103102],
+        1120342300121001: [102022004012201,100000024210130,114201224110141,102034221103124,100034024104211,100014030200221,100020134212021,114420022314022,112001120220130,101040010321004],
+        1000200020301202: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,103140124002022,101042421021120,114013204013220,102000100221400,114241204001213],
+        110111010221120: [100440031001120,102020200223310,100020001041410,103220011420242,102032012000101,114014112302234,101004201001232,112102102302000,102141231343401,101231104200000],
+        1020202000004242: [102024401440202,102110021342213,100023014340130,114214034100221,114202024111304,102200204021004,110200102020212,100041430100100,114112000000100,114121144001400],
+        101423111412020: [112004202302034,103300004021200,102122214131011,100023031000024,103230134011412,100012004101221,100020004101012,102311011000200,102021021101204,100231020102202],
+        140211103041000: [110011202100142,102123411402002,101042201030422,100410100030221,100002001211230,114410102321111,114012002212100,102120204130110,100023040002011,102302114113421],
+        1002121200421203: [100011440000101,100021414102020,114103432340303,101021411140012,101202004200131,103012001241030,110200240001240,112242200410103,110200002020114,100002440100200],
+        200424200100140: [110424002022221,102000140200220,102012001130103,101120000011032,111011022203204,110202000403003,102003101131002,103102014030320,103210031422000,100000131230300],
+        1000444001001240: [102041310200042,110301030010140,104100002101431,110221000111302,101010001002000,110022140120012,111330020002213,102011440201423,114011212320331,100002204310140],
+        311202303020014: [100411024321140,103222210111002,100002004102120,101200224010201,112000401122102,100003404344101,100022011021013,112433200202102,102112012001422,110212210121023],
+        1003111420100210: [111201032220400,114203000004300,100022120412132,100000321031423,110322100104010,114043002302200,101222121020001,102120230230000,100032021041010,114100004121121],
+        100400202222312: [110104112010103,111102004100101,100122004300410,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231],
+        1432222010100001: [114213134000203,114300020001420,114133230000102,102400100202230,100001021030011,112410220202110,103141210104024,102200100204220,103200110102141,100021030100001],
+        200321401023113: [102130034023112,103100001422200,100003344210120,102401001404214,102121024000114,114022004021013,114001002300121,111220210022140,102002244010001,102412301400040],
+        202100001410010: [111102012220413,101101131132022,110010102132024,104120211242040,112220104002000,102223004042102,110410312121010,110330130010041,102422200201100,100432121010201],
+        1101223420330001: [112210104000224,102302224113320,112441402014033,101211120304230,101123210321002,101003010340102,100022024212302,114104002204400,102030001134340,110001010130320],
+        1004012010220044: [102141000230042,100120221021011,102002000221000,103220200100320,102000230224024,114000020034200,100010001040020,110200440000121,112400204040200,102200014114300],
+        1420102240203012: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,114201104111034,102310140240012,100014204201000,102103321411004],
+        1402320420412004: [101000330321020,100102321001302,100042100200210,112240330200110,100114010023242,110244014240010,103103400211221,102100401400123,102200011100023,102003034000312],
+        120002332420030: [111212022200012,111412020003222,103021020002400,103031041402200,110010102002310,103004041414132,110302242202220,111121004402312,103010441402001,103221000100141],
+        1112121041002400: [104130302103001,100000040401014,112423314020341,101000024001002],
+        100201434213010: [114303202300104,112020044000400,102100300233312,103041130110112,100400020010210,110023014202232,102020020204201,111214020002001,114011122301424,111001320002031],
+        1001222041030043: [114034220041220,102102231400111,102100422004010,100032421040120,111100232241200,100024004210111,102002100222202,103343010113030,100031404302400,103200234030122],
+        121100100114422: [100041001041330,110220300003442,101320214231000,114442130003202,101240200302230,100220400010440,103212034041210,101430001013400,101400111112122,100402210022301],
+        1403412101102300: [102100201440001,110400011311001,103300120141130,102110004000221,110040002132020,111144202220301,114224204100310,100000000120200,101434031010012,102304011004310],
+        100412200420010: [110220100000102,114042102330002,102102011414242,100041004100221,100014001041000,102310030240210,110000010033022,102210000201040,110110122210000,102200400234000],
+        1121320100221414: [101100011102402,110012220442042,100001114303001,100002020122000,103001031403201,100034204311021,110033020003012,110023100420044,103332211400441,103011131430040],
+        200030200402014: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,114321002320001,102042000222002],
+        110230223200411: [110230301102143,111100210020023,101400240300130,114000322301211,102222202001003,111200000001000,112040020224201,102332210244120,103002004032001,110110302214004],
+        1424140032000000: [113020102210041,103042144040323],
+        1031020000041111: [100000034301140,102111011142022,114132142312022,110211130002000,101420000330441,101040111003030,100400100013024,110140342044321,102213024031310,103010410104400],
+        1112202301112040: [102302200210010,102340120222440,112202000411103,114223204100010,111041202200140,100023014313010,101040100302002,102011314000200,111114200024112,100000020202030],
+        101002200401003: [101121211101004,101114101012020,110002002000100,103013000104404,101001304001101,102041111020030,102011000200113,110022001201023,100000040001141,103101124003110],
+        241232403110130: [110311002102104,100410204303320,102010420220000,101000040341000,100001024102000,111330004130112,103002311240000,100202144121213,112001032003010,102010020243104],
+        130021000200100: [110000101304203,102130020200000,110040020001022,101104020300301,100401241014100,102101004000011,110023330004130,101401001010021,110033002000020,101200200300020],
+        1134110400102221: [102022010240041,111121100010041,100020000102421,114202002324000,110013024201420,100004014202422,100112104300311,114000004102342,100002100021324,112001200221123],
+        1042320112200000: [102240020200400,110020402002000,100042111220111,103310421404111,102101134004010,103240100102101,114100042311200,101010001000400,114002114021200,101020231000000],
+        1103042023022003: [114400022321400,101302340312230,100011101222101,100030411042022,114304212302401,100000014201221,100401200010140,101120210300322,110200030001040,101001040311000],
+        113121000100020: [102114000220010,101004030322001,100431024302303,110231211300200,110040044201303,112210304010130,112004020202021,100034020000002,100221424220000,101110311041004],
+        1100004111030022: [111110034423202,112014440221201,102311010213330,100021024310204,100022104100032,102001024002022,101003004212410,101000004214010,200224341002234,102412300230420],
+        101313200211200: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,110420220003321],
+        103214400003110: [102312101001340,110020000110204],
+        100000002334231: [114010204101202,100041234101100,112204220200011,100000101024211,100211211002001,103210004031201,111231012242301,114114100214000,110010220040013,101104320012044],
+        100322100004201: [101041301000320,103242311400421,114302200002200,100020001224324,100200024301301,110010204412200,111202010001410,102203041122004,101202020300403,114001210031400],
+        1004030230310002: [102101021412120,100003014314102,100011214102010,102112241342203,100002004200212,110010332201012,101010404010000,101000411001330,100033304210223,100000011211210],
+        112222120112221: [100113220020101,114031000022030,102014002000401,103103241421322,100300211000020,102104304023201,100002224244002,114310200002400,103211220100010,101202201021310],
+        1120400021000040: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        110300202220101: [101111140300020,101240301000140,103034130144031,102140200212214,113013120103104,114101320030004,112141320423240,110220204211003,111200142223240,113201230210100],
+        1000011310010300: [110221204243141,100400220010240,114102210220100,100000010004124,110312300040010,102020200203443,102102001402012,100124221021011,100012200002000,114012002304110],
+        320130342401300: [101200341010102,103124210100201,101001021020212,102401001110000,100131011001300,112011300223041,110220002041102,102200100241120,102030031133201,110032232131000],
+        113340030210040: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1120320130021143: [1000200022121000,1320120012403100,110110022000330],
+        1000312101023124: [100002100100210,102420424042020,100010001032223,102111024000402,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320],
+        111313120002121: [102101021412120,110024020421011,100042014310200,100003014314102,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012,101010404010000],
+        101004113044212: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102,114032234033303,112400034040002],
+        240033120420113: [110000000003200,110200000004322,114342044032200,102041100200402,101100401022000,110400112021140,100400000010022,110213140003121,110000002131031,100020001040103],
+        1011000144402210: [100322100143040,100030240102022,102303320221102,103311034030000,100020414100300,100040004102010,100013441022002,103300420111302,101002301003030,114020412332003],
+        112200333201104: [110212022124220,100003100410042,100222034340301,101440044041401,111210012243010,102130124000000,100032310000111,102010421413322,102114020210302,100001100100040],
+        100341400104101: [111223402220443,100211120140002,101010201030113,104111021244202,114033000032021,102401004043011,102100001444023,102223134010120,112002200201220,100300001002041],
+        1001412420120310: [114043022300023,101020021032101,101003411140003,114304444003432,111000014110020,100212031002000,112002004002011,101040021003100,110023341031030,103202244021110],
+        201014130212002: [102300001002440,101011020320030,112202040411432,112130004043234,110013020024300,112101120201010,101000224223002,102010211120200,112003202000010,101224011011414],
+        1010202003404120: [100144101000002,103220201200131],
+        231113102311022: [102334224110044,112430304044242,124230402001402,110001044200004,100102001002010,102104111121123,103411204001204,103010124004030,100121224230200,101402224041012],
+        100021230024032: [100100021040144,114011114123044,114101404004011,114142044000010,111230032242001,102101404000000,103230004030322,102300200221021,114322222322000,100104020022212],
+        140112103012403: [101220112203201,100223421002014,100121004100012,112104024020004,134113234320032,102000024012122,101013000301230,111014034121410,112200224042000,114011424010010],
+        1201022020141000: [101010224000130,101000414002041,102322004112023,100020140002030,102010420220104,103022301400010,101101020320132,111302024132000,111010104411012,102201100230001],
+        302333200211020: [102242304042410,101001034002001,102000201131020,1010120030012200,101024411001024,221104221024023,102123332000002,100202211200032,112243004012100,100142410401000],
+        1000002020031020: [110210024220020,103101001422002,102002104011244,111140122114101,103230410100410,100012000101100,102142312001341,110020022102201,102120011404102,100003330100242],
+        134240011004020: [100032041021210,110004301222000,110414300030001,100030020011022,114310000001232,111202012222402,102040041320010,103203401400132,103142111441040,110104002010100],
+        100210302241104: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,103130021444021,102100104002224,102100224000210,102103321411004,114113000004012],
+        1031202410430003: [104100012102004,110021232000021,100401241014100,110301322104142,100001140000010,102003000212200,102420020204200,102000200222121,110330010012100,110033002000020],
+        130021401200220: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1020002400310121: [101130404200012,104132020011100,100000111002110,100122104000030,103200130102024,100400322200340,112223211100103,110341000010200,110221000002200,110014024413040],
+        1012410110111000: [110104112010103,111102004100101,102202414041044,102140014001101,102000104012232,102021100220101,100230120001003,114000040010421,112042110220004,112203221102231],
+        1430433031402421: [100100021040144,114101404004011,100004414100021,100102404100430,103020241402220,102121001343030,100104020022212,102023110212012,102132210233141,103321000110042],
+        100110032030213: [100011004340114,114300204032002,102000021444112,112121032014014,102102030210111,102000201011310,103300100110220,101201041010123,100120004300402,102140341343300],
+        1003143213010340: [103302040111403,100030240102022,103311034030000,100013441022002,100020224101141,100010300201242,102104121340001,100232034333120,102200311122413,100020024300241],
+        210100042110420: [114001000020102,101020040300010,100213001000212,100002004212420,102121014002022,100141404233000,101020001030204,112201232020001,112123300230240,100210001002101],
+        1010431020002110: [114100402200003,101230034044002,103202014020301,102013021123204,132002230002223,110120104221411,110000320020104,102102214031100,102004144013001,100200141200210],
+        1043001040000400: [100131110020124,110010000441312,110104140030101,112000101110201,114322312303022,101101400310130,103240304020120,102240130230402,110012120141100,111000220000000],
+        120410310011120: [110201201211024,110221022101104,110123004401121,100040341020133,111101344104210,102203031121210,100410220030300,101110020013040,102032124001120,101021204000200],
+        1410224130410310: [114201204111222,100031001020040,100104001041200,102012200202303,103300004021200,103222114034232,114210400000112,103230134011412,102112222001200,100021104100310],
+        1110024113020240: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        1001132101102313: [101221020040220,102212000200124,100300310140241,100103104302044,101041030320401,102141212000200,102042000222002,101203121020430,100030010102102,102020004000014],
+        1400200023240011: [111041004113300,102020010203200,100011144312020,103110120210013,100020221040231,1012220402104110,102011204001010,103012004034001,102001410221023,101010111034000],
+        1002001400324202: [100032041021210,110004301222000,114310000001232,102040041320010,103203401400132,110104002010100,114142044120310,110220410000040,101030004010034,102201411100212],
+        1100020200040100: [100031300002022,111012002200101,110210022120040,110000021221134,112203412020010,103002044002032,100101020402424,102201112000001,100111020003101,110420202110100],
+        1022340221034300: [102311000212220,114100100022224,100003144300223,102423221401120,100324311003242,101430021010144,100200304102211,101012311113131,103022120100040,101004224012043],
+        220310002340110: [111201312241430,112120200204001,100030024301424,101011114210004,101211020302000,102420034022021,100002111231143,100102104102133,100210410102144,100103400000201],
+        140340430110040: [110220122044010,110042304412204,114020124021122,100002201003312,110110111010042,102230121120000,103300001402013,100400010013330,102204011110020,114042244102400],
+        100301022000103: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1103040030102440],
+        1120100002021000: [100002131024210,102410001402210,110000102100012,101004200304221,102010020223010,102120214001422,101412300302220,110320002024021,114201200004112,114002044114140],
+        203204120240002: [100231401213132,114210104113314,114021232300112,103001000120444,101144024000232,101302121004422,100000010011430,100114420000140,102022300241201,110200100001242],
+        1140002301222214: [112124004022322,111120230020122,102103201320411,112124310203104,100100031043410,102001000221124,114001100024243,101010111033143,100021221024312,112020100202034],
+        1013010401042000: [100043014203003,112332000411020,112230024010203,100000004244400,110024001211221,102012201441404,100131014234134,112000120241120,100030224300202,112202140201200],
+        1110011230000000: [114033300040100,111320312222220,112021201120101,100001000012021,102010231120312,102300014110023,101021110322104,102100230210011,114003202304041,114420302320210],
+        110022313300322: [102004414000212,102002104014022,102041324001010,111020240024110,100002101021040,114013324102022,100100100021142,111200112221320,100000331021022,101400314042120],
+        1020210040230441: [102411111400020,103002100100400,100000014100240,114011222302401,303020114301043,100100030200200,102202144030212,103031204010122,132044134324300,111010111010043],
+        1212020444010014: [100030400013321,1010213210204021,114101020033111,112202212040211,103020004000410,111100044403012,110004022101020,110142301120031,100001010404000,102032001030043],
+        104230102200022: [103204301402123,103102224034002,111100100004430,102000000222203,101001301032024,201120000130201,100022431030100,102214101120310,100100104101020,102320014112012],
+        1103030441430142: [103204214040130,100142010410011,101210210300031,102323201000412,102212434110001,100021020412110,112102314020000,114010002304030,103110000223000,103000210120000],
+        132000020002114: [110300222104222,100002040410130,100440001000012,100403011002204,110202414214022,111002420031340,112432142020024,101103012130233,102320304030000,101112241010002],
+        104232302212022: [100310014310311,103230004000142,102011114000042,114110024003013,114142102344042,114114040001042,100000030003111,103002004001434,114200000001000,114031122210003],
+        1140111300200210: [100020300200110,100042000200211,100024024200032,221123404200214,101004140304211,100021024100301,1101210010010223,100000241033100,100000134100120,101012010303400],
+        1112000002004410: [100100124102430,100000240122202,110010102234002,103112041441211,100410131001034,100400320022213,100433100431011,114121224001011,110242012041100,112200042021241],
+        114121024420011: [100030220410304,114000102210140,100000300012003,102001040202020,102020430244102,100003004340202,100112324103232,100200001002101,100133210000030,103142211213001],
+        1011140134403200: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102141212000200,102042000222002,114402104142102],
+        213141000004210: [103241000112010,112020104001300,101400110300032,110032412204130,100101004300200,114101012201420,111032414402324,102424040202123,101114420310142,101120244000002],
+        102020113001000: [100301001000202,104101112102403,114201432320014,110324020012330,120000002023011,101014020301201,100001134302201,101010111002141,100000140413200,114123124143310],
+        1141040413110112: [100012024334030,110002002002112,101000001031401,100003104100022,111204014130320,102030031133201,114100340221110,100000221233001,101000114000003,102142034004000],
+        110014421002320: [100021400101221,114100124100413,104130301242304,101001114012114,101141400302200,114222042332003,100002044101122,114020210010230,103342424024214,114000124014210],
+        1000000210030210: [100110210024121,112220010202202,101210021011110,100020100200010,100020114202320,100400000033202,102012004000242,101001010321440,110011002014134,101001100320111],
+        1042011430220123: [110024020421011,100042014310200,102100011000033,100002004200212,110010332201012,100033304210223,101023120301030,112102030200341,114242200000000,232421034234213],
+        200030222210014: [111030212113431,102001111011201,110044320441241,102233034000002,110410122010102,101122404022022,112130004021000,110311110410340,100100200021431,112101202012010],
+        1202030002011000: [110001114423041,102302014024114,114211020002103,102004200212202,100002134211200,103000001400122,111140220032112,103100401443440,103030010101002,103132104000440],
+        1100004104404214: [102134133001030,100213044231041,114124130214200,111012030031241,100103244002044,101142001141142,100400202201440],
+        230311000204000: [110000412003001,102011331131302,114000230023300,102021204013000,114400200004310,110003000024101,102400401412102,110424200100400,104021120012202,103211031422023],
+        1021200401230012: [110403302023130,110001004204310,100010311020030,100020000200000,100141230020203,101031121003021,100200120030203,103111201443022,110101214400030,114104040220130],
+        1113211221020400: [114231202331202,100003021234044,111102032220111,111300042200340,101010041032322,114020042300022,100021421020002,102400004040100,111120204100203,100122101040022],
+        100011030020023: [101223214040000,100304031003410,100202100012203,110130001001030,100403300010004,100402420012143,110020012000204,100200001000020,114041002212000,112014000202040],
+        100010430000200: [103100221440010,102140000212141,114301000000002,102424114020143,114012444020220,102023021321020,102114020210202,100040401020413,100000024300321,102114001342410],
+        1411121410001302: [103223014033210,110001311210334,111403414421302,220321332020001,101100234021102,100002220001240,110100014401214,110440112110241,110204010011432,110232031200002],
+        1000122404014000: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,101244324043222,112102232300222],
+        104003042102140: [100203344301100,101000110300300,111013104120202,103420104020200,101302034220004,110131411300312,110200124240014,102012110220300,100011011200212,114200024101400],
+        1102103221003103: [111042000041011,112040232002301,100023124103021,114230000000202,102000000240101,102020040223423,122202200013331,101111201110101,100031030000000,110100321201200],
+        144022300022023: [110401100400430,103143111443210,102112212004043,100144040410322,110103221143200,102320001001023,111033434402423,110020100110002,110001021304133,100400402200402],
+        204110300110012: [110112110030020,102331414110004,112000322311331,104100122102020,114211140213100,110201030002222,102212010202013,103203014030010,112002210221333,100201421200224],
+        1032002001040401: [110020102000133,100000204342022,102101220213001,101441101010020,100001214303000,111202322222023,100002004342004,100200100401130,100123010012402,100210131002013],
+        111003332003101: [112003100241220,102204304000304,102204001121032,102004000220013,114130302313120,100102100000410,114003124010140,100340000140032,101110021040110,101000030322212],
+        1103014102040010: [110011414240022,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,103301410110110,112114324040000,102124031023100,100204104320231],
+        300320104021010: [103343014022202,102003104011000,102220330202001,100022200120040,103002020110334,101021134012211,102140200310400,102220130204110,110010002103002,100220034341000],
+        1112244421004200: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022,110104422010121],
+        123000011201001: [110330400010040,100101231004020,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022,110020130044232],
+        1120410122424403: [102102211400103,100244104101010,100200011002201,114022010020032,100211310140340,102221231304420,101003411140211,100100001000203,112200000410000,112121324020001],
+        1120102120013040: [110011032010001,101001131021120,100000224343122,112011010210200,102310030202020,110020101010020,102420201112010,100002110000403,100242104310100,101021200342003],
+        1001001422400223: [110202000000310,110000010120043,102102011413000,102403404004110,102122410220401,110021232000021,102141410230020,110103111120042,101110020013040,114420000001301],
+        100120111000011: [102101021412120,110024020421011,100042014310200,100003014314102,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012],
+        1004041313102100: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,104101201240100,110000011012202,112102112301130,101244324043222],
+        1140200000302002: [100140101044224,101120004023340,103040031403031,101000211032200,100010044300131,111010130002222,102030021130002,110200300000010,101310120314012,103114014004102],
+        1121230200040310: [140001210202000,112042112310021,114000402302014],
+        1013122010400103: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        1040002003040102: [103030000122220,102200100200401,111132002240100],
+        1000100140400332: [100323120143000,100103021040102,102002210221221,100102204233001,114314102301022,100010311034142,100004414340430,101040421112302,100130220100340,102220112020401],
+        104202022204010: [101000411030013,103012004020122,101322310313010,100000000410101,114403020000214,100003341020020,114110104121414,101313000312100,101210440300141,103234020104000],
+        101001212002320: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        104320330011002: [102102101412200,102403004020222,412010100222032,1000030331001004,411002200000033,101111220222002,110144110000000,114320100012003,1300000411002032,100424222031420],
+        1100133304102024: [100240041002200,111220214444420,101000100310021,101014214000103,102102020312401,111042100001111],
+        1003020100310341: [102000001132113,101010241003223,102000020220000,100000201041300,101100300302102,114011200003102,101020104000040,114412142320040,102104442004300,103012000143212],
+        102412203001032: [111130112100210,102202200240222,110131044200121,100100004102234,110223332120231,100001024301322,114013044102010,114220114140122,101023021034304,110200210110130],
+        1010100320042314: [102001444000222,114120014120230,114010314101200,101001201110100,100113201011032,102230000204000,103102044031002,102341014010003,100011421002120,101012320304101],
+        100100311300032: [112213000200301,100003224334120,110204130004030,110202120003032,100322004314021,102343301100440,102410434000220,110110440020002,101101000330302,102020214010123],
+        110032311122411: [103324221401420,110400332010004,100104100412020,101020031030240,114010004022201,112000130230100,114212002340000,100123314231302,103111004004332,102102010234121],
+        1003214301411132: [114213002340022,120402022102021,102120140212001,114400210002021,103103221421013,102010002000402,100240011000013,100000021022400,114201402332241,144200203310100],
+        124220201321101: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,103130021444021,102100104002224,102020004000014,100000211023014,114144014122041],
+        131000301033040: [100422020001001,111130220010103,110000204200240,103000330110124,111120302100143,112300131102102,112232104010030,102100010210114,100210304104040,114400232320001],
+        1020040110002204: [100402200031002,102002030224001,102034000244244,100001224300130,100400300010300,114112220000002,100113314304120,110411420000411,110000001323201,101412034043042],
+        234021210112030: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        1142200130022002: [101004100320141,102330134110140,102214100240020,102010201321044,103204201414210,100000001233441],
+        1020400120241044: [110132010032031,100200044102003,100110231000142,102420210200041,101312004211100,110010030101400,100432200431112,111022114120310,114003422242201,113331432424011],
+        134014014242000: [102140304001042,100202201002113,101222044204000,110000121310000,103401234001024,112430220200100,101034220301143,110003122001030,101012124000101,100011201023204],
+        1204011022131303: [110020412000034,100111300414434,102130204000030,100401240012400,100101024033031,100010020402202,114344044033110,110040104211120,112110404021000,114013002303111],
+        1022101404224000: [102231114040010,101401211012010,100000000101012,102103120200023,101120211100120,102000424002312,100004000413200,102110000210424,100001100421120,102202340230412],
+        123000001220212: [101023424210024,110123042010000,102430321112030,111113004102021,112101432300231,102242200201004,111141224102220,100100101040401,100012130010240,100203114324000],
+        1020404001100010: [111320300014200,111320122204241,101000024000022,112030101110231,101000220301403,110100400020121,110011304200020,100021120002000,110003102131421,111014024112203],
+        132024004422000: [114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,111403100030130,102022400211311,110030400004330,100401241014100,102324410243220],
+        1044200113312034: [101112404231342,110011401011100,103021030102410,110430314220010,102423100202400,114100212211004,100020011230424,100104234230043,102000034004310,102101024000110],
+        210003120031311: [102041310200042,110301030010140,104100002101431,110221000111302,111330020002213,102011440201423,100002204310140,110110210011002,100020320002000,110410014240001],
+        1220400001122021: [100321004011041,110002342100014,110021312002040,111101042244210,110441010002400,110124002040002,103110314000100,110023410122402,114203104001000,114302200014241],
+        203400134000221: [100032041021210,110004301222000,114310000001232,110220410000040,101030004010034,103100104000121,110024140142000,100212204243022,100321001001010,100002111020202],
+        1042231103302204: [100032041021210,110004301222000,114310000001232,101030004010034,103100104000121,110024140142000,100212204243022,100321001001010,100002111020202,110321302022203],
+        1103012110120014: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,102020004001311,100301020420101,102002202000000,100022024100041],
+        1000310201220202: [110202102121414,100002404310212,102130004002131,100430324300003,114230222331120,110143020121321,102000414010131,110410300402321,102120220221022,114001122302202],
+        213040400030104: [101000410321210,102001041100103,111102324104110,114021004100002,101300201001300,102100221400312,102010101130220,102304331000110,114000100041333,102330324110001],
+        111010044221000: [100022200410030,112202202042410,100004011024411,100402000013020,110010222101000,111204104100100,110000112030000,114231000212000,100000101030000,101024011034110],
+        130300000221321: [100003211020020,111000240044102,100000101040120,102300000220000,102323320240010,100011200100023,100010044213301,100330204322010,102111211401000,100122124300402],
+        1222432202200100: [100403200030000,102330130243430,112021400230000,111344004132104,110021110013433,110201010013331,110104120000112,102110031144222,111100024421114,101042301031100],
+        123311231000302: [103100000124010,110030414202400,100202304341102,112203242043001,100001020000000,112000132000020,114110012310420,102133004000220,110000044200311,102014010220300],
+        1024210012010031: [100011201020234,101221000302204,101040010311213,114100200002111,101000034210022,101322201001022,111212010004002,112420042020110,101022310300133,102110120210211],
+        131302021043202: [100032041021210,110001041213031,102300324010203,110414300030001,100030020011022,102040011121100,111202012222402,111322234130000,102040041320010,102402104022000],
+        220210111042222: [100142040020020,114021442210441,102030021121310,102202010232020,102010104010120,114230200000024,103100434003101,110040200022100],
+        1001021023221222: [101004120224442,100413311002132,100320421001431,101233021020010,111131102210013,110400241240242,101001024210000,102000324010303,114002020042033,110023102103200],
+        111101122002221: [114400034122341,101444024041143,114121002310100,103020001400040,110200332041001,114004020010203,114002004033124,103204321414213,100012214302010,101100120332004],
+        1102011024213220: [100000201020213,114202112324040,103320300114001,102002204004230,101002020340123,101040004010302,100400042201311,112040202314100,114402102310002,112103020203120],
+        1003400144000100: [110020001310000,110214024430312,100011014100041,100310201003000,110412121110214,100212341003212,110142300120000,112013212032000,112001040231401,100012104313201],
+        1120120020300403: [112131014040114,110000202000043,101012120300424,110322020011332,110304000102141,114323102321122,103100000110030,103014231241000,103100421241010,114214004031103],
+        210002220240002: [110400011311001,102110004000221,110040002132020,111144202220301,101434031010012,103101410212231,112402144042221,102144312001130,114400240003203,112000114003411],
+        122402310000440: [100200011002200,112001112002104,113134002412222,102100311320110,110430002112002,102240030230010,110030010120002,110242024430440,111003212230033,111020404402004],
+        1030201021024302: [112213000200301,100003224334120,110204130004030,110202120003032,100322004314021,102343301100440,102410434000220,110110440020002,101101000330302,102020214010123],
+        104114000022004: [114011000014004,102142420210122,101013444003040,101421110303103,100110104300443,102412004000132,101420421140013,103013314020203,100102401010230,101030021031101],
+        1201022201410003: [101031020301304,103130314001202,110300000100000,114001102211300,103302320110042,110031422000002,101212402120010,100020321212233,111120022210000,114042324104012],
+        1020202040201101: [102430114020003,102011201441000,112230004011202,110212424434423,111200014103002,110214002122002,102400024041204,101000014004024,110030021011003,112220340200012],
+        103013122030041: [110000212001040,110020000431012,110034411301222,100132044303043,100012020103142,100402020013040,101014121000220,102120231120442,110021221012222,100441320030420],
+        1103021331121223: [104010100010424,103010014013304,102103030201001,100010221031023,100140000024021,101223024200014,112240404012020,101201024203004,112042430240120,104000021220030],
+        122101102022110: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        130001020110310: [100000041223200,102310204112124,110000412010002,110014101300222,111001002110313,111004034402002,102130140204101,103200004022111,103230241200200,111320300041212],
+        100000200110004: [102440001113120,110004221040341,103200204031212,100001024240030,100410110002020,114004102201202,101010014001032,100222014121024,100402002200000,102340140222011],
+        112121000133434: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1010200140220031: [100020424300341,101021414001303,103001110120021,103323314024002,101004121002043,114020320040231,110220012121020,100400104302040,100012101020010,103104001422213],
+        221040203202140: [103114204002100,114230004110101,102122101023020,100001101033010,102142002000030,114000024101202,102023110221011,100100114302030,100100014302013,102020121130000],
+        1011443204402211: [100203321001221,103010041241404,110333010011034,101110140302324,100004141034320,100220200430102,103402000132003,110021200140100,110020011020041,114001000001210],
+        143422010004334: [110420140032102,100110014103210,102013130223020,104100302102030,103200030110000,110002002002112,110202120004000,110000242104040,114000444100400,100000200003102],
+        122001040441230: [110102224201130,103301201402204,100021020124002,102104131412412,114020312300021,102400204043012,114042014014024,100000000200102,101011011000320,102014040242202],
+        121020020021131: [110413304221020,100440000030040,112130010202041,102012404000211,102141010230441,100100341010111,100110214103200,101030320322101,102322121000140,114140002313010],
+        131121040414300: [100100100422103,110020134410001,100300020142022,102101002004300,102043001021033,101210211022100,114100202200202,110004100002122,102030301322020,112000020241310],
+        210404004012342: [100032024201210,100013401040442,144442110010421,103012134011120,110412412010034,100031030004303,100101132014001,102102024222122,144012013212122,100402230022321],
+        100103032212211: [111220212242142,100201010110320,100000221030033,110210402031211,102031004010230,112000012000010,102122014003000,100020330410000,103000411240040,100402002201002],
+        1123200003103032: [102300321004202,103003441432012,102311410222022,102000401410111,112000112001400,111101304101024,112240000200001,101021010300000,114111000233241,100001004100121],
+        121040040201341: [101001400301113,103101024004200,103300021402104,102102024000001,114003104032034,101012044004042,102020304000321,100021201020001,102110202001101,102144322001200],
+        110020221100210: [112142301101040,101100000330120,101214440300301,101121100332142,100000400000241,111102214104403,100132004231230,102011004013000,111200122222334,102301024113440],
+        1200000230011320: [100000004100202,101024004002101,110120041200201],
+        100300031130042: [100200004301323,110010030440201,110041002130210,110020004414024,114340312301134,100031220121003,114310242320310,114302102300200,111042012220110,100011120100002],
+        1423010401400320: [110020301220324,100041000010302,102020100243032,100031001020040,101110404021211,103110041442122,114210400000112,114042014102321,102112222001200,100021104100310],
+        130300200222001: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        122240042001141: [101001210302014,114013414010201,114110002340012,100012001030012,112141220420023,110002204201004,100200304121441,102003241103022,111031014120342,103012400100023],
+        100022012023210: [102000024011300,101011210300000,101002221140440,102040021424212,112400020200104,100100001010020,101000000322000,100102021220030,112002022034002,110200140401144],
+        100020020220110: [110012000141104,140300020110000,100003301030120,100101004230030,103044004034040,102412140201410,114034000012210,114121200222010,102024110224001,100341231000131],
+        200302122220000: [110041210030120,101000100342211,110003022100022,112204330202240,114300014030130,103100140211222,110413310101004,114021140030012,110014240130030,101001121000412],
+        1000041201430011: [103114001441122,100422004320024,102420031111001,114211110023303,111000302230100,102300011002030,100120220000101,114044144020400,132202000104100,4000113102314022],
+        1001343432440102: [110000212101040,111120002100412,110302012103034,110001110001202,102113100230021,114013022304040,102030100221011,100004001002300,114020100042040,114000304031102],
+        1121020021201430: [104110021244203,100200004301323,110010030440201,110041002130210,110020004414024,102103022002001,100031220121003,102102224000012,102100102001032,101100001102230],
+        1102020200012030: [110010130000004,100000331040124,102122022000230,101011200324311,112030040242300,112400002021310,111103044400100,103321230110010,100032001033034,100231010114120],
+        133012300012120: [103010040142210,110000002101002,100310021003100,441411013130300,113004021002002,110043004203001,112002002000203,100130224234121,102214001100202,110402012111011],
+        1003004010201112: [102030004002200,112414102011010,110014012001011,110022410420343,100100410401030,102000040222041,110420200000430,112323332001000,102303044033020,100310000422013],
+        1040202420002403: [110441234224400,110030002000422,103100014031411,110000300424304,100032121024110,100011004343022,110013122130200,110401140004202,114020204102020,102402330230011],
+        110001033202204: [104103201240410,100300204010001,100011320043322,102204100232030,110110012110224,100200011220231,101004410311320,100200310110000,102002122014040,103112010212244],
+        1141212020013412: [114041300010302,114041332330410,102011000233013,100030014212420,110000000021142,102114002001012,100014200200204,114120312310022,122213202201022,114203024110400],
+        1020112302021021: [102110120202001,112100042301414,110102030023004,102120314034114,110002101101212,111100320023012,110341222103022,102200120230002,100042024300400,112433004010320],
+        122300021301102: [102021024000010,112011012004300,102300010242330,102000401120420,114011102210402,114300100000041,114023204100222,102222014011300,102101430203000,103030204010001],
+        1102103131210400: [100002302213022,101030020022301,110120400022300,100041044101100,104032420010121,103412301412120,110122121001403,110012104410012,111013012202014,103200100100122],
+        1101420000331020: [110024010440102,100033410104422,110142322000202,114011204102241,100023311224032,100000104310040,102013444011120,101000410303242,102014021131022,100240214101440],
+        1104333012010024: [102100230222004,112130000422204,103033000111000,102200404030234,114040120021110,110011002001232,103030044003040,101000114000032,103203400100320,102102000202200],
+        1030033234010204: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,100014204201000,102103321411004,114113000004012,102140114004004],
+        1002012003022201: [100000111021003,103000001004002,1304100402114410,411242003002123],
+        1002200204020200: [114201102320021,102104241412020,102010124004041,102011021132412,100010204102110,101012004212201,114000102202022,111303034134331,102222421012100,111101134102300],
+        240220000334031: [103122204030142,111002014122111,110200400010001,112013002310110],
+        1002020002022000: [101112404231342,110011401011100,103021030102410,110430314220010,103330104030103,102423100202400,100004014300341,114100212211004,102212030201100,100020011230424],
+        213213010121420: [101342300314204,114200034110031,114423002314000,114040002210432,100010040122204,103314044033003,114102224104002,102001420220112,114422404110312,101010010300020],
+        112011021000022: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102311120222404,100100000422320,102100012002000],
+        1010024013400000: [110002021222300,114014104033302,110224030001001,110221120402204,110323110104120,100202324120233,100002300113112,100000001034210,101020104000300,114003402300102],
+        1002001034024031: [100202030140400,103010204011233,101024130300401,114424212321001,142011423130201,102000401130243,114031212300003,101022021032142,111001122224141,100011300001203],
+        112132134141200: [112110340200041,114000300001030,101220030300302,103233000101300,114020204100412,100013144302033,100002220412021,114120104002413,102111410210032,110031210130310],
+        212211122000442: [110001202000032,100024204211200,100010101020403,114230412332011,100001211042341,114032104123010,111322012202310,114330204034200,100010321043134,102302001002104],
+        1101214313201332: [110024404211001,110100022010010,102131201401041,100120001040202,102140140210112,100004220412010,101222020304402,101201130302002,111020400044101,411120024124200],
+        123300423122202: [100200004301323,110010030440201,110041002130210,110020004414024,101400134043222,114340312301134,100031220121003,114310242320310,101100001102230,114302102300200],
+        100000000030421: [102002121101110,112014201121001,102403100202003,110000100041101,103121204001020,100400312200342,112334320201110,101110320330021,102000002043020,110212000003404],
+        1040310013112100: [100441204302021,102100101340232,100011320001003,100000221020200,100200000030010,100443211002141,100200010431000,100003421040000,101012400320022,101130031041024],
+        1002101034022040: [101021134011012,110332202020000,104120130021200,112421004012141,102011104010201,111100220022101,100021104201130,110030410040101,101300401002320,112001321113132],
+        120020400132240: [112113214020100,103300344012201,100122200012014,100000130013400,100011200201400,100001321032243,100201104224131,100002100204114,102211430202033,101031321022412],
+        113014042312230: [103203224022224,100143200421104,112200122022200,110213010400012,103240214031201,110210120000141,114022114010220,100010001043004,100011410400320,110102101002040],
+        1422302421131020: [102010000231120,114004000023341,100420114302431,101201001010223,102002004000203,100310004100403,101000321004400,102201321300010,100122000402410,103200330100300],
+        1421042002004002: [102020041440000,100004004231003,100200024121000,100211011001040,103030020100023,100204001000003,101001030300001,100020040401004,103221001204004,111240404440200],
+        1024410000201004: [102100022003140,102102211021113,111400024404023,110020122000043,101004001030002,100010004100021,111240124130104,110012211001003,112003230232000,101003100320023],
+        101010121403231: [110002004410202,102103114000024,101101410010023,112041002002124,140343100002103,400200234320200,101041200320322,110200320000000,100001424102041,100100021040230],
+        211421030202104: [102021001132040,100032201024101,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320],
+        211220400000040: [102332021001000,112110102302022,114101022340004,100200124341000,111203004134421,112120022010120,100020024200222,110101221300331,110211000021000,110002340040020],
+        1000031222122102: [100043014203003,112332000411020,112230024010203,100000004244400,110024001211221,102012201441404,100131014234134,112000120241120,100030224300202,112202140201200],
+        200132010021041: [101003010300002,100030214211230,101100004004111,100241100430133,110000004202042,110020002124243,100002044201000,100402410022101,114000020012002,110213014242141],
+        101111010020100: [110102224201130,103301201402204,102401121113302,100021020124002,111201210000103,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010],
+        1002200010232001: [103203020134020,100103331020241,110100121222200,110002001211111,100011440420031,100122031022403,101120030330141,114002212300022,101012134212002,111010400040212],
+        100021020010010: [110240040001040,110302014420400,100224000012220,111401002210202],
+        111010001021200: [110013312204132],
+        1000301410300011: [103044301431001,102010220220022,102301044020300,102111001023200,103211001412040,101004114210003,1004020010032003,110220222123322,100022202042210,100402022200030],
+        201041411240204: [100044041022000,110402020001421,110010412101002,101410104020340,100131300422201,100014030414202,114210412314301,114002204023003,110112202140320,100100234234040],
+        103010000003331: [110241142024233,101001421031220,112220322030220,110210301200101,111000034110311,110400241240242,102200001002100,114443304123123,102000024010002,102413100201310],
+        101024102240012: [111103402241002,111200130011000,102000101120401,101222414013042,102210044003121,110202432243230,101014440310403,100140104230112,111202132210400,100120310112042],
+        1001002132441200: [110220040110201,103012004011310,101021024000000,114010022303403,101032344210022,112400010203210,100042010003421,100013114210003,102000124012112,100112114024000],
+        1024030410020114: [104132212102200,100041230102210,101320244221142,104100042101431,110424014243001,101410241100300,102000114001011,112004000223004,102320031100120,110231011210112],
+        100002210102012: [102123000230200,114200302320443,100401111000221,103302010140122,100010001001122,114000022210140,100000021032200,100100310002103,103224020100300,100400314300312],
+        1012103132133120: [101302134233230,100002200103104,101030404212000,102040300241403,100431000032001,100020001042002,100202031002101,102103331400000,100120041020012,101301131002201],
+        310142112300200: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,102042204000300],
+        1131013004232240: [100240000140032,400013004332041,104122202100000,111102010020434,100400204302004,102200210200442,100100021010112,114243204113000,102323210243022,102004010202104],
+        1403012324001441: [103110021442200,114023224010002,110020320412002,100104214302300,100300301002020,100010104210010,112203010200014,114101010210010,114012010011101,114400444140020],
+        131342102301010: [100440000030040,100023101001004,102001014013004,102101000233302,103210210100210,101043004211000,112340340200112,100001000010010,100002121021340,100002021021432],
+        1021104310021004: [110414402020021,114312012300300,101012104210042,101430001010032,112402012020000,103322241400404,103210120100143,101010024213100,110101010011124,100040000123130],
+        1103100424021200: [101400004022112,103002221400000,103110020210000,100022141030334,111020142144200,102100201414400,102100404021014,101313201003110,102303001102431,100141334301022],
+        100103010031300: [102401021402212,102041020220100,100013100100014,114120204000410,100000001020000,100120234300003,102100014000422,100031011042040,104312001303013,101403014021204],
+        1010020204213144: [110010000111020,100430014323000,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101],
+        1124002102004120: [110011001021000,102020000201200,110110414402000,110222100011043,101020320323422,102122004000004,114220040212401,101003301110132,101100001100404,101014024010031],
+        120010010241003: [120120000003001,110140344200202,120100201223110,103102441241000,100422001011022,122332011034002,100111101000002,111000134112002,114322002322220,111041034404040],
+        223030000000000: [100020201020032,103000011400001,103001010101001,110220000113011,111030014120004,101000211031021,102020001021010,111300022201241,110402410002000,110020001210102],
+        1010002201000042: [114101024120020,102004011440212,103140320213200,100011204300012,100001021221000,114003134011032,100101234330123,110024000432310,102012101443110,110032220022103],
+        223222012000220: [100402210013013,112032040234431,110010232004000,101020004000000,101004310324302,101010030302022,100120040400011,100214044220201,110410002020200,114321224032200],
+        124321412030401: [100400002201113,112024212301420,102420424042020,102111024000402,102001011100100,114402104142102,102122412001012,102311120222404,114020404020132,103231241401000],
+        1010432304233403: [102114321402233,114310430002402,114222104110000,110242444432002,110021100022013,100244144101141,103000104032321,101023440300102,110140110023004,110033040001210],
+        222010140142101: [114024422210000,101040310304013,101023124002002,102121211340110,100002021002100,114403200002401,102111400210040,114204210002002,100044241020200,102000134003010],
+        1003341240200114: [110214024430312,100011014100041,100212341003212,112013212032000,112010220224003,100200001001300,100012104313201,110212310000041,100040424310110,111301332200104],
+        1122212100020000: [102014001321010,120444400000021,100011120022000,114113014000041,100040014340014,110011202132312,110012421320030,110000211322312,102101404132110,111012020000013],
+        1001200302140021: [114304022322302,114202112324040,102002204004230,101040011140142,100400042201311,100131314030200,114402102310002,111100132103413,112142010234322,110323002102120],
+        1000121002010000: [111210302220403,100020114202110,114000024012220,114000144100030,103002001420012,101240004230010,103001404013000,100114010410021,101300101002431,102303020241004],
+        101211340310023: [114000000032100,110140102142200,100122124300010,100110034101010,110410224241010,111300402201232,111011100022010,100400444100202,102004000201030,112020401130100],
+        1010121202021210: [110201201211024,100032201024101,111124004101012,102120004001310,100040341020133,111101344104210,100410220030300,101110020013040,101021204000200,101200111020111],
+        1002200002000202: [110410200100200,102113340210000,101010200321421,110413014220021,102132111410302,100203121000000,102200001303033,112110240200131,102213214032230,100421041000210],
+        1040000000000013: [110012231320200,101203001010000,141000211410012,100113300012420,103421314002310,101002001110304,102102010232420,100100001004210,103004000100014,102202421120032],
+        202001200121011: [102014000220330,110402001004440,100030001042002,111001022111004,111000042230334,112002300240001,114400234121111,101020314000000,110002342000440,102130104000332],
+        220012110032030: [110100041200400,111311120014011,100001130001003,103102104000031,110201134243240,110020134410001,111100044100001,102204004042041,101004010323441,102101002004300],
+        120021100344031: [111203124100202,110014142204101,102001104014024,100203321004410,100100011220404,102301024113000,110130221222012,102020114003042,100103414042003,100000001020104],
+        1010000000402004: [100004204302330,110000100422111,114010314101200,102341014010003,101000030321400,114132202312102,100004400100414,114322134002204,100002320104400,114021310020022],
+        140004041020220: [102231130213210,102000402041014,100043324210140,100023024211011,100003201021001,102201100200430,100022010411004,114121300224141,103112011421222,103304001400132],
+        101231010040124: [102010114022011,103340041403223,114002200000421,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,100010031222001,103001114001210],
+        1430000201422401: [102110011020012,100312330420301,100421231011102,102200004042430,100003221233221,100103424030310,112032024022220,112002204021024,101010134000300,110032022014300],
+        120040011334223: [111302202200100,101120211110232,111031244113111,100111004000020,110041220420220,100104201200030,101020104002000,110101010010430,103242310130011,114414004140203],
+        1003400211200012: [100113220020101,114031000022030,100300211000020,114310200002400,103211220100010,101202201021310,103044004010022,114130020222342,100042034202031,112301032022414],
+        110200103410113: [114102300004024,112102201102030,103222244003021,102420011111224,100020004300114,100000000413010,110232020002221,110010021200102,102013102002210,101002004012121],
+        231320402320100: [100000014102130,100022044344000,140104013031303,101101001020004,110010404413302,110004001104031,100100024003203,100013001214140,110002000040202,110110424221134],
+        1003022232202041: [100404030012420,100402022200102,111010302203001,114144212340021,102110001342020,111123420020420,102302104112440,114000142331320,101114414000402,114100102341011],
+        230410211231000: [140423043001013,114032402302103,100040004210404,102220421000302,111202000002022,103003004002202,101001200301421,112121110200043,112002002000202,100020324313320],
+        1040004400101201: [100003211020020,111000240044102,100330204322010,102111211401000,101030411001300,114022200020112,114201100214222,100000030100014,103000001430211,100014204101020],
+        110012002200304: [110400332010004,100023001030212,100000010023013,111121100012001,101020320320424,100014121020424,110313010000400,111002022220000,110021001310041,100030430002024],
+        1010440200210121: [110020100042220,114200302320443,100401111000221,103302010140122,102113101400001,100010001001122,104240202023232,114030204021200,114000022210140,100141321000100],
+        1130321230230230: [102120214131012,102230200204114,112030210211000,114130312310220,101411010300100,102200434122241,100221114242000,103012204020102,111120114103002,100101210412030],
+        1143330433400240: [102321301000010,101002204000401,102210424042300,402104002030100,114200022322110,100102010013101,111100130010100,112001030221202,101120230332423,110040001203001],
+        224202020223420: [102101004000411,114221312340014,102434121112224,101200210300413,100311204312442,100001024100241,103000020100131,101211204201231,111130412210000,100011300412123],
+        114102200241002: [102114000220010,100431024302303,100020010010020,114202010213010,110231211300200,112004020202021,110003001101020,100221424220000,104134010010001,101110311041004],
+        1202110440300220: [102112004000340,100043004202004,102204020232000,102102204030100,100003440411230,101112404000210,103000004042130,102232001100143,102232124031420,103000411411012],
+        1011202412040030: [102001140210301,103302220110131],
+        1010124300411230: [101012011022300,110110001224003,100401401003240,114100002340040,103000001240214,114132404003001,102102110220141,114142222322042,100030041042011,110003301213002],
+        114121122100202: [401210002011000,404010201000410,1014200301032410,1103013112041021,102030001201100,110200024240110,110431004224201,100411031001404,1000000300003014,103000001421223],
+        1000340200101044: [100000001220044,102022200220022,102042031102112,102140114001021,102410111110002,100101041040330,102000100210400,114102302311211,112122334022424,102122000212204],
+        211104024243303: [110120200030233,100132040031022,110031010430100,100432431000310,100004000014032,102104004002400,110000000132320,111202002201101,110020122102003,110014000442004],
+        202202223002221: [103120010103002,102040310222200,100112120404244,102242220202120,102122101340003,110420000002231,111324314134002,101300200311010,101200010301122,102321021000002],
+        131330034100002: [111210044131101,102011101131021,114032002303014,101242421020211,111314204120004,100000004212021,110310042021341,100204011000000,111010110042210,100000001224221],
+        1101031044011210: [110042220002210,110410200100200,102113340210000,101010200321421,112001402002232,101014421034001,110413014220021,102132111410302,100011104104000,100203121000000],
+        1010310030004202: [100220034323210,112121212300101,100001124102222,101200034044300,102204044042410,100020310010001,102220001112023,114302014032021,102404011400100,103031014003010],
+        330012000200110: [102010000213110,114400204120131,114213002320124,114100012340011,100402340020201,114111200034000,114133140030300,111003002142001,103011104010114,100400300013102],
+        1031000024120120: [110220122044010,110042304412204,114020124021122,100000104343000,100002201003312,110110111010042,102230121120000,103300001402013,100400010013330,102204011110020],
+        101000102210001: [102021122110400,113000200131401,122300200130321,130312421011034,122122400100233,103444001210200,102212230201401,101004100314240,103002101220010,110001101024320],
+        103101101100000: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,112401014040034],
+        111011420401020: [110001420424040,101103210334211,100212001002211,101042000300011,100422000432230,102200121120011,110000002010200,100011241032404,100012001234044,100000314311130],
+        202000141404340: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        1000143000442111: [100020001041004,202421100022041,102100111403011,1000042010002402,1100001420031333,1321202200220200,130030004001124,100040220123030,1132120124402200,1010320200004412],
+        224441300400100: [100004001021111,103000004002012,101021004214202,102110030200120,100301421002002,100202140000111,100003000104203,102114320203000,114001112300001,101003104212220],
+        1004111021110001: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        110022042042032: [111102104100334,111210014102030,110401100001104,111440000000202,111200344442041,103141001240021,100001401034130,101220200304110,110403102222001,110420014242010],
+        1003022011100200: [110103101201203,101422244020101,102142120224022,100002021021020,102104100233030,101210010304011,100012210001220,111022004124100,104011041220301,100122130410000],
+        312010300200231: [102331021100100,110002002002112,110201124221001,100041204331000,100032114314114,114012032240012,110222120103200,101100234021102,101001424014301,110130020003201],
+        304030233440431: [110220100000102,102100321320100,114042102330002,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102310400240000,101201340300430],
+        1022410011031230: [110033000022043,110100200030100,104412212102010,100000411231000,103140021211010,110132020031210,100101004230030,103044004034040,102300231000210,114000200010000],
+        100404102004201: [110400112011100,103210220100310,114420304140242,110002012103110,102441030200210,100441001010204,101202240300141,111210002244201,102021111130131,110001022130201],
+        1010021442340001: [100200104321000,110000110410110,103220030101023,401300041114001,112032302000220,112003000230001,102004301444000,111133030010200,102103231340304,114000044101422],
+        1040003210240300: [141030301403400,120402022102021,110140101300004,114400210002021,103103221421013,102010002000402,101302101002110,100240011000013,114233112330324,110423221000200],
+        1121020101201443: [144131233204044,101001131032132,110400010031401,102220211120002,114112002313010,114014010033321,103441112000230,132042400010214,112030200211020,114402010310222],
+        110302420302320: [103220011411101,101220111023331,114220014111304,101030301000221,102232034010000,102003111413120,100023101043203,102010311320332,114200122340300,102000031101202],
+        210020024003202: [102143124001400,100020440122040,102002034010400,102020030220401,101002121000111,112404002023002,100033134104200,101432024040221,111001404112102,102240101123230],
+        1000032214400210: [100202400140300,110421220003142,114404220000142,111210302220403,101100214003002,100004121032030,100404342201400,111240012241220,103002001420012,114440210000102],
+        1103202300134422: [114032104100141,110122421241103,112001144002010,101013030304101,102000004000013,102021241324040,102300441002012,102301010220102,102302331100430,103122001440214],
+        131000000201004: [101221121202421,111042022141200,101441101010020,100442220030040,112310010200312,100100241020020,100002004342004,103010330100320,101033300332204,100101004300001],
+        1000000210014114: [102001444000222,101400134043222,100010400013202,114340312301134,114310242320310,102110021401100,100113201011032,102230000204000,103102044031002,100011421002120],
+        1001001302400301: [100201101010411,100202140140110,101100024000410,101220011000320,110240222100001,110140241220420,100240020010213,114213114031104,110002101332340,111003000004111],
+        221310330123223: [102001404012100,1010400230221020,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311],
+        1022010322231003: [100024234201100,102120201140110,100010234114300,100331200141014,110112204224100,102212234021233,110224102230230,100120411200320,100100341202102],
+        202000204010112: [101102400330110,110132011000040,114440140000234,114100220033300,103021020110143,112030001120440,112000014021000,100021100420321,101024014004200,112200030204103],
+        102120000010224: [100032041021210,110004301222000,102040011121100,114310000001232,111322234130000,102040041320010,103203401400132,110104002010100,102042204000300,114142044120310],
+        1144022001011301: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022,110104422010121],
+        303004040210410: [114022412330004,100103104302044,101041030320401,102141212000200,101203121020430,103130021444021,102100104002224,102100224000210,102020004000014,102100200210002],
+        1413003032402021: [102124121023231,114442104144001,101301231001140,110102030120012,102220214044113,110001141011223,101013224010003,114402240003200,114042004100020,111132244101222],
+        1000000020000321: [110001114423041,102302014024114,102000031130401,114230100212043,102004200212202,100002134211200,101003324000340,100000014211010,103000001400122,111140220032112],
+        103141003023020: [110033000022043,101230004040022,114244120001041,101021020324310,100020140121034,102340211000200,110010220000210,114021000044211,111241224101013,101312014223102],
+        1040333430241330: [110114001202122,111021202200011,100001010100220,100414031001210,102000004012011,114023102303000,110101100012002,114421002320003,110001002004240,100030220002102],
+        130020004041130: [101302134233230,101030404212000,114102224000201,100431000032001,100020001042002,100013011020311,102103331400000,100120041020012,102012204000242,114143024003322],
+        1000301011010010: [102100321320100,102102011414242,100041004100221,100034004211240,100000000412112,110000010033022,102330040242220,102140121410131,102310400240000,101201340300430],
+        1421020020110110: [100222204332402,110002040000012,103110100212104,100430101010214,103400331213100,100003001020004,110110120402401,101000234004011,103201440100200,114101000210300],
+        220123000040002: [100310120141002,102324014112020,100002011042020,100301421002002,103022021431010,103200020111014,100010004313001,102010200221000,103104200210410,100002200410030],
+        103011020104000: [114104220000003,112010212000010,111130222212000,102100112004011,100040204312404,110121102013020,100204410001023,102323000221120,101400421100024,101023100314020],
+        1412220020142244: [101000004210011,111230342220010,114010024011000,111122022240223,100004111024200,112404232010231,103302100140200,121103000144034,110420412024420,100000111020203],
+        1101102120240300: [101200100304010,100102000022402,100000001033001,101202404042303,100121231021002,102020200220310,100124100031200,101010200321022,103304014010000,112402002010210],
+        1413400010130000: [100004001021111,100142010410011,102110020202330,100001010014420,100003000104203,102041410242244,102101220214011,114001214100103,102323201000412,102311110240101],
+        200100230314033: [110200304432400,111222404100330,111002234114103,114221002303200,100434000030230,114014032333420,110031330120101,101022020311140,111010112203101,112440014042100],
+        101201012403040: [102001200221011,101000004010012,103024000103302,102244221114031,114201024112001,100000421024110,100104000101010,103204400100042,102033401100232,114221002324001],
+        1100140000140200: [103104001440422,112030101110231,100110104102000,102000201130010,103202404032404,103331140112102,111014024112203,100100100024000,104200211304000,101202240301440],
+        221000211010021: [102442211414022,110122001010214,102101204000010,111231012220013,110022300420031,114230230000123,100101220101011,110000141123103,100222024320003,114013012300240],
+        1030231200210220: [110130314400100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,101002024000400,102202031002304],
+        131010200010043: [103300120141130,102110004000221,111144202220301,114224204100310,102304011004310,102100144001112,102000041441002,111230424101321,112001004004000,100201440000313],
+        1122220302242010: [110001041213031,102300324010203,110414300030001,102100142002204,100030020011022,102040011121100,111202012222402,102040041320010,102402104022000,110104002010100],
+        102131000203000: [112030401110101,110321404420200,102201001001102,100211024341103,110210001100311,100022300401014,102311204112020,100101200401431,100120004000011,114002314102310],
+        1124003200330211: [110042220002210,110410200100200,102113340210000,110011401011100,102221200204022,103021030102410,110430314220010,101010200321421,114100212211004,112001402002232],
+        302130020101312: [103342200140233,114020140103010,1000401022322000,1303010022004241,400100100020140,101020124100111,1303021014213202,400000133010010,1322100311311120],
+        122001311320200: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,112021004003303,110331012224112,114100222310230,101002200301130,100011120000004],
+        1042234310003411: [101002400320042,102212001110412,110334004430003,102300401004001,103142111420111,111041224111040,103000401220324,110401404221420,101023000300100,110222212022003],
+        1004201102100201: [100032041021210,110004301222000,102040011121100,114310000001232,111322234130000,102040041320010,110104002010100,102042204000300,114142044120310,101030004010034],
+        122040002201230: [110204032030400,100422201002310,100021020021013,110010200004233,102203031112000,112204004001232,102034031324100,102401004042103,102402234023100,114000024100000],
+        1004003201032131: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        133300422121024: [101434031010012,101002304210122,103101410212231,112402144042221,102144312001130,114400240003203,103000320120003,102022002000202,102122020230423,102141002000022],
+        101204101000414: [101142124022010,111200012220040,114202002320113,102430001401230,100402120031033,100010024202200,102221230200001,112403004010231,102102021143222,100040320102201],
+        142110442142000: [101220040300414,102121211343322,101003140301001,102410001111322,403111002011011,113210210400400,400100441040022,110011022100114,103100001242220,1001221320011301],
+        100222344000410: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,100400001001300],
+        140131143013020: [100000430122100,101200100304010,100102000022402,100000001033001,101202404042303,100121231021002,102020200220310,100124100031200,101010200321022,102000231122032],
+        120210011100301: [110021100023210,103122000100403,102023120241131,114103412201420,110014300041302,110020041310021,114241000002004,110020110400102,110321001330010,100000300100000],
+        200200002022311: [110010302000004,100102001013034,100001014100021,102030414003000,101342020314000,102112104004041,100022244300030,102422101111002,110132232013130,100400002200402],
+        1403211101104010: [100232121210011,101310004223223,112022200234200,110043132100300,114122110032021,112230000412212,103112001211043,102220120203200,100002004201122,110303122100010],
+        132002001000131: [110144240011020,110300204431104,411200142040000,101040211000300,110413401240204,112000244001222,114441114123013,114000012334102,101000014012442,102120402001131],
+        1010000411200122: [101224001202324,111211144101202,110240102232020,110000300140010,103102134001111,100003114100011,100002314204210,114000114102224,100440030020002,102404104020130],
+        1000010033204101: [110110011340130,100210304330211,111121210031101,112312022021021,101041010324010,102104210214401,100011230101432,100032024240322,103202224024200,102130031410200],
+        1141404302330020: [100020330100100,1002443410030003,100011231042030,102100141413100,102110021342213,112002310211210,100010031020102,100020034100101,102332100243030,110004424200024],
+        300240001020003: [102143124001400,101204400304011,100020440122040,114103212312012,102002034010400,102020030220401,114231212342200,114002122210242,112010244000200,100000020100301],
+        1000003440011220: [102210100313100,100004420014012,102240210240022,100102001040033,112032020220030,102024124011010,102000324013042,100030124212213,114210102320112,114234004112000],
+        1400103020400220: [102123242001200,102100410211031,100000311022110,100202004324201,102041020200401,100002021042340,111103214101012,104103012102410,101000011034104,101002300312222],
+        130002101210240: [100022102100243,100013230100000,1030200104020421,100121120102303,114100222340120,132011000122003,110230010002303,101212413013223,100004424041022],
+        1000000241012003: [102422114040010,101204400304011,100020440122040,114032424122040,102020004001311,100301020420101,114103212312012,102002202000000,100022024100041,102020030220401],
+        101020101204110: [110010000111020,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101,101022011003022],
+        122300000003321: [100011231042030,102111144001232,114200214002024,100111221011100,114112000000100,114033210041030,101003201111000,110000011211220,101031420340300,111121200013000],
+        1100012030001001: [100030010011002,101021301022041,100402300013130,140320413003120,101201220402420,400040001020004,1001120000022000],
+        1040020300303100: [114423002313120,102300041004010,103000140101310,102310204023400,114401010001000,110402112220024,114002310021310,100021401020000,100203310430032,110103011141230],
+        332003030020400: [110010102132011,101000404011142,110020022000020,100002024310012,103014214004003,101014200304201,103101130123011,100030000410200,112410104040230,100400130013002],
+        1002000111200004: [100404224300012,110003200132101,110202120003032,102022010220223,102343301100440,110110440020002,101101000330302,101020310320131,110004110002011,102020214010123],
+        100202203224133: [102240221000001,114000024101102,100020124204330,103002121432200,102141101410101,112202412030001,100010000101004,112410140230303,114210142321120,403221301412211],
+        300101142200010: [100021314202402,103142211442311,100004411033203,111123212212000,112240042042022,101204004040140,100014001030021,112003020230203,114224012340002,114231324103240],
+        140102131020030: [110212022124220,100003100410042,100222034340301,101440044041401,111210012243010,102130124000000,100032310000111,102010421413322,102114020210302,100001100100040],
+        1030102002040222: [103204214002340,111101222101212,101214134040140,111002304411031,112404322020241,102001310224010,114000224102000,100112034103110,100203200030344,102004004003200],
+        1144403303200131: [101342300314204,102010244010000,114200034110031,114423002314000,114040002210432,114010134021022,100010040122204,103314044033003,100040240003341,114102224104002],
+        200102200203010: [104100111240003,110001004204310,100001200100310,100010311020030,100200120030203,112022131130201,112332101100224,110101214400030,114020020040301,101011024001101],
+        110000204002422: [114112432204002,110412001240302,100110004103103,103004201421221,103230304022210,102023120204401,100012204310100,100104114230000,403140033110000,111020104112201],
+        1000240341021001: [112133322013122,102100414000214,102120411343120,103022140121213,110311332020021,102013130202310,100001014201140,100024401043241,102020424001010,411112330100013],
+        243401300001023: [111303420012131,110141221322023,101422004042000,101243404044201,110102010022243,122000100001414,112012102004004,102132400224100,100000020204240,100220201202320],
+        1401103231022000: [100011021041112,100110034300000,103030331404010,102211114110021,110004021214200,112100142012001,101032324220030,111020102202303,102110010202300,102202004042130],
+        130141000102001: [102010004001300,102120404134413,101100200330040,100100221040404,114440012312003,110110121300321,101202010310030,103321311400002,100000040411123,110242221300213],
+        1032200100022113: [100300031003200,102310031100100,114002034102120,101020200302021,114020402303041,103020031420410,100002021020001,102322014112302,102000110224002,110021200043220],
+        101220401010022: [102132020200100,112000201123012,103312024011004,114410212320200,101211204013302,112020011110100,102030000221301,114023030012204,110014004411404,103020011430001],
+        140400220201100: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,112004021121002],
+        100130210213220: [100420021010013,112101302302202,102212011120200,102344111104233,100432104320110,114021014020000,102121321340000,114200214002024,100111221011100,100023104101340],
+        1001042141224122: [110144240011020,110300204431104,411200142040000,101040211000300,110413401240204,100222100030130,102120402001131,100312401002102,103110001420121,110102112010100],
+        111031220212210: [131000001020102,110412310030001,114012022302022,101042024210020,111030340040341,110002000020324,110441410001222,100020214110032,103021004043024,112240204012423],
+        210002020103111: [102022404012203,110210334214024,112020010222102,100100324232004,102141240210423,101410014024001,114100000212230,102100031320041,112141102011002,110020234201010],
+        100230004043034: [102124231401212,114202024111304,110200102020212,114112000000100,114121144001400,102243044041110,100030330104020,103002104001100,101124000303110,102022400222030],
+        1430321101402002: [114120220214130,100002200001011],
+        221021201104200: [101002204212400,102112300201410,100100121043010,102100240231342,101123110330200,100323120143000,110432111241204,114200200002223,112123142010120,101002321032002],
+        114402013010200: [112202411101400,100101131200000,100022204104123,1002411322210040,100300114100322,1020102233442023,401040043300200,100400200020001,101044014000144],
+        1424411030320212: [110400000002213,102011121102202],
+        1002210300010030: [101030001001022,110230231300100,100300121000420,100402431014100,100100001220400,110330200400021,102100020210143,102220324011110,101423100300002,103111300102020],
+        1012104102300222: [110203120112002,110000002100100,102221410200012,110213401202110,102300104113403,102213224110010,102300004112300,102420024020120,100040020001022,102141140210200],
+        1120240010220301: [110430430003002,104412212102010,114102024123030,110013112004021,100432200033101,101021404000220,103120140210020,114420230000240,110414012023214,100400100010101],
+        1431211001002011: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022,110104422010121],
+        1042204010041200: [111220202240410,102200020211042,100000034312214,110114002004014,134402411001001,101224110303300,100000144311102,110100200402003,100000104100100,101423034020001],
+        113320010103212: [110002004410202,102103114000024,101101410010023,112041002002124,140343100002103,400200234320200,101041200320322,100020124204330,110200320000000,100001424102041],
+        1002204013000001: [101220224012410,103200041200112,1021000041101002,100111420112041,112001100222202,110332221302120,114102222310100,111300014122203],
+        103020121110140: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,100230120001003,112042110220004,112203221102231],
+        1010013130002112: [110102114204323,111120002100412,100100201043042,110302012103034,110001110001202,110130201011011,101000304212200,102113100230021,100100021013214,110010411223203],
+        1141120033111132: [114020100042014,114102010223100,103101000211411,100401100022100,114000002334110,102002104004011,102430144043230,114102004141000,103100130102014,102020024003420],
+        1032140004001443: [114100204101002,101101230010000,114100020033022,103112021441120,110401101144000,103124201212022,100002001020202,100422100432000,100021001230011,100114004032103],
+        114010010112200: [110141010001110,104122011242020,110213401202210,111103310001234,100110441001000,102312000240002,102012104010301,114123014001020,100004004303030,102001424000000],
+        130203020110400: [111021202200011,114110004102301,114023102303000,114421002320003,110200132020200,110001002004240,111010024401332,114010000023421,102202201121140,100010301032022],
+        1000024110043020: [102100422004010,100032421040120,101012400343401,100024004210111,102002100222202,100031404302400,114021004100002,111214034100220,102200001122202,100123310031000],
+        110112000000012: [101012131000024,102120221022200,114221104114000,100001111032112,114000030020101,112400004020421,112044414003133],
+        1240212040010011: [101003214011024,100104400001144,101000301142210,102000244001201,110021424412111,110202002241213,111000200004113,110000012201023,110000011200124,112200210200110],
+        121122221223020: [111121100010021,110310034424102,114400202314210,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202,110043400012000],
+        1143010112122302: [144131233204044,101001131032132,110400010031401,102220211120002,114112002313010,114014010033321,103441112000230,132042400010214,112030200211020,114402010310222],
+        100413240304044: [102102031403230,100041140201301,103021004022022,101001100320224,114000202300004,102114240210220,100100210411410,102100320220140,114011444012010,114104314124011],
+        243210203224002: [104111102100000,101021004000000,110000102100212,110130042014110,114423100002212,100011401040040,111121012212042,100001020002400,110012102130100,111000230041031],
+        1114340034140000: [101321001000010,101010424210144,102140114001021,100040400100203,102000100210400,100130014300042,114102302311211,114034400040402,102122000212204,100422021002002],
+        101302240330010: [101230114202200,100400000020230,100002200103104,114300124030100,100431000032001,100202031002101,102021024004322,100121114230123,102102334000400,114323400212122],
+        104201210200400: [102210100313100,114113014000010,101200210302201,102240210240022,114202400003330,111201222220201,114330004003002,100102001040033,112032020220030,102320120240012],
+        1011034000324101: [111101010010203,103120101441202,110011000022102,100004104210221,102202410240103,400014404414011,100112004101222,100000010101402,102010414013103,100030001041404],
+        1030314030020122: [114032104100141,101213114040141,102210101002412,111140100011101,103220120212134,112001144002010,111103314101000,100012011022000,114140104122430,102021241324040],
+        1100103021400240: [100100040423201,102011104010312],
+        240000210340240: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        1012100024010200: [112410104010101],
+        1100421022313003: [114033120034402,100023221022210,100012204340000,102104010311220,101000404012321,102230022023230,100401214103222,101122001110433,100014200003002,102201041303000],
+        222000240210402: [102001444000222,100004204302330,101400134043222,114340312301134,114310242320310,102110021401100,100113201011032,102230000204000,103102044031002,100011421002120],
+        101031112401430: [134032420422100,1002131101112211,220200021120010,1020423021001303,100021204230002,410204010302000,320143400144303,1023121121030343],
+        1001130023401004: [100104341010424,103221204032410,100004004102410,101104001101000,103142210104020,114400240003003,112203001103411,100212024121000,101224020301202,102202014042012],
+        1001003021421040: [111222000001201,110020111332411,110103001241002,103002431420121,111003230041302,100100220114002,100312004100100,101002004000031,114420010000222,110111022044102],
+        241200402322112: [110012220442042,100001114303001,100034204311021,101121024024120,103332211400441,103011131430040,112201104011200,110320204424100,114200112330011,100201244122014],
+        1201012101002030: [110020010134221,100004020411020,100300321000010,100000421021322,112331012023100,100021010100320,101001030303000,110031210000110,100431024301030,101222321204303],
+        321023330430101: [110424002022221,102000140200220,114233210000201,102104231340013,114102220033034,102012001130103,101120000011032,110202000403003,103303041402240,100000121021112],
+        300041433021224: [102023120241131,104103101240204,110020110400102,102331024110432,112002311122120,114000104112212,110012112103040,114420000000221,100104204100000,102341204014020],
+        130142121223142: [101211210302210,110040004411013,114001242301120,103000100120010,102001024014230,102011000241111,103201011400200,101234000040020,100001421002030,110024100030132],
+        113204200200002: [100024000110221,101301014221122,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,103012101410102],
+        224340300120224: [102242100200221,102300004024130,100122301022031,110401002222004,100120044232001,110021000110000,111111224130002,110414011000004,101010101140110,100100311200002],
+        110020002212200: [101211201202134,103120104030100,102020030220200,110100440400010,110003434410403,111110000014401,100000004130010,101300204230000,114002004100140,112014000233340],
+        1120010422020402: [110400011243102,114100120223101,100003214102204,101410044041001,110413131000201,112002221131220,112012002302100,102422214021111,114203002330010,100201120000000],
+        222322430033202: [102310324112030,100410130030232,103220101421001,121110020100002,100002104204000,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100],
+        1022200110100221: [114002202300220,100410300030201,100002024214031,100100324230101,101302314220212,100002044201211,1000122140130010,101020030332421,100004140204041,100010001000001],
+        302042000000001: [110002004410202,102103114000024,101101410010023,112041002002124,140343100002103,400200234320200,101041200320322,100020124204330,110200320000000,100001424102041],
+        101230131000240: [101032000323012,101402114042420,104301222102024,102003104011100,110444300101200,102034411440000,102302031100432,110011024414011,100011104344414,101220200040100],
+        121000402021000: [100200101000000,103110431441100,102101324130010,100011004340114,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110],
+        1431112224210022: [110013202003320,110111032140220,100020010200022,100023101042010,102112310210202,101212402120014,102330010243440,111211010002130,111011002200232,114042044100403],
+        104034013100020: [110001420424040,101103210334211,100212001002211,100422000432230,102200121120011,110000002010200,100011241032404,100012001234044,100000314311130,101424344022211],
+        1020312100240211: [110320401234434,102122011120240,111400204422011,111000304440121,101000101030201,103020000100001,102134441120002,101020101030224,111023214110122,100002121031042],
+        222221000013204: [101120204002140,100000020421013,101020024002022,110120011002420,100100224230014,112002112002220,110012404411012,100012304300004,102340411101202,101011421140423],
+        1101200120224324: [102104321001201,100300230420220,102422101111002,110132232013130,114121444120100,100000411231103,133101010002020,101401211100001,101131304022211,100240121420111],
+        1014311022312002: [112312122020210,110332000010101,110022331320122,110000030132210,114002004103231,101403030300132,102321021102143,101010011001214,102010020213042,114200004000003],
+        1001100121011010: [110001012101334,100011101222101,112020114004303,100001114302424,101222134011002,110021324200010,112113012300242,110343232021004,114131044002441,110040142002100],
+        110314420420222: [102002130222022,114024044012100,101410300301303,112202121103032,110200024242141,103024104043404,100244100430040,111111104423410,100404411000022,111001020042314],
+        1011240012002220: [102044314000340,100000210100004,122333101001221,103203211411200,110320010100000,110003000143033,110300402020002,111031042202201,103001120004001,113400140100200],
+        231100200000223: [103111001422000,102203004042010,111244302220204,100042100102211,101114000332010,112112211102024,114001032300011,100142044103021,114004014011110,102410004024030],
+        1132322110031300: [130043000011201,130003114014002,102000102421102,103020211101132,102140120103011,101000000001210],
+        112122140012021: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114102330210021,100000020401302],
+        240201203012311: [104100012102004,102102011413000,100402431012022,102031024013013,110044020020202,102122410220401,110021232000021,110301322104142,100001140000010,110201434430102],
+        244202023222030: [100420021010013,112101302302202,102212011120200,102344111104233,100432104320110,114021014020000,102121321340000,114200214002024,114112000000100,114001032301013],
+        240144010404100: [114011114123044,103042141430211,101033214211000,114142044000010,101221031020331,102101404000000,102300200221021,114322222322000,114100012204104,102003104000032],
+        1443013230001214: [101213000012022,100102031010300,111101304103102,110041002130201,102211124110220,102434040203002,100002441003104,110400020101440,102000310223330,100004304100312],
+        101042010101400: [102301000220000,100024114340002,110101231300241,110000140132110,102402010221231,100304100140104,100213444314000,104132100010310,100241000440432,110411200400010],
+        1140220200432000: [114100022342130,102102211140013,110210020002243,110121220000022,112400434040004,112020104020001,103002044002032,112344021130002,100101020402424,110122020430011],
+        130301014011214: [110020000114010,103000200111020,100113204102011,101020014000210,101002330300234,103121120114230,112014100210000,114012200021133,111000402224222,101041204210112],
+        1040241000202041: [112224111100141,100132004231230,110302011332024,110200302024000,110021340020022,101010001000320,110210020104031,101003204000300,110003422000141,100210301002021],
+        1020014402020002: [110201201211024,111124004101012,100422314300200,114103220220104,102120004001310,101021204000200,112141104020201,101200111020111,110001200422320,111122222240232],
+        302102402320024: [112001112002104,113134002412222,102100311320110,101000041142321,110430002112002,102240030230010,110242024430440,111003212230033,101112331110410,111210000000110],
+        112302010204202: [100004124101032,111220012220011,114020034010120,100110224334101,111100214100000,102000211103003,111100110010000,110000400003000,102213000202400,110002031210002],
+        1030010300231000: [100000200202012,114404010003320,112114324040000,100141011011032,100010021034000,103132004002020,100000241000002,100000401002031,102001204001021,114300104032040],
+        1010411001042304: [110011121230332,110000000441321,104120412100032,102201000240304,101042000320420,102010021101132,102102014001104,100222401210112,110010011210002,111101210030022],
+        1200124100113300: [100200101000000,103110431441100,102101324130010,100011004340114,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110],
+        133440111042412: [100003030003020,110410000104042,100000040413000,100001034310012,102030414003000,101342020314000,121310232003222,110011300143002,100220021000033,102112104004041],
+        1410133102241100: [102142012001000,101100120330110,102300120220103,114141302341111,112023210242031,102042301121010,110003204210204,100022120412101,101002014013300,102100030222104],
+        121232241110210: [102020014002221,112031204004111,111201110000033,102130311120003],
+        1003321100030102: [102120012001031,100400004303004,110002022030224,110430320104000,110020221320103,110121111202231,100000104342200,110012001214430,110004431040201,113204011001300],
+        111012002140201: [110210221300113,110304014433122,100002330412031,114020042302142,113420011011140,100031010010121,102012021100024,111141012240014,102203044043244,111011424110303],
+        121100300123204: [114200212322001,100401210020002,100010111022102,100220300410430,101024201114010,102412220200003,110012222000144,100201214123301,114302122323101,110431022023040],
+        122010000000110: [114202012340131,110322034430002,102323131001211,112023102003010,101010104011313,102130040230200,102000002041020,100320021000000,102034100223241,102020014021021],
+        102100202403201: [112002110220340,114040210021100,102002220221002,114100234004010,100030410102000,112240334012440,102101010210022,110020200001031,100034021034000,100022344101140],
+        103043300000220: [112130302013041,100120404230120,112400002023000,101002020300041,102032011100011,102102010214403,101200401023040,114000000004100,100000004344102,112232012030204],
+        1040304110100010: [112142301101040,101100000330120,101214440300301,101121100332142,100000400000241,111102214104403,100132004231230,111200122222334,102301024113440,100033230420102],
+        120302010314303: [114400214140002,114020014110120,102142030224211,101000034000220,114024022241001,114102140221100,111342314121314,110000121300012,102112411342231,101033100302011],
+        1012100000040144: [104121412100011,100404141014102,101211011001002,103042024000034,100042024100140,110210012030400,102011200213421,100001001020031,101000200340030,100001300102213],
+        1240201430003220: [110441234224400,114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,110013122130200,111403100030130,114020204102020,103121221400012],
+        1424001222003120: [111030212113431,102001111011201,110044320441241,102233034000002,110410122010102,101122404022022,110311110410340,112101202012010,114240004000000,102300104110220],
+        1124011212044223: [102100041341201,110112301300041,111041004112110,110230002230040,103201320100230,103021101220320,120000211034230,100010301002132,110100220011244,111242022222024],
+        1423010404140300: [103100044030033,102103410200411,100031401222220,100041440102144,101044020301020,101210001032303,100001101033020,101024410341204,110000314214002,110000440122004],
+        1010304002210442: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        100140210044040: [102211230244321,112121214040022,100004004100120,100041014210020,114204120210000,114110030002020,100000030100102,101012400320002,112002100233204,103303001400240],
+        1020010002221130: [100003034314200,103300040140032,102104211001200,103300001404011,100240401003203,102000004000204,101403240303041,100002101231220,102040424014311,114240044002001],
+        1434420100140024: [101002011001110,114230014000002,110043034212101,114442140003011,101200034044124,102110040230322,100213100410301,100221210412004,101434041013000,112030101121104],
+        1243201040030024: [114004024102031,112112210420223,100200340434210,100403010022023,112424034013320,114420212200003,100103401200000,100121201220101,114023322303100],
+        113040300032214: [111004302114011,113000200131401,100010410101220,130000311440400,101201440002012,102040031411210,102014004000221,133001230020010,114200140212014,133000000000110],
+        1121223001014030: [114032234033303,102320000221020,110102022000200,112431104040041,103123200222442,101403334040004,100003120410040,101040334212110,100131000400012,110100122143001],
+        1010020013402110: [102010202004402,111130312211003,103224041400220,110022201100020,102104244000010,100141214304000,101430001012430,100011204100020,101001010300404,103340004020422],
+        1020120022311000: [100100204330310,110112214200023,101004204212040,103104404000040,100444021001102,100122110401300,102131341023330,102141220232030,114041114012140,111201200004040],
+        1020031102111103: [100422314300200,102141410230020,101134224001001,110020001224021,111122222240232,103300234023033,102340004011311,111134002210042,100013014300034,104132120011021],
+        132010000033010: [102420300202421,102431104021200,102002001130001,102404000230201,114100004121100,114002004114040,112134220420402,102142100210120,101023221003021,100000311024240],
+        102100013041141: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        103012110001011: [112112402304310,114430104142400,100011040420210,100220121003120,102212021120100,114021034021244,101041200344232,100002000120011,110003042002123,101104004000220],
+        130331000240020: [101400100302311,102141000230040,110030024202101,110100224200101,101122201021010,114000102300220,111011022203010,103021424001214,101230000301220,100132444234001],
+        113330320102211: [103412204020401,100014410420202,102100111411342,103223201411202,100202220031040,101013100320400,111110002240312,100413000020041,111102300012024,114023204100010],
+        1001000031112000: [110000101304203,110010022003021,101121021020012,110033002000020,101200200300020,100420010030240,100000410000211,100002204201200,101000000322141,100011020000203],
+        1011004040001111: [110230000000002,110220301202400,100004414101224,101003140322000,110401001002400,103012000100400,114201142324042,100401424300314,102213401111223,100040120000031],
+        101030002100201: [102023104002000,110230010000000,111114010020011,100011014101313,102011114000320,100001204302200,100310111001140,102100101140030,103120334003000,100000004204201],
+        302200400401202: [100400002201113,102420424042020,102111024000402,102001011100100,100100000422320,102100012002000,114221030000011,101320224220103,114400202310013,101302131002410],
+        1021004130422012: [100012134302230,102012110232021,103300201400340,102002230200001,102404341113402,100020000100311,101444031100130,114404214140114,114400032310444,100120031042012],
+        204301012201031: [110004110141201,110413004244000,103200124032221,101220141010040,101020024000200,112210210200000,114112022340200,112033012312000,111230202223302,112102022012400],
+        1204212142000240: [110040102001121,110200321303322,100010030100011,114032024012040,102012124012120,103002041402004,102103030210003,114120034123300,103010011401200,103013224034023],
+        1112000000230043: [103042000102130,114024042300042,102101100314230],
+        132010120104300: [100240000140032,110001202003004,400013004332041,100400204302004,102114101444001,100022121031020,102141010230201,100020210101002,100042420003120,102300220220432],
+        1002441120400010: [102321104111003,112441402014033,112100022300110,101123210321002,101003010340102,100022024212302,114104002204400,102004221132241,100010000002102,110001010130320],
+        100440122002221: [110222020012300,101230004040022,114244120001041,101021020324310,102120111142201,110102322040111,110010220000210,114010304010030,114021000044211,102140001402011],
+        1000440230002240: [114014112300100,114030034013101,100000044204004,101013004001421,103000014011004,101020224210014,114202244101041,100122310020400,112423102010012,102112022001414],
+        131312020420222: [100020004313034,101400120320033,110430030000041,102140411342420,102020004000301,114114204001401,101042214000121,102000121102220,100014300000200,100210130430132],
+        130222024001011: [102300241002244,110001131312220,100003420012212,100002210401034,100011000002042,110003302002201,111033020040220,101013011030413,110010032000411,102031104022213],
+        100012030030122: [104100012102004,110030002000422,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110021232000021,100001140000010],
+        1432102004011421: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1100402030110040: [101233341022410,100020001041202,103301014031303,110111020032031,111004004112000,111011002200001,104000131220103,100001002213422,102004100220202,100003000004420],
+        200040031000002: [100000101040120,101022344002202,114313044003041,102011101320031,102013000200442,114024222212420,102234010200304,101220020300041,102141010210030,102440011400244],
+        124400001230204: [103000224004103,103330201404321,101110144024221,102110201342010,100400042200210,111100212111142,110002002100242,101100000331000,110223111304101,102011310220424],
+        1021022100204004: [114023002202030,100032024201210,144442110010421,132000024420100,130013324120310,100400000024411,124131120303003,103100111422330,111031200120202,120000221031424],
+        120111110303321: [102100441341013,101440004042202,114201000004122,102201024041200,100100204101010,101223301020130,103312401404300,111141312211004,100341044310403,114002134022331],
+        104313042102040: [103000140141214,102422021113012,101010020320410,114020204101200,102304021004012,112302412022221,101021321034010,100140014100401,103120021441003,110001120421122],
+        320200022421000: [102300100242401,102010004001300,111223042243230,101121004002140,101221121020302,110000124410003,100000030022004,101032341110042,101202010310030,110014132000230],
+        110400400400420: [103400104001022,100003220413213,110021010021210,100111114030020,114331000001140,112300001132401,112102300201100,110310130104000,110020331031031,111011012201202],
+        1010110212130144: [110002022002032,110000242002021,110042130002002,101010000324423,102421340201120,100002204300121,110402332010103,112400242014010,112410000203032,111430002210013],
+        1000000431002002: [104132340011314,102203304123030,114012040020310,103132004002242,110000212104130,110200200004002,114131040224332,100123020032031,121002023311103,100021124203441],
+        102010021010121: [110332102020012,114103204102140,103122001441103,103141214004200,114001242301120,114002144122110,114000430020024,101104301103200,103100101424001,114222404114003],
+        214104000223132: [110102042010220,101020124000413,111210000001101,114013400011030,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011,114330432320002],
+        100340204312000: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,102042000222002,102001011100100,114402104142102],
+        1011221130141212: [100021311233000,110020200420132,103111104030033,104100031240003,102300024110101,111010204111010,111200302222011,100113144300434,100010010004402,102021310220414],
+        204440100100000: [110001022102002,101020200320000,100000001210103,112240024014421,100202141010030,102130141120221,110103202122103,100000210112011,102041320202034,100033224204041],
+        1402003440004012: [100300110110121,102002322010030,100321101000003,102121041101300],
+        1000401044124300: [103002100100101,110000402000040,100240240430022,114022300002101,102323131000021,110300124420043,102101000211104,110122000132404,110021422000440,102201400231110],
+        100041004211101: [100010211233410,110302140014102,100412210430000,101320131002020,101441040302130,102000241101101,101012121114000,111000120042010,102220030230000,111001022111004],
+        230102321400013: [101121211101004,101114101012020,101001304001101,102002112041034,102041111020030,110022001201023,100000040001141,103101124003110,112401144042000,110002001231100],
+        130301024000200: [103120101441202,101002121003112,100030211040004,101201021022111,100014001040120,102122002000222,100032011020003,101441104023001,114100004000000,101102121104010],
+        1111410010002020: [100103104302044,102020004000014,100400001001300,102000220220104,102003321120000,114202044111100,102102044001132,100020221030411,114000144010000,100010100201100],
+        1412113402123230: [110241142024233,110441140102024,101001421031220,100413311002132,110210301200101,110400241240242,102200001002100,102210101121104,114443304123123,110023102103200],
+        120024241020242: [100422040021304,111111000014001,100021320123031,100014041042003,114033400011210,100002010413410,102010221132220,103100204000400,101433010300204,102114321401000],
+        102103230130302: [114142204123102,101002001002143,100012000002410,110200234210233,102000024010442,110023122133011,100401400012420,112111304020020,100002110422103,100233334220102],
+        1030032004100202: [111104004400200,114002102301424,112222002031003,103141324004100,100020004200210,114121104000220,100011004201102,100234120400143,102300010241302,114121012340403],
+        1043322302140232: [100002021021021,102200000200300,100023104101340,100000101040020,100110040013320,100000021030412,114023012303230,110021212132303,100003340410121,112442220201020],
+        1010140300231000: [104100002100221,104310001300102,102000321102310,101200011020000,112000044002102,114021132202032,102134044134410,111300220000230,114110032343001,100110101040020],
+        1420011211022221: [103034031400131,114002114012041,103322000112244,111123412214002,114200220003001,100043121024120,100001011022100,100240110002411,103410000104330,100104104302020],
+        120210100002032: [102010124012100,114022212300211,114000002334110,114102004141000,102000111101030,101003011000111,101102204023404,100440100030210,114200340003213,101200000300200],
+        111102022114004: [103012034041202,100100204100022,103130031241103,103234031200401,114011320024214,100233001000010,110322311300120,100204431000210,103340404020014,112100204000103],
+        123410011231102: [110243201202110,101134001041000,102011031132204,102102010314022,101220404040140,103023101411020,111120010020204,111020144114102,100101001204002,114101200003010],
+        1011000000421200: [101134030011000,112000244001222,114441114123013,103220211421421,114000012334102,101000014012442,100301311003043,110112441222211,110040022122412,110430014221230],
+        214101120020031: [101012324214020,100000004214210,100120010020214,103411120100301,102110211441000,102100120311400,100103301022000,103000331422023,102020442002001,102021004010203],
+        110202022021301: [114010200040441,100000344100100,111304022202211,102302011002003,100012441030002,110222042022111,101022114003000,112011004022010,114024210021201,100013001041311],
+        203021043322003: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,110212214400114,110012101102100,102102304001200,100010040001210,102002020220000],
+        104030031111400: [101022040322021,102042100242012,110201310010120,102100201400021,101113031012041,110030441223002,100420011010004,114413012313200,111234024134400,102011011131431],
+        1012002001002010: [114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,100402431012022,111403100030130,103121221400012,102022400211311,110030400004330],
+        241242113121020: [100132024030302,121310400440314,120100331332002,111042430000132,101100311144441,132303424001013,123320003100311,111002002142200,110302002000113,110220301300022],
+        1001134002000020: [101221004042212,100303111000101,102011101321222,100010001023120,102002101120132,100202000430000,103101041210203,110400040000210,110020401212010,101230420300200],
+        1020213030213142: [1020110422203030,112002010100420],
+        102444101021303: [102200041120220,100100001041204,100002001024002,114002100040223,114101002200223,102430001400101,103210140100004,110021041330000,114021404100022,111030004402002],
+        1120000112021101: [101222101202341,100020220410142,110000412003001,120202201010210,112042024000020,110022100044100,110003000024101,100010024302100,100000011020412,102022400210202],
+        1100101241403014: [101112104200011,103032221421243,100120004300002,110302010102310],
+        1113302000421110: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,101244324043222,112102232300222],
+        311012232124143: [102000004002101,110202000000310,100422314300200,101403014020203,102141410230020,100042030120422,101134224001001,110020001224021,102321234111310,112100000200031],
+        1423322311404140: [103324024030212,111022412140224,114110004121301,100212034221414,100222100402024,112002220220002,100121301023030,100020224310403,110000130020003,100014000022201],
+        1012404420212140: [110000101304203,104121412100011,100404141014102,103042024000034,101401001010021,101200200300020,110210012030400,102011200213421,100000001020100,101113024200231],
+        1041344000001000: [110203120112002,110000002100100,102103034004032,111100014404020,102300104113403,100200001000210,103230041400313,111210124134403,102141140210200,100012010410000],
+        1240000021202013: [100221424320111,100203104322011,100021101021200,103240321400010,102010134012140,101204211020322,111102002240013,100011411040002,101002114000002,114010000020004],
+        121140110041321: [103241104032021,100020114101410,111221222223134,404220140010113,1244000013132404,422002310200202,210111004010010,304130030001002,104112143430303,1200041011320103],
+        1012243022422200: [110021310040113,110301331234001,114403020002032,100400110020001,102120104000032,112402234044121,101020121032021,112202240410200,103110201240222,112112220204023],
+        101201122213014: [111101034100200,102001140221330,114221122320002,110000100442023,103300101403322,102201111110002,101103021102240,100211001000020,111202102223103,110000100131010],
+        1123230221423321: [101010201030113,102401004043011,114012012300010,102223134010120,103020440120000,100302000140001,100241224311010,103000200122014,111302120011012,102013220201100],
+        141400200000302: [112011014020221,100112101011130,103000204010112,112310022020213,103430100132341],
+        1410200022242110: [103044010120003,110142020400012,100142011022211,114230344103210,100000001021041,101000401032212,101303414220001,103133031440020,100110021040020,102110421342414],
+        122014121302022: [102100010233022,102120400212001,114313022302101,114021002302020,102313204114304,112100102300200,103001324000110,100002014200021,102300401001010,103212320212011],
+        100140000110010: [102102000213403,102334000243030,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,102100040220330,101002424214013,100012101022110],
+        1002204031202013: [103111001422000,111244302220204,100042100102211,102110030200120,100202140000111,101114000332010,112112211102024,114001032300011,100142044103021,114004014011110],
+        210120012302100: [112000012000402,101200020300410,100110224304220,102330211001002,103020134004314,110131211140311,102342202000410,102212141112000,100023020200332,103002004000013],
+        110100132220102: [100440031001120,102020200223310,100020001041410,103220011420242,102032012000101,114014112302234,101004201001232,112102102302000,102141231343401,101231104200000],
+        1000101200300222: [110420140032102,102013130223020,110002002002112,110202120004000,100041204331000,114012032240012,110222120103200,114000444100400,100000200003102,101001424014301],
+        1000004020020200: [111004020011212,111142104402301,111022004112043,100121204030012,102000421444300,103100020121314,110033001204200,103020404010202,114210344100320,111330002203100],
+        131103000432010: [100042304102210,112202000411103,112132434020310,101040100302002,100013030100002,103340114022112,100310034310200,101014014000004,114003022300020,114001000010010],
+        111200143020101: [110102401201204,102200130202201,102414034040100,100212030414010,100412200002013,102020041321410,102301324112020,111340300010010,100100001010314,100120421044222],
+        1110312010121312: [102000034011002,103204000110000,100001014340021,102103001340022,112032000211000,110032020020001,100002110000131,114100102202223,102331221102213,110214012030140],
+        103142444003120: [101221311022241,102110001142401,102041100200402,100101200403200,112100404000230,114012020030004,114100124100130,110400112021140,103001304002001,102110020310200],
+        120410020211102: [102121240200000,101212040303123,100011221032200,112401042010001,101130314020142,100000040101003,101422210301101,102321001000013,110010102002030,100000104102100],
+        202040010121000: [102114000202302,101030201111010,111000004122204,102120411023000,102201110212212,103100001420200,110402031313432,102020214011010,100000121020141,102031104021120],
+        221100233014010: [102301410242130,102122020202000,114100424003212,102203402022100,103221104003202,100122321001241,110100304220012,110420004222410,101404301110014,102220012001030],
+        120420422412040: [101000004210020,102210314111120,100032300010000,114140404123402,100010300414000,114132302200001,100013004300240,102403234023010,114011414102023,100002220120003],
+        124210130240000: [101011411020120,114201232330041,101000010201420,1320010021102402,201200032021040,142321203003111,100040011432042,401000020221031,1440003320032101,100201001100200],
+        1412041020034402: [103134014000340,104103100010141,111101222240010,100040210411102,100110004102034,114112020212203,102040140220220,114010400014304,114300132321233,110000140032001],
+        313321202002420: [101012034000001,110200220001104,101100404022042,112001112001040,102120004000102,111010112200231,111101304104023],
+        100101010340100: [110241024242442,110444010032242,112220001100200,114014130041210,104132420010010,100001041031013,114212102310100,110300112023012,110224200113042,103203404020010],
+        212000020100200: [111112002210022,103222004002001,100003421042112,114240004110231,102024021130010,103200224020100,103013024002104,112012010230002],
+        122100210103004: [103321411401411,100042010200121,101000010300200,101022220302103,111010200000412,110004442003322,110400141001003,100004300100000,100400110022101,112010000243420],
+        122042112211230: [100422000031421,110302040102004,102220021120430,111341300012200,100102000010243,112410034040040,111302304130401,100024334203210,103031410122401,100040021031201],
+        1124210402210131: [100244104101010,102032204002001,100200011002201,100211310140340,114004012302010,102340400242003,103101024001202,110433104224034,102041421100240,112200000410000],
+        104000031230221: [110000402130200,110210002110430,103024004010134,110102204202001,100141101040123,110422420030000,110004102001020,110040002032114,100120414100102,102404224041131],
+        130001012010402: [100443120030100,114400012310301,103032411100001,114330422320020,114104002340200,102034001134041,102100030222020,100030414200111,112210110200200,100032001042221],
+        201102100322400: [102141212000200,101203121020430,114144014122041,100022001040322,100000130010033,110020030024004,102324000240024,103020014040000,102312301104422,102220000200014],
+        1010200202311132: [114002104014300,102000311102212,102303010241010,102010004040000,102230130203001,102021401324232,112433112020200,101004410311232,101201034010420,111220410010144],
+        100240030003133: [101210320301302,102100221340112,100114104101001,114002244103320,101023221000031,101400014040400,102012034000402,114221004002212,102100122002001,101000011021414],
+        140003220121202: [102102000213403,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,101002424214013,100012101022110,100400222200110,114011112202020],
+        110010013000044: [102203102002140,100033103342212,134101404212003,104022100000144,104203010031022,101020401301300,230120100011341,103012001430410,103012001410200,103030010103403],
+        1021144240004201: [110001010021422,111101302241011,102321321100021,110003020000014,100122121004244,110000012000421,101001104011010,100304201000400,100230111200001,101410020300220],
+        1410010302202024: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        104412003123341: [100000001220044,101321001000010,102140114001021,100040400100203,102410111110002,102000100210400,114102302311211,114034400040402,102122000212204,100422021002002],
+        1041100200210222: [102320130240202,110140042002031,111001024132202,110010132030102,110012000002021,110223102022103,110120100000300,111013244111024],
+        110041103423012: [114313304002310,102004110223232,112204010411101,103202404003021,114010044120122,110040022200130],
+        132312142222421: [101133114022040,110210004434230,111100132241003,110100000020000,101134414020201,114101042202201,111424224422011,102301340200323,101000004210142,101340020341021],
+        1011211210000220: [110021010040000,112201310202402,102040041132401,114200002320001,100011101000012,101303224221230,114030102300322,114402000003230,103000001404102,102113021343210],
+        201221042400021: [110130321300301,102240200242002,101000411030013,102110312004000,103012004020122,100313041004240,101322310313010,100000000410101,114403020000214,101014020310002],
+        112020104020410: [110232022123020,100002004303100,110130010102101,100010240101221,111000122201420,102100010213413,101024011034002,102000041101100,100042004301301,100012021031014],
+        104102022100000: [100011001021002,110000141012003,110112301300000,101040100004242,100003000100210,110000040041001,104002100004121,102443320233202,102402001113222,101000021032102],
+        104120000241311: [110100120400020,114030000030012,114231032340010,100000010202201,100111404302321,100012024210210,112020021120403,101010304211420,101040240320200,111140214103110],
+        104201011140420: [114010330030011,103021220104200,101010020320000,112000210211020,100010324210003,101000000343443,110002400011111,100402132200000,111100300024000,103144040104204],
+        301100000100031: [102040431121110,100400002201113,114111100021420,112024212301420,100300310140241,100240134323001,102111024000402,114321002320001,102042000222002,102001011100100],
+        1110203002103010: [112000302000201,103013140100312,100000424301231,111101404104101,102133114020301,100234124224203,110032224202331,100100030024102,100044010000141,112043200240400],
+        104001300221024: [110213100122010,101212101023221,110213001300231,112120222020002,102130100222100,110200204432001,102020411123201,103024041421002,102200034042002,102030004010204],
+        1244220041140201: [100021400101221,102241341113010,102300020241001,114100124100413,101001114012114,101141400302200,100002044101122,103342424024214,100100021040420,112002242001002],
+        120100402100213: [102203304123030,101000040320021,114002210021300,103230114000201,101401300300011,100021124203441,114121002310010,102042210202230,103141131420000,114014002300100],
+        102000023010202: [101011321003202,102000031133000,102101401342211,112300210210310,100122300411032,110044121211040,101403020301000,101023244041002,100001104100201,110120001141121],
+        1134022230020400: [110210020002243,112020104020001,103002044002032,112344021130002,100101020402424,110122020430011,102021214002010,112211120202000,114211040011201,114141044004031],
+        112110300130010: [110201124221001,100041204331000,100032114314114,114012032240012,110222120103200,101100234021102,110143020121321,110130020003201,112100210200401,101010001002200],
+        1401134010200300: [103000004002012,100002011042020,100301421002002,100202140000111,102010200221000,103104200210410,112000002000420,100240101000030,102012401001012,102302211002004],
+        1000000020011202: [100010241020042,110301222101042,112000303004042,110113014221020,112003204004010,101202024013411,101100401103020,101432320330300,100430304100000,103440004000121],
+        1434102040002221: [110000021202100,100420014301410,100010101020403,110302030011010,114230412332011,100001211042341,100020111001344,101004024210301,114021004020043,102302001002104],
+        1102002014001000: [102302340241312,100410410002011,102101224002210,110311232120010,122203322100011,114141142204022,102010010220014,110330022021224,100410311001021,110123442011041],
+        1010131121142400: [110130302012020,102000100222110,100000211021004,102411134020204,114032200030021,102000000224012,110210120000001,101000120303020,102000001133312,102202220200320],
+        200134100012443: [112324002020202,100322100143040,101401140300101,101242000300000,100030124210101,102303320221102,114203224111020,100140304103400,100020210021010,102012134000123],
+        131202401030111: [100421221000240,100210201004400,102100302004202,102000034041230,102110100200220,112012132300102,102301001101100,101020144210420,114100002312000,101122224003222],
+        1020200410234034: [103020401400041,101011210314200,101211411020304,102314311100010,110042042002231,100400142200202,102110021342220,101000321141220,101300324222000,100222300001000],
+        220021130044301: [101144221103220,100240240103113,102100220311002,110040300120130,101000011033200,111031104402020,101230120301104,112400212013204,100340001000022,100002030422001],
+        120101001111203: [110001334214240],
+        102100114020110: [114301022320021,103344200113430,114101104102004,103030404010000,112100102012303,303020404011031,102012044013241,110020202100303,110012010122100,100101004232101],
+        222200400140031: [100003420100302,110210010000210,101200210302120,100200000431211,110300112103240,110102012000210,101320400314000,100201304121202,112400004020024,101004011110001],
+        121333200101010: [102100321320100,102102011414242,100041004100221,100034004211240,100000000412112,110000010033022,102330040242220,102140121410131,102310400240000,101201340300430],
+        1030102204103011: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1101242040310021: [431102031002020,111010234400002,110422420030000,110004102001020,100000340000030,110040002032114,102404224041131,111020022204020,110002310002020,102010222001321],
+        323030021340442: [110020402002300,110201012032242,102011001134111,110310100011310,114102034001211,102022020202210,100314111000314,102311011001213,103222004034100,102002101100313],
+        211144400200002: [102420044040023,110410202122004,101004204040210,102332331001100,114022014010344,100120404300300,100021104314210,111023304123001,103000001400001,102400021111004],
+        1123121021003330: [101220014012231,100104024303320,114422004110130,101010311003410,112210132031001,102010310213001,114021114023402,103422430124013,114242312322020,102021221120401],
+        114110030140411: [1302101004142102,1043303323011400,1002000010441103,1122204031101014,140011220320300,114200022340011,1003033202212100,214301004122000,1020002000321320,1140332400310103],
+        1003210022241402: [102203101120000,100031200410420,110034022104420,112013001120433,101021000314120,112104000200322,102103200210010,100022101040044,100024000102402,110043301220422],
+        1440413001212002: [102304130242220,110234010110023,114020400022001,100020034302021,103001001424322,102002221100222,100124030401241,102101044001201,114123100221401,101411301011220],
+        1112421134002320: [112203002024001,114020022210340,110200100112424,111233002220320,114202100000010,110402001004440,102030014013002,111001022111004,102211231100243,100341201000300],
+        130421000200001: [110011200022210,1320004203402400,140000221300023,100211120430001,400100441040022,1302200002412211,134100011032002,1023200041003410,100103030400110,1001221320011301],
+        120000434000000: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        102040000020041: [104244002023000,114012412200022,110000110000231,100142041012023,110000000411120,101301030313022,111440222100012,100420111002101,102032130242000,102120001340042],
+        1013140022402012: [100121230031032,112000431120410,100122200012014,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,102313204114304,100013200100011],
+        141420312200240: [100021204100204,110211020000002,103002034034022,111230214102412,111433044442220,101000004013020,111022120023311,110041341300041,101013320300001,114102314000101],
+        214041010200400: [100301224310100,103002104012101,114021000012031,100012324202240,110003410100312,122000430101030,114000022300301,100311000141022,114000000021100,114210202322020],
+        121031103201130: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        112010400120024: [100000210000202,101043224001442,100021100001301,101001004002100,110300214430000,111022002234444,110002001220310,103204144020011,120202001100101,102101224000230],
+        1043200020041140: [110020001310000,100310201003000,110412121110214,110142300120000,112013212032000,112010220224003,112001040231401,100200001001300,100012104313201,100002201032401],
+        1030042232041220: [110130110032003,102022120211140,101240404044200,101412040300434,110412041340022,110012241310243,114123302313020,100302010140002,101002034212140,103001000113103],
+        130024304042204: [100040401020114,114202400210000,114011012304232,100043111020130,112001201110014,110213300002210,102402200200000,110120200000200,114103040222002,101020124210122],
+        230420100204041: [110413340401411,101230031023011,103210200213211,100210110002020,100400040020030,114021140030212,101200101022022,111100132110002,101430334021100,113111420100023],
+        101004021201121: [102001204003131,102101041340032,103010110120332,100012020204300,100001104301010,102320110243020,101002020304011,102432314021013,114001400022003,104010000000320],
+        1031000200020223: [104204010044121,112014200224221,101003110320100],
+        1041100023130321: [114103402201140,101313004232122,100001004301400,102111420210110,102104131414203,102000204001042,101231220300123,101020020340421,114100232202021,100001040123200],
+        200103142204220: [102111000202241,103232220103211,103202404031100,102022004010004,100202204222000,101201114044200,110422420000022,101412010300001,110040304210001,101002104042030],
+        201332221010311: [112024442000120,100100320100331,100010021042030],
+        100000003041333: [103322030141022,111000204110022,100140040411202,114301002300221,112033130224021,103211001413304,101000334001322,101022234003121,114202200012032,100003111002443],
+        123102202000000: [110401112220304,101000001110010,102003214004242,102300001002032,101014211003211,112021340220023,102030004000210,102023030221340,100020114102022,111000004400230],
+        113031021300300: [102202004042024,110140001010224,100200021000412,110002131200133,110330000400112,100000004300000,110000000130104,110103041012020,110112401320042,111233314101101],
+        1020300000000322: [101011000322203,101012130310043,114102344121242,100001410411142,111432404442442,114421102322111,103224324020100,110241022112013,102110010230101,103002341221402],
+        1114020234140010: [100030220100110,100002114314022,102000100200100,102020400244030,103112100101020,114402102312001,110001102103432,112033300230131,110102002011031,110032402130011],
+        100240320014403: [102100221340112,100003414100400,100114104101001,114002244103320,101023221000031,102012034000402,114221004002212,102100122002001,101000011021414,102102201121020],
+        320002212410003: [103102041440324,112110032304211,110042234410000,102424111401024,110020004203230,110010042000123,101100240320232,102110024004002,111000102230321,101322100311212],
+        1000242240111412: [102020220224000,100421000012113,110200020000000,112030332302201,103040014004200,101010004000412,101000310322011,103220011413012,110421402223342,102044021103423],
+        221043011013422: [101002201021102,110140102142200,100011221020231,100404002200222,102130141411003,112020101110224,102004000201030,100033204201121,101000141004421,112140234024202],
+        1022300421000102: [103340041403223,100000221020014,102003224000022,100010031222001,103001114001210,100024311220202,110043222124300,100100420400004,102023001320134,100024104312140],
+        1014000302230231: [102040431121110,101221020040220,114111100021420,102212000200124,100300310140241,100103104302044,101041030320401,102141212000200,102042000222002,101203121020430],
+        1002424011211100: [103134014000340,101440004041120,100040210411102,101031214000041,100110004102034,114112020212203,114302020003041,102110014030002,114300132321233,110000140032001],
+        110004403100124: [110033100114102,114330004030120,102410101111403,102310140211101,110030000021420,110221002022122,111120144101403,100024221230411,110230000002421,100020020003311],
+        200210010121103: [100000020001023,111144042240304,102400021401101,102141201342300,114120424122030,101014000322121,100220121001003,110000104414200,100002001020024,100020110412022],
+        211001033004401: [102001404012100,1010400230221020,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311],
+        304220041042221: [100021004310222,112220322030220,110313312021120,100220214333200,110330234422000,111000034110311,102000024010002,100202000433120,103302020111204,114113020221100],
+        1000011301004101: [100021204100204,110211020000002,111230214102412,100113410410320,111201442222420,114012000022010,110041341300041,111022120023311,114222440003300,114110420031102],
+        101221403440431: [114302442300121,100403100013110],
+        202220440443232: [114042304100001,101211240301300,114203134112000,102000000221441,100130124030404,101401321012030,111402100030002,114040114100221,102300131102042,101021121112112],
+        1010200240400200: [110004301222000,110221000111302,103100104000121,110024140142000,102011440201423,100321001001010,110321302022203,100002204310140,110110210011002,110221322123012],
+        223203421020012: [100000430122100,101200100304010,100102000022402,100000001033001,101202404042303,100121231021002,102020200220310,100124100031200,101010200321022,102000231122032],
+        220200100013402: [100101201003011,103101000121031,102200300234001,110022002200032,114200034113002,102140041411342,114214012341203,101040204010120,101004004031120,101042221020020],
+        1110314100003120: [102442211414022,110122001010214,102101204000010,111231012220013,110022300420031,114230230000123,100101220101011,110000141123103,100222024320003,103323001400013],
+        1422024000012004: [101042104010000,114000122301411,102111002001230,111102010020434,110410000002004,100414231011020,114243204113000,103130004003141,102323210243022,100400220002400],
+        1020000023010431: [110201001212001,110200134240420,110403221000002,101201304200320,112002320212232,100002210413202,103140021401211,114002212210110,100020200104120,100101140102400],
+        1101410102402310: [110141010001110,104122011242020,110213401202210,111103310001234,100110441001000,102312000240002,102012104010301,114123014001020,100004004303030,102001424000000],
+        1022123103202022: [114024422210000,101040310304013,110300000100000,110000400022241,102121211340110,100002021002100,102200000201020,114403200002401,114204210002002,100044241020200],
+        1240204000404100: [101002434000030,110304000102201,101012410340104,110401340400011,101210031020103,110210020000000,110110010001234,102310001001131,111012044400414,114330204030213],
+        310100312242222: [100010021002314,103100111424040,103210001410031,103002221400000,102022030241032,100001101030430,103001010101001,110220000113011,111030014120004,111020142144200],
+        1010042040432302: [100000001220044,101321001000010,102140114001021,100040400100203,102410111110002,102000100210400,114102302311211,114034400040402,102122000212204,100422021002002],
+        1000020041000003: [114002032301210,100232404222422,112000201123012,103312024011004,114330302322210,102311020240221,100023141220100,101211204013302,110014004411404,100010124300001],
+        1003210214000341: [103044010120003,100142011022211,101000401032212,103133031440020,100110021040020,102300121000004,114000242303001,102021111411014,103003101400121,114210002324000],
+        101000020002010: [102024001120110,102100042002040,101203144040034,114000400012111,110230402031010,112000112003121,111420004443424,102211001100222,101020411114000,114142020220122],
+        302021402031203: [100032024201210,100013401040442,103012134011120,100031030004303,100000010413400,100101132014001,100402230022321,112000433232220,111031200120202,120000221031424],
+        104202020010222: [111133110023322,100400024103122,101024401112120,101001440303020,103002224002043,110140141201202,112012030233024,114201004001120,101141004004210,100201034224100],
+        1020001101204040: [110001041213031,102300324010203,102100142002204,100030020011022,102040011121100,111202012222402,111322234130000,102040041320010,102402104022000,110104002010100],
+        1131110444001010: [103001001400034,100121021040101,100000220100300,101014000340100,114110002344030,110140001222103,100002131030310,100242221000000,114010310044021,101100010302424],
+        1130222304201220: [100102004100201,114040204014042,111230032242001,101221031020331,102324031000000,103230004030322,102102001341000,112021022003301,114024104032203,101220004012040],
+        111000002001120: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        101014121202200: [110132141121031,112101020422004,111223110004240,102030140000022,102012210222441,110201031111320,100000224100002,103002001430230,102032021100000,110403031140001],
+        1010010041040014: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        130000214020102: [110020100042220,102123000230200,114200302320443,100401111000221,103302010140122,100010001001122,104240202023232,114000022210140,103100420210210,102132004132023],
+        1010400101301001: [100012320001320,102000331120104,110203111111000,102323204112320,100420404320101,110420220003321,112401014040034,110021200002102,112000001112010,100402130013100],
+        332000324400011: [102120010220042,110103312142034,102210210312302,101120100320100,114140014100000,102110004002301,112022100213011,100101231202322,111210020001013,111300142204300],
+        200211104401120: [102111000202241,103202404031100,110043132100220,100040424310002,110000314202042,112421024013100,100402002200010,112234224002101],
+        1030100100203131: [101012400343401,102002100222202,101000410321210,102140021410400,102001041100103,102202334040220,101001100320224,114021004100002,101300201001300,100123310031000],
+        1000130022310001: [102101240210242,100210120430000,114242114030210,111223420000020,111000324414403,114303400002424,112030302000110,101033114001203,102121114002014,100102221200100],
+        1101010033020000: [102304420211002,114112132313033,100220000432400,110100104220021,110000314200200,102240212002402,110101122013034,100030124100010,101100020301004,103120011241010],
+        1001002000301024: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,111212114131222,102140001441301,102221010201113,111012030022123,110031424214112],
+        124020101222123: [101212040011001,110201344402000,102312010211010,112312201131301,111110223004100,110020212130021,100120041224204,112410012010024,103004024040430,100212011200123],
+        1102042133010202: [114400034122341,100001101023021,112021201120101,100001000012021,114002004033124,101000104002203,102010231120312,102101104000212,111120010020104,102100230210011],
+        110402133220242: [100142004031412,111031100022230,103010100101110,101102210330301,100020141040100,112241024013010,110110240001000,100002020112431,110320020011000,103441130124021],
+        100100110421102: [112324002020202,100030124210101,100011224100020,114203224111020,110104100401324,102140201410013,103010011434004,112132012010003,101012421033020,100020101001010],
+        1030112042004000: [110233022033303,110103000003010,111110202244311,101010021142414,100040024300430,100122341022200,114102002341430,113400321012204,110420222224222,100000004311204],
+        104220121000000: [114230310212200,111242000003000,112003020221100],
+        1124012222041000: [100440024301100,102022200220022,102042031102112,102410111110002,100101041040330,112122334022424,102122000212204,100422021002002,103341124011404,114010214101003],
+        110102200430020: [101010034002013,110001111011031,110021304203102,110001440041003,100203011004130,100114104000040,112401000200040,110010411100002,101201030303200,110101021201003],
+        1404032012022301: [101044214042221,110010114210202,102141000313022,112401010202200,110024010120300,101122001110002,114102002340031,100042201033001,102200011300300,100122101200000],
+        202003040043200: [110020301220324,100041000010302,102020100243032,100031001020040,102012200202303,101110404021211,103110041442122,114042014102321,112003110242131,102112222001200],
+        1000000124100202: [102040024001221,112201014002042,103133211444022,102102412002340,114000122212010,102212014031221,110024222100001,102404000230440,112202101103403,100034331000033],
+        1102000043020004: [100212201000030,110020122101104,110040002132020,104130030010110,100000010411400,100000000120200,111120112103420,100100014000020,112402144042221,102100340232410],
+        1010210200424013: [100013104102120,100002300012411,110412221244140,111200012201041,102011011321024,110010114411020,102120200214220,112002124000132,114024220020023,100423200030421],
+        1021121020030343: [100020021042003,112404212020403,102100021341110,100002000100120,102102240210112,103031041400001,102022412000010,102300341002000,114002304100240,101000011003244],
+        1032114104102004: [102012021321102,102141000230042,102002000221000,114044020020230,102000230224024,102321001000211,102242130202110,100010001040020,100002031020102,110200440000121],
+        1020240000234201: [100000230100001,104002001220203,103412114041002,110011342000301,112141142310201,110121001243423,101000014000420,111001032141000,114000212242130,114002200020100],
+        120121212420000: [110000022003412,102401200232302,102230221100001,100112224301402,100011100102010,101322224220202,100003100011100,102311200240102,101212020301403,114200302333202],
+        1111011000340243: [110322104424202,101202421002031,102102220312102,103004204021310,110012310020200,102030130241300,100232224340041,112400002011010,112011001113222,102240134031142],
+        222101023221002: [110102224201130,103301201402204,102401121113302,100021020124002,111201210000103,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010],
+        1021200031004220: [102420011111224,100020004300114,110422402022230,100000000413010,110232020002221,100200010434020,102013102002210,102101300311032,110031332132100,110010021200102],
+        1010120202320000: [110310422104304,110130131203320,103100214000113,110001104210004,100002421021214,114300212300001,103030441240230,102020411100001,110210212110310,100101020411004],
+        1412434230011100: [102320104112023,100001034102143,101201000311021,110110414402000,110300112001013,100021000104412,110110211200222,101003301110132,100104200411203,101100001100404],
+        1011422222100021: [100004401212000,100003034100001,102000010200014,102110402004000,102123242001200,101000040343001,114120320224032,114130112310004,111320340001240,103200201400040],
+        1124231320342010: [100002121043000,102400234020130,101202001022000,100133204300040,102200031002000,114021112304224,112110044020204,101201101001302,102301204110230,111214012220202],
+        100033011000000: [102430231400211,102004021102101,112002012030102,114440240003000,100403200010022,112120302010202,100020010000104,102124200204223,112003011123014,100000004310100],
+        1402102334230230: [102020314012030,102020224000000,101002100323042,114021040001000,114110000002010,102301141002223,102110300210002,102000314012111,112014010202200,100000000410010],
+        110001340230023: [100020124300032,103000330110013,100011210411120,1000301003020410,110320044420300,110010004201031,110031340030431,100130200010403,111202324133101,103010034041210],
+        122421040332210: [114413122323000,102011232000334,114013314033010,110003202130040,111120310033010,100400410020001,101010401010001,111004010022020,100100201001010,111004040000001],
+        130004010200122: [100022102100243,100013230100000,241221402002000,1030200104020421,1000102021230333,110344021203140,4002244101001011,101212413013223,100004424041022],
+        1110000020202002: [101011010320431,103041414001042,103220000104122,101401030302440,102040124010141,102314221101100,114240004002100,101404104022202,100000011233203,111310114130114],
+        101402140240220: [100014011034234,102240221000001,100000324303120,100221200002204,114000024101102,400200234320200,100020124204330,100101011013002,103002121432200,102141101410101],
+        201042331220223: [110423144220412,111111032211400,103310010110323,102110341342110,100210001002200,112240241104124,101202300303044,104134120010200,103112124000010,102020010220120],
+        101100202011011: [102100404023424,102202201120000,100012200101131,110032302102400,100140204233112,103030404010000,112414042011121,103403044001110,111012020040441,100400120022300],
+        1021140013312200: [102240120244002,402010003200010,101003204000004,102204424033103,112010412020141,1002001101203410,104223421402434,110020102120001,402000143220001,123300114110104],
+        1023002010212103: [100012421020214,102011201412140,102100100220230,102000401130003,102000211410100,102331110243203,100100340022200,100100101041000,112100422011011,100112210012241],
+        141110101402042: [102021204012101,101224131020341,110012211120424,114001214100410,102231301114002,103210220100010,103120144004432,114033412300220,103112241441002,100020010122220],
+        113300100202010: [110032211204214,111010204401023,103142444002002,101200010300001,112002132303300,114420232314210,110103101002440,100301004321221,112432104012111,101104100331011],
+        103310040021101: [111100114401014,110003112130100,103000230120042,110103011302220,102020440242023,101230000302304,103222010114132,102300121004102,100042024100140,111322224120002],
+        1212010000200442: [110020301220324,100041000010302,102020100243032,100031001020040,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321,112003110242131],
+        1012042300200011: [110011232100412,100220040142222,110232002101410,110020120040121,110200021210212,110100100031014,102401010202301,114240000001020,102112004001032,102204114114214],
+        200020300100100: [101012324214020,100000041041202,100000004214210,100120010020214,103411120100301,102110211441000,100402110020100,112000320221241,102100120311400,100103301022000],
+        121011120420001: [102223111000042,102320200221110,102140041342420,101040401032021,114200004110030,111102324104110,102000324013042,101301420312101,102330324110001,100010144101222],
+        1100020002201214: [112211122030420,101031201001231,100010021034321,102000010202042,112013012301132,102001104001214,112100140200020,111004410022000,102023224000110,100120421004010],
+        200022101140224: [111030144113100,111024044110202,110001000034023,100001204102223,111120120020010,103141000210223,111041104111423,100402120033300,112012304003323,111000122234002],
+        102020011224440: [103342200140020,101002204000401,102102010210032,100104100414031,103202320101211,112111342310011,120203030102301,100020014313110,111042022231040,101002241110012],
+        134000140103000: [114202130211223,110110242112211,132210024001013,132104221210012,100033114200011,140402143000011,102201130200131,111110100010302,102233402023133,100114114231141],
+        1021023241230202: [111201032220400,114203000004300,100022120412132,100000321031423,110322100104010,100102024100020,114043002302200,101222121020001,102120230230000,100032021041010],
+        1033202000022202: [112021201120101,101142124022010,114202002320113,101000104002203,102300014110023,102430001401230,100402120031033,102103422004103,100010024202200,100020004212223],
+        204020230202012: [102101324130010,102100441341013,101440004042202,100100204101010,103312401404300,111141312211004,114002134022331,102020014003003,102000000223101,100020024212001],
+        200210303004120: [110020001310000,100310201003000,110412121110214,110142300120000,112010220224003,112001040231401,100200001001300,100012104313201,100002201032401,111301332200104],
+        310140200400000: [103342200140020,102321301000010,101002204000401,112001030221202,111010102203103,114232034002001,111320004120022,100104100414031,103202320101211,112124311100114],
+        1103040221113200: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1104043040012120: [100031034311401,100023210021210,102100104000203,110200101200402,100000140100020,102021201410011,103211014030010,100034124101023,111010024402022,100212221002300],
+        1000001002330021: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1004240110000403: [111001210042130,100001201020430,100422020030044,101020401034001,102440214020040,110001020021430,100230241000000,110102032010323,114330004032011,111414104421003],
+        240330001220102: [102002301120010,102340101000014,201301011030444,111002100000102,100012034312220,102004014000430,110140332002220,114111240032010,100431240001030,114222302321101],
+        202130320200132: [102300324010203,102100142002204,103000011402201,110113004402201,100030024303023,110301232000100,114110340004414,110303401230040,102013412000213,102104020202131],
+        132042210002042: [110104112010103,100122004300410,102202414041044,114443330001442,100230120001003,112203221102231,114022400020320,103001104010010,100111201014214,102003000220111],
+        1400024134002001: [101104121111010,112012000220013,112030022000220,110022012133400,114112112341240,100112401023100,112102420203002,100003220022000,100100201000004,112400124040001],
+        100021042220040: [110020402002300,110200200400310,110000011301000,110013001200012,102341101101130,114010000033220,102100014000101,102000404021220,100000004102242,102412304022012],
+        1011010320310221: [101220014012231,100104024303320,114422004110130,112210132031001,102010310213001,103244320114100,114242312322020,102021221120401,100121424231222],
+        130002001402202: [100024234201100,102113300230021,100010044310002,130000420243230,100232104120201,102212234021233,100100341202102],
+        1000002100003011: [100332010141200,110231104241010,100020044100330,102020401120022,114021102203101,103040230101104,112004040221232,110010020014000,111010042201301,103022010141100],
+        1020413022423210: [101023211102101,102022001101234,114220102332012,102000304001202,100010101021044,101233100300011,114400020001022,100001314100400,112101201102130,101004040320002],
+        222114100000021: [101131004020022,102004311130001,112224202021132,114002242303403,100013400002001,101032331001214,111100004100002,110001032100111,114104222313030,102433241111002],
+        111144313000310: [110430430003002,104412212102010,111012104400010,100432200033101,114244120001041,101021020324310,102340211000200,103120140210020,110010220000210,114420230000240],
+        1211000011002303: [101200400041032,110003000042343,100001034102143,103001224014142,114431224113420,111211002241330,102042031440222,101012021030223,102304000241010,100004144212300],
+        1000402010444101: [102101320220430,110101001304100,102320014112013,102312010211010,100111120012323,112312201131301,100023100104410,100000011041021,100024000010031,114010404102102],
+        221011410020010: [100020024300411,103001321404030,112000234001001,102242041114201,111102200020120,100404000020123,111000304402300,112211131100120,110102001001100,102214331110104],
+        1000100031003200: [110102042010220,101020124000413,111210000001101,114013400011030,101201104040034,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011],
+        1120000122110300: [110101231202300,100130444102110,114132202313300,110223310000311,103010304012101,103103124000111,102300111104023,114001304100010,100400122200001,111100414100413],
+        221333210120002: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,101244324043222,112102232300222],
+        1020123410230010: [100140101044224,101120004023340,103040031403031,101000211032200,102200010202110,100010044300131,111010130002222,102030021130002,110200300000010,102040201103400],
+        1100042240010010: [104100111240003,100010101020412,100001200100310,102100200221304,112022131130201,112332101100224,101011024001101,100430000033004,110003004210404,111232402242032],
+        1424400042000411: [114231202331202,100003021234044,111102032220111,111300042200340,101010041032322,114020042300022,100021421020002,102400004040100,111120204100203,100122101040022],
+        320441024033203: [102011121102202],
+        1410100223123401: [110201012032242,102011001134111,114102034001211,102302011002003,100314111000314,103222004034100,112401420204002,102002101100313,100000211001010,103100020102004],
+        100011404400020: [101224004040224,112014200203300,102101300233234,114201104110402,111330000011002,101010211001223,111001004410120,110221000110000,100120241012042,101200001200044],
+        110322200421322: [100210304340400,102201032021231,112020044000400,111201314412204,102000200204141,103220100102140,103041130110112,110023014202232,102220021304234,101023011140000],
+        122140021013404: [100221304220024,100111424233042,100202021001020,100000031203140,112202140204000,100142114233420,114320020000000,101100131114110,100100240003022,112122122012102],
+        1044121000010000: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        112000400342041: [110021000410432,103202000110102,102020440220202,101010010320112,100042000000000,103101024004200,112000021122010,100021111043012,103024000103302,103300021402104],
+        1020041111300010: [110000220420304,112000014000010,101100200334040,114020410021402,110040000001340,101020004002000,110032002131000,101431404041202,112000204001204,103122301240101],
+        1124210320022304: [110011011212100,101134030011000,112000244001222,103220211421421,110123230124040,131000001020102,112200412033030,110420001000202,100102110402220,110412310030001],
+        1002204443010220: [100122004300410,102140014001101,102000104012232,112400202020003,102000224000011,100011124202310,100030300124130,114400202310210,100001100013110,112233332034000],
+        130202204000014: [102120010230031,111202300010010,110011200022002,102020304000242,110002400023342,100120044233220,110023202200020,100020010423201,103402201212100,113031010134002],
+        1142104000424200: [114022300022421,111210044410020,111420230003130,101221000312044,100400240013333,111001314111000,101031030300001,103100040210040,100210001002200,100001210100102],
+        1220140432420213: [110020402002300,110100104404110,102110042001043,110200200400310,110310100011310,102204001111220,110000011301000,102000100220240,110013001200012,102341101101130],
+        110030401041223: [104100012102004,110030002000422,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110021232000021,100001140000010],
+        100202100020220: [102422114040010,100022041001002,101204400304011,114032424122040,102020004001311,100101101010100,100301020420101,114103212312012,102321044112101,102002202000000],
+        122130302202301: [102123220220223,101203342123110,110104102010242,114004312330330,102012114001113,101321004220102,103132114000010,110001012000001,101000101004001,101011040322103],
+        121002222000430: [100030324200410,102110202001010,100040041020102,114200020003431,114041002212302,101002200343110,103332044032320,100212024322044,100140004102001,114101024122320],
+        1113421030104124: [102300321004202,103003441432012,102311410222022,102000401410111,112000112001400,114310020001120,111101304101024,112240000200001,101021010300000,114111000233241],
+        1000330000414003: [110020402002300,110201012032242,110310100011310,102204001111220,110000011301000,102022020202210,114010000033220,102000404021220,100000004102242,102311011001213],
+        143302203221012: [100310120141002,102324014112020,100301421002002,102404021403141,103022021431010,103200020111014,100010004313001,103104200210410,100002200410030,100121031014040],
+        101000000030200: [114233210000201,110033032100000,100002001024100,102103130221330,110011002100114,114102220033034,103303041402240,100002121021022,100020200012311,102120100220224],
+        110400203132431: [110101201003142,102124204002001,103020200102104,111002310022022,110102000024120],
+        1440010033102120: [101020414010211,101142004000232,101410021100102,100110004101000,100040020201004,102000034000000,112400200201000,101212310301011,110402030400142,101023431001040],
+        202010224022200: [112001001112001,100310444310004,112332000411020,102431200203321,100211001204102,110002400042003,102032010241003,102403204000000,112333412022030,100210124104100],
+        222104300412143: [104100012102004,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110021232000021,110301322104142,100001140000010],
+        231011000200004: [111102110012000,103220011420242,100031201030331,100141011011032,100002120200101,101000344010212,102100431342023,101033141030001,100104400021023,100040300103443],
+        1432100024112132: [111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,111204000003031,100012004110024,102142000210040,102320214110001,102144241343120],
+        1024013200100010: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102141212000200,102042000222002,114402104142102],
+        110132320110204: [103100130122100,102340011104001,112300002022101,100430101012411,112013212002212,100202301000000,103411014002010,132000110000001,101000000300110,103000204004020],
+        100041410004001: [110041240000013,110131122012210,114010200040441,110032014420232,100012044101230,110412001213211,100000344100100,111304022202211,111021212200430,100021214210112],
+        304200240230404: [110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,102000221442214,102040041320010,102402104022000],
+        104240041010003: [110001030120020,102233034000002,112130004021000,213002142300033,111212024101031,100222240004231,102112314002011,102241414034000,102223001303020,102320104022204],
+        302212022410010: [102400010200011,101002041000124,101413321300222,1211200120132310,110222202033213,114310224030143,102031011130110,100302001002031,103304201400304,100011040202101],
+        1002021000441410: [110104112010103,111102004100101,102202414041044,102140014001101,102000104012232,102021100220101,100230120001003,114000040010421,112042110220004,112203221102231],
+        112120022123420: [101222101202341,100020220410142,120202201010210,112042024000020,110022100044100,110003000024101,100010024302100,100000011020412,102022400210202,102003034011323],
+        204030001023003: [114202400003330,111201222220201,114201102324001,114330004003002,114404022311000,100020021022020,114200002321304,111231042242020,112100204041010,101420001010224],
+        140100100102023: [110300202021130,101300231002120,103400104001022,102212200313103,100240020430431,114440420003022,110021010021210,100000024302220,100222021003140,100102404232033],
+        1100102034330004: [100020214300031,101010211001011,111220030010210,114042034104243,100004030411141,100412030034000,103232114040140,114010002240111,100240401003203,100002220411002],
+        120102200313403: [103201411402002,110022000023010,103101224000011,114020302300110,111002100021022,102302120210122,103002000104400,114100032320203,100400300013000,110114021000012],
+        322030102010400: [101301014221122,114220040000201,102102204022310,111040032200021,103030040121410,114040210022000,100404400013222,112010420241002,112201010203210,100000214310412],
+        1012320310222003: [114020000020001,1302101004142102,110001001100001,201014000241421,110400102312140,1043303323011400,1002000010441103,140011220320300,114200022340011,214301004122000],
+        110302001004001: [110300204431104,411200142040000,101040211000300,110413401240204,100222100030130,102120402001131,100312401002102,103110001420121,110102112010100,112040022301012],
+        1001313302413001: [110010220040411,100010021002314,100022441042300,103100111424040,103100104000230,100303021002102,103020040142112,103210001410031,102304000242033,114020200011020],
+        112030010210140: [101011220324041,101300000310200,114220110001121,100031004311400,110020011223233,110013000002041,102220004001014,102141302001013,100401302200302,114200102320214],
+        130221000143204: [101222101202341,100020220410142,120202201010210,112042024000020,100010024302100,100000011020412,102022400210202,102003034011323,100003341032400,103211031422023],
+        1132300231224110: [100002021021021,102401004021010,102402000202120,102124004023202,110002100012000,100001104210032,114240102322101,110033301230100,110200202122114,100001100400202],
+        1030030424020010: [102100102001001,103113201442104,1001221041001000,100101131200000,101014020300010,100130210421420,1302024401111213,100100014220442,1034022001022241,313010202340021],
+        220400111010022: [110021130023004,103004204044030,102314321001312,102023232000102,100101001010214,101141200014120,103110001240102,101202000300442,111202012241223,114010040023121],
+        102212121101000: [102142210212103,102310201001230,100102111040112,103110000104002,100023020410230,114121124120244,100131401010130,114310104001300,100032341030204,102342400213200],
+        1130204101000020: [100310020420020,110012112012000,100401101012134,102000000212042,110000212102200,100100101000220,112403200202210,112044040201013,100404312200011,103110144002110],
+        1001214432401203: [112404212020403,100002000100120,101202301022130,102110302004002,102100011413332,100112101042131,110200301301240,111221110000021,102001004000102,100010000121214],
+        101110104000014: [100000100100200,102010020203010,114403210004014,102200010200000,112102100423402,111131232212120,103211301411024,114444012310100,103140100210101,100020200120032],
+        1100432220020331: [110020242002232,124204140102230,100032400410212,100001120412222,120302031123202,101220001020114,102422300002323,103122024001010,101114304000100,133231404422402],
+        1000212040002000: [102110000210300,104220041321240,114420000001024,101021321034010,103422421110341,102040300202332,100112044302010,110030140000021,100300030421240,102102201341101],
+        110303313133210: [110110010022302,103000431240102,114011004114100,110101140002212,110420000104020,110410140000110,100000401031111,102004101410420,110204242124012,110022301301002],
+        100002201402300: [102310324112030,100410130030232,103220101421001,121110020100002,100002104204000,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100],
+        223321301031124: [102200100200422,100030001033001,112011122004000,101200301010101,100020040120103,100102234101014,114143412200020,100133000101104,112100000420340,100002010100130],
+        104002002222221: [110020001310000,100310201003000,110142300120000,112001040231401,103012011412220,112040101120100,100023234310410,100402010010244,100102434221001,101001000314122],
+        1000011022024030: [100422040021304,102000024011300,100002010413410,101011210300000,101433010300204,101002221140440,102040021424212,110324444424432,100100001010020,101000000322000],
+        100033011001021: [101001040340004,102424204043100,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        100232002132304: [104011021220100,111040000020010],
+        1122034232200040: [114201204111222,103300004021200,102004204041000,103230134011412,100012004101221,102301101004100,110432112111103,101410020300143,101000100342143,101012111001103],
+        123302021211004: [100020344302010,101000024004442,100002100000100,114100102340003,100100414230101,110130030020000],
+        1001400330104400: [110131214220303,101101200311102,100200204123011,102012024040044,100042021022002,112000210230234,102020104000240,110013120101010,100404042201022,100104020004002],
+        1000040032000101: [102100211412223,100020010120131,130022004024002,102400130203000,144112000040122,100010000210210,103034444000240,111110423020020,121021010114001,114142033030202],
+        130010004011422: [110412001240302,102044001440122,102400304042142,102223314042002,100110004103103,101004204000013,102023120204401,101003444003023,111120032214004,100200020012000],
+        1014004200102344: [100432200033101,101230004040022,114244120001041,101021020324310,100020140121034,102340211000200,110010220000210,114420230000240,110414012023214,114021000044211],
+        222020221310200: [110232011000001,102111301413000,111000212203022,112243004012113,103130101240011,102024331121001,110014024412202,100000010400422,110022022200130,111320232203130],
+        1420302232040040: [102101021412120,110024020421011,100042014310200,100003014314102,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012],
+        1404002040004022: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102,100030010102102],
+        1011230340000000: [101302134233230,100022001040322,100000130010033,101030404212000,114102224000201,110020030024004,100022021041122,100013011020311,100120041020012,102012204000242],
+        1410040223010244: [101002204212400,102001004012002,102112300201410,100100121043010,102100240231342,101123110330200,100323120143000,110432111241204,114200200002223,112123142010120],
+        1422130012420011: [110022004410312,110400011243102,102000401442010,111020004400234,321114010100340,100121041041101,102322101000200,101020041000102,1042012320010021,110413131000201],
+        222101000000044: [114213002340022,102120140212001,110102030010210,114400210002021,100240011000013,100000021022400,144200203310100,1003022312322100,102001244001224,114213004000003],
+        132201220024002: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,112401014040034],
+        120040202211130: [102100002002024,110014002130003,110000010021010,102010344000024,110102144200000,100212004104211,112200002020300,114203302324202,101100004004034,102001434012010],
+        111023100100002: [110240301111040,111123014100000,101042230304321,110011020002013,114200000003241,103103404004112,100200201000403,112142011101404,100110120023012,101042044010040],
+        1030222410300121: [100202000030042,102202131004010,103040004012200,102200142000111,103220101413302,101420240302103,102200114011100,111314100042040,110020120040202,110224010010021],
+        100011112004121: [101121000330012,103243011400102,100024001220012,101400010300020,111122004101110,114414020000010,102400000230200,114112224002020,101104010330200,100341211000000],
+        1432101140002002: [111100114401014,110003112130100,103000230120042,110103011302220,100101141042243,102020440242023,100220010002421,111210240010100,103222010114132,101240204233201],
+        102221100401443: [102012210222441,131402001003121,100440420024144,102030414000201,100304111000014,103300031403210,100022131043110,121041101020014,102301201200000,120003002411030],
+        1113110002212000: [114130012310000,100100411041000,103241131401223,100021221030421,100400120013011,102232024002401,102202141120400,103011001244001,112033112003214,101211000301100],
+        110334201200020: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        102042002020311: [111120030010031,102021020221104,110202312030114,114012042300202,112001112310011,124002022040202,100121410011340,110020100040110,110201014430001,100011130101220],
+        240233100200404: [100002100100210,100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102200401111200,102000430221040,114003104031111,100100000422320],
+        130012224021230: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,102002020243020,114002002300201,102040021121030,102102211140013],
+        100330021402004: [110400124241011,112104034022022,114233300214304,111020204112021,103022444011022,102101101021304,110210000000040,100031324100010,102202000232032,100040004202102],
+        1110002124202300: [101033101002303,102001104010010,112002030210041,103134244000000,110002102003311,101011344000022,100041130040040,112402334040422,111000030042302,111013004412334],
+        1103130042020020: [101210320301302,102100221340112,100114104101001,114002244103320,101023221000031,101400014040400,102012034000402,114221004002212,102100122002001,101000011021414],
+        1014202222322000: [101011011000320,114420200001202,102200100200422,114110012200230,100000421021024,102020102000000,100030001033001,102024144000240,114121124124301,102102002002000],
+        1420031100410010: [102320130240202,100034100023401,110140042002031,111001024132202,110010132030102,110012000002021,110223102022103,110141041304241,110033021204221,110120100000300],
+        1040000023012002: [110021000410432,103202000110102,102020440220202,101010010320112,100042000000000,103101024004200,112000021122010,100021111043012,110124041140000,103300021402104],
+        1030010000221111: [100003211020020,100000101040120,102300000220000,102323320240010,100011200100023,100010044213301,100122124300402,103031114000000,101233124010023,102400100201130],
+        201022242102413: [100020121020300,111110010022310,100200001001300,100002201032401,100240010430203,103432001210300,112440134041000,100210240013000,110401214242400,100033201031241],
+        202340400102321: [100020121020300,110412121110214,110142300120000,112010220224003,111110010022310,100200001001300,100012104313201,100002201032401,111301332200104,103012011412220],
+        1013140101010012: [102010040210212,104400301202200,100030010000110],
+        1011030010402001: [112113214020100,103300344012201,100122200012014,100000130013400,100011200201400,100001321032243,100201104224131,100002100204114,102211430202033,101031321022412],
+        120240402131302: [112000302000201,103013140100312,100000424301231,102133114020301,100234124224203,110032224202331,100100030024102,100044010000141,112043200240400,110022000133124],
+        1141001131414123: [102301201004041,100400122200202,100124001004410,100020024242001,114300122321020,100120300400022,110040012100142,114302430004110,103200001200010,101000000324014],
+        121003221210302: [110330400010040,100101231004020,110013112004021,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022,110020130044232,110333010013100],
+        100040410300200: [102011001134111,100000344100100,114102034001211,102302011002003,100012441030002,101022114003000,114024210021201,102323014020022,100314111000314,103222004034100],
+        1121004120121020: [110210114434301,114220024004132,100020100101101,114230012340300,114100022310024,112002030232410,111123224101232,112104020200001,102222001000203,101104300332343],
+        120210040211010: [110114001202122,103034031400131,100001010100220,114002114012041,102000004012011,110101100012002,110001002004240,103322000112244,100030220002102,114010000023421],
+        100120401334202: [112002002000410,102221230200001,114100212200003,110001040443212,1341242223200002,103001044021102,100020011230001,100023201000300,110420034220220,1010001300240320],
+        110000000103000: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        242010100022001: [100422000031421,102220021120430,100102000010243,100024334203210,103031410122401,100040021031201,103000300120001,110100000100314,112012032034400,114043010040012],
+        1042023313300310: [104120011242011,101230114202200,114300000000002,100400000020230,110020002104100,102111400202120,102000301101102,114100124002210,112400034040002,100000020201032],
+        1401144043023210: [103004204044030,102314321001312,114111042314242,100010031030401,100101001010214,102334004110210,101141200014120,103110001240102,103000000101400,101202000300442],
+        310040013312302: [431013031000023,1411024442020100,1002230121400101,103020110002104,1300100202010022],
+        100004014223100: [101240210310204,100200011002200,100211041001012,112200000201104,100400010022002,100234124120220,110030010120002,114001024011341,103003041221441,111003212230033],
+        1020102311100202: [100014030122001,100340204310400,110302220011010,112143002312100,103000121403344,111210300001213,112041004000223,100000221032000,100220320410004,110121000403344],
+        100041030110220: [100242024100001,110410021002000,102000114002003,112042012000041,100020034311000,102041120220020,100010030104002,100010044103130,110040002120031,100001241033300],
+        114022000201020: [100110034332223,101223100300200,100001130001003,111303214132004,112000000220402,102204004042041,103001201221020,102120231403010,110200110000022,103210021401242],
+        1100101312431001: [102423204023200,114114010021023,101000000320000,114220212340004,102202000200000,110301004420202,103140244030030,101402114043020,111102024102110,112000002000300],
+        202324010321110: [112014112303102,110312000010412,102002121103100,110103022012204,100214200004002,112200034012002,114104114000202,111201322223442,110024211210210,110003411213000],
+        200011401213020: [102242320200020,110030021222310,114010104030002,102010011011210,101041020321002,102013131134030,103312010110013,114101042313041,122112024242100,121211001014412],
+        134012304322131: [101022014222024,114230004110101,102142002000030,114000024101202,114201024112001,112020021120403,100002114104410,102130314134001,101043200320000,100103120104110],
+        210230140104000: [103100221440010,112202000411103,114003344011001,100021101000000,101014201030204,101203001010111,100031201030102,114201104114111,101041001003300,100001100411302],
+        1040042210202022: [110120144200000,114022412330004,101200221022044,101041030320401,110241112020204,100002004104004,103130021444021,102100104002224,102100224000210,100014204201000],
+        101001400020000: [103111001422000,102203004042010,111244302220204,100042100102211,101114000332010,112112211102024,100142044103021,114004014011110,102410004024030,101100010012423],
+        220021202412120: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        1411002302000011: [114200212322001,100401210020002,112210322040121,100402042200000,110001440041003,100010111022102,100220300410430,102000224000000,100002104302110,101022440300020],
+        1040400303000130: [114220040000201,111040032200021,100404400013222,102241044033231,110000312201003,103042320101230,103004004001222,100311000422101,101402031011101,114130004101132],
+        112102200421412: [100122230031414,114222042332003,114011120024030,100101121010100,112304211102104,102440024021100,110110420034120,100203304122231,101100121020020,112023032001201],
+        130130011420024: [110240301111040,111123014100000,101042230304321,110011020002013,114200000003241,103103404004112,100200201000403,112142011101404,100110120023012,101042044010040],
+        130202004011110: [103102300102243,102113020210120,101012310342300,114020404101101,102321320224101,100002404310212,100020004310022,114012212302132,100003100122232,102000414010131],
+        1000123012130031: [110001422030011,102144314002302,114200112340002,102343014022001,100211000430431,102240320200212,100140200410200,100020020120200,110210001214000,100001024311400],
+        212130134000202: [100400001001300,102000220220104,114202044111100,100030004102002,103110114000220,103200021402002,114001200041204,114020114010322,102030401014002,101232444041012],
+        131130004121201: [103300121401234,100122200020013,100400320033201,102331104112002,110121112010004,114132002200241,102330144110211,110214202124100,114243004003002,101200004233120],
+        113100422304001: [102442211414022,110401440001204,114400322311044,103224401422304,111231012220013,110022300420031,103214220100013,102340301000304,100023011030111,100101220101011],
+        1000310040114224: [100400224300040,100000020001023,111144042240304,102141201342300,102140210230000,101001004012413,100220121001003,100002001020024,103321024020142,114023230030204],
+        232102014421130: [103241000112010,112020104001300,100034114100102,110330002104200,114101012201420,111032414402324,101114420310142,101120244000002,101300000340401,104240102023211],
+        1001012022404232: [110301402000211,103030201402004,110420104221220,103200004030020,100320014310021,102000110221110,110240214432004,102122141142000,103041204010000,114432234113040],
+        100012142330110: [103000111421112,100110001000423,111000000041000,110211010101001,100403132200002,101400004022000,101022440331440,112030011121003,101120100330133,101041001022001],
+        1001241211404240: [101002001110304,114121112313010,102331400243022,100003004241212,102300434110131,102020021100000,110400431340433,100112004032301,110300202001421,102030001134223],
+        1011100420200022: [102012201321104,101002011001110,103012301401041,110043034212101,101001301000011,101200034044124,103042224001110,102110040230322,100213100410301,100221210412004],
+        112102000201110: [100010424101430,114000224101044,102110022001111,101020301114001,102102300210103,103024011431131,101011324001431,102320200224120,100030014210012,114100300000120],
+        120011020000010: [100103301002044,100040104331012,102240041122001,112102010202000,114213304002022,110020200030000,102001001130003,100030004100221,103120304003121,103141021212342],
+        1120202112004304: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102311120222404,100100000422320,102100012002000],
+        131203130042210: [110013202003320,101031241000010,110030332100203,114404232310120,100020010200022,110011300010031,102300010221010,110221021202011,102002040200002,101212402120014],
+        1012200000230411: [103130021444021,102100104002224,102031001411010,101400004022210,102031021441200,102112204131410,102300031004340,102312301104422,101200020303202,100000411002023],
+        1401140101201040: [102010114022011,103340041403223,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,100010031222001,103001114001210,100001111201214],
+        1122002220412040: [102202000201220,102203011120021,114202400003330,101000424210014,111201222220201,102103122004211,103022230124332,114404022311000,101010334004200,103003040102120],
+        1400200110010303: [102000121122000,110000214202000,100040011023003,114223212320410,100302114311412,110232011000001,100130004033423,102111301413000,111000212203022,112200422011002],
+        1022002022200100: [112124004022322,111300210014020,102103201320411,100100031043410,114403210004014,101033214211000,114001100024243,111000142201220,114100012204104,110141112044000],
+        203010000010042: [110220202124002,110402424222014,102030024010020,104100212101210,101001011114020,111320000001004,100000100010110,100300024313211,114022012202024,112023212001400],
+        1142010001001310: [112110020230222,100000100000104,101410204001212,103102124002001,114212004004022,101002224003212,103312304020314,110110001000304,100310110420131,110001200432201],
+        200110013201000: [110413304221020,100440000030040,100023101001004,102101000233302,112130010202041,103210210100210,102012404000211,101043004211000,112340340200112,100001000010010],
+        142434043404021: [110322011230103,100023230123400,101020031114000,111004012200100,102340024021002,111212140004022,110112202001101,130100014120020,102000031101300,102040001440133],
+        1231200400131040: [101012000320221,102101204002343,102010031100000,100200411000410,102022001101400,100131201202420,100220111000200,102221014033000,110040200001210,103100110110403],
+        133022010000010: [112101024021220,110401201001320,110034112134042,110022122120212,102102244030020,110041404412124,101032114013010,114102022202301,100000420422200,102000000220210],
+        100002200010220: [100430021001320,103214301421201,1000001214032041,102210000240404,114320124031023,114220020213314,114011310043003,103141111442241,112020141130103,101020001101203],
+        113102120431020: [114101004121020,100040301042132,102102241341004,103002020101431,102020431101132,100000041020230,102041021121210,101404104000404,100012104210032,102120204131302],
+        1002210230221001: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,101120014204000,112001024000200,112020012002031,111021022200000,100030120004242],
+        1013021210111121: [110020402002300,110000011301000,114010000033220,102000404021220,100000004102242,102311011001213,102000020223021,112024101112213,112003112000011,100010000013012],
+        102330200000042: [111121100010021,110310034424102,111240220002100,102101211410144,102010214000120,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202],
+        132203124014002: [114112012210120,100400342201103,102242114044013,100101301001312,102122001120420,112212232030211,110120024200104,101431200303432,103204100103414,100130214030022],
+        213102202313202: [101221020011201,112310132020030,101101401020424,114030220011120,103122011241020,100011101011002,103010034004303,102101440201242,112002110240403,100100101220114],
+        1001222000302310: [110222020012300,111012104400010,100432200033101,101230004040022,114244120001041,101021020324310,102120111142201,110010011212411,103230010114302,110010220000210],
+        1022402000420104: [110141010001110,104122011242020,110213401202210,111103310001234,100110441001000,102012104010301,114123014001020,100004004303030,102001424000000,114001400031204],
+        1040103010311041: [111120002211010,103122000100403,102023120241131,110014300041302,104103101240204,114241000002004,111232000010230,110020110400102,100424200020200,110321001330010],
+        1002022220222004: [110001202000032,142020040041320,114200004110244,102102402003021,101210101010023,114422114140221,114032104123010,114303122321110,101201101023214,100130104300103],
+        1041100003000343: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        1004421031024022: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        1020001040241100: [111220202240410,102200020211042,110114002004014,100010114200031,102341041000204,101224110303300,110003020001402,100000144311102,110100200402003,114001000010302],
+        1111123130020200: [103324024030212,111022412140224,103030304021102,114110004121301,100104100422041,112002220220002,100121301023030,110000130020003,103120321442020,103002144001000],
+        1000010312302114: [100002100100210,100400002201113,102420424042020,100010001032223,102111024000402,102000430221040,100100000422320,100102020411200,102100012002000,114221030000011],
+        123040011220200: [112032012004300,102000401442010,102000014004040,111020004400234,321114010100340,100121041041101,102322101000200,101020041000102,1042012320010021,102121321410143],
+        1142220230210441: [114011002300120,101221004042212,100303111000101,102011101321222,100010001023120,101121301100014,102002101120132,102010200213332,101100320320310,101000004211110],
+        202201100220210: [114040210021100,102002220221002,114100234004010,100030410102000,112240334012440,100020124303001,110020200001031,100034021034000,100022344101140,102230400202203],
+        1114202003003122: [101002204212400,100111014100342,102112300201410,100100121043010,110432111241204,114200200002223,112123142010120,101002321032002,101121100013002,100132034104220],
+        1212242010210013: [111201032220400,114203000004300,100022120412132,100000321031423,110322100104010,100031314241140,114043002302200,101222121020001,102120230230000,100032021041010],
+        222110021443312: [112004300230022,102300030220022,103201311412000,111200004440204,110243100000014,102202101300230,101022130300021,110202001000101,112010101111102,114000102304201],
+        200003434220004: [102302440220001,100104400403240,100020111221020,110010122102321,110002322101200,102220124000003,101020201003002,100230300001042,100311334020020,112400022020023],
+        100101022240032: [110002042230121],
+        1433201112213400: [102302340241312,103243130100004,100410410002011,110133000404002,102202000200000,102101224002210,112104230200100,110311232120010,122203322100011,114141142204022],
+        1011002002001120: [100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,100024101022010,110212424242341,100101014300100],
+        1401200030012020: [112000302030120],
+        1003040244002213: [112020000230440,110041014413112,110004002133140,100040031020241,100411400030100,100002000102100,110122000020202,102120221120200,102100211143330,101000221144002],
+        100233404043002: [101000024004442,101031104002100,101101230331040,114132100210100,100400032200141],
+        104021103122020: [102341411000203,103010210100220,101121000330012,102412000200222,110200402121400,102323020224000,100024001220012,101400010300020,101121101104211,111122004101110],
+        1120312242400312: [110023002000211,110031240011133,110010000002013,102401231110301,102010404010110,101002301110132,100122000400000,100001101040302,101400001014101,103232330101002],
+        1102132400000223: [110200400000020,100324140141402,103122000100403,100002204340200,110000410001034,103102224034002,110020041310021,110001001200323,110102111204210,103013100120001],
+        1004310203140131: [104104200011003,101004201144000,111112000011221,103203101201011,112113410202210,102210001404312,112220101100102,100101100020112,104130211242240,114002212300440],
+        1142203133132102: [100200104321000,110000110410110,101021000341001,100021214210112,112010034020230,102103231340304,102100010222101,103021004011210,112001002300431,114212010211143],
+        104100320021034: [103001001400034,100121021040101,100000220100300,114110002344030,100002131030310,100242221000000,114010310044021,102404124020040,110020022133202,103220201402330],
+        1242110022200014: [100002044211310,110430122111140,104012302104014,102320221000230,101042014003022,1323100312100112,1300001101120141,101141224002302,100402002201033,112011011111121],
+        100204432220400: [100101231004020,110013112004021,114004004112122,100100004100200,110402302023020,101432201010330,102143211343014,110001122101012,110212020000222,100030124202201],
+        1402221021030324: [110311011200000,102122100201100,110202202032022,101002211110002,101020330314241,102311031104220,111001444401000,110242101314034,114244202322332,110042010000012],
+        141200112200130: [101404110301130,102000001322140,110030411202403,102001104000101,100042114342002,100432101014010,110311102100000,101000030310000,111020104123120,102314144114220],
+        1012030422400010: [100013204331410,104123000021013,110233030400302,103300201404020,110000400022241,111300400001004,110000321211330,112203044010404,100121021044204,102200000201020],
+        100100000030100: [100002101021120,102102012003220,102313114114000,103030304021102,100000101001431,100104100422041,100001044241012,102030420223110,102120200201042,100200011000020],
+        102143100211320: [100222004320102,100110004103122,103020200141000,102414034040100,100022304302043,103031300144042,100120010421220,100000111034100,103132114002002,100412200002013],
+        233203100000114: [103300014023010,101421000301032,111302012221000,114004200041442,102004010220020,102121122000024,101011024211030,111020242204241,112020300223020,102313304020100],
+        200103003200003: [110311002102104,101000040341000,100001024102000,111330004130112,100202144121213,112001032003010,102010020243104,110000042002101,110100020114200,100230101202040],
+        1002022022003402: [100002100100210,102420424042020,100010001032223,102200401111200,102000430221040,100100000422320,100102020411200,102100012002000,114221030000011,114200302341234],
+        1230001024101201: [103000011402201,110210134244100,102121041441000,114102022200000,110233010002020,111203034103022,102101304000012,114020202241323,110004402131000,102132421000100],
+        304001222420400: [101210320301302,100440024301100,102022200220022,100101041040330,101400014040400,103341124011404,114101000221221,114010214101003,100031130410243,112400222021010],
+        1004421012222010: [100014001011003,101212120302000,132011240110101,132044444002002,122001102242001,112104401000212,110013401320032,112040011110303,103001234020121,112020212022004],
+        202030010141222: [104404322124241,102032031130301,114023002202030,100013401040442,102200124012000,114002120023020,121400013334402,100103201040210,144442110010421,144000213202010],
+        1212200122110000: [111121004103434,112203001103411,100212024121000,100001001033200,100221110101420,102441030231300,103032000144301,114002004100042,102102200220144,102001024012440],
+        210332202021040: [102224420201000,103013034012221,110302311302101,100000120002200],
+        101020012020400: [114002044012422,1240210023303321,111011220004001,121410130210200],
+        1102002121232021: [100041001023101,103340440140221,110030000010100,100003024100303,102010100200312],
+        1204001300004020: [111214100000104,102103034004032,100430221011100,102221410200012,110422010000200,103112021442033,110044014410012,110030231214100,111121012243322,110100144404220],
+        121211140020242: [102210100313100,100004420014012,102240210240022,101040401032021,114200004110030,102024124011010,102000324013042,100030124212213,114210102320112,114234004112000],
+        241440440000204: [100014100100001,102100004130301,102201101122100,100021424301033,102003004003400,103340410140122,100102114100420,103000121434032,114104012311322,102022100223142],
+        124110012023230: [100030220100110,100002114314022,102000100200100,102020400244030,111004012200210,114402102312001,100413131013301,110001102103432,112033300230131,110102002011031],
+        1113122102000210: [100222004320102,100110004103122,103020200141000,102414034040100,103031300144042,100120010421220,100000111034100,103132114002002,100412200002013,114312004002020],
+        1000034443143001: [111301240010310,101300400310002,102400014040241,101120321040104,100303101000021,111001212232021,110002300420010,102202110230404,112004031112020,100240011003010],
+        143010403220012: [103000140141214,102422021113012,114020204101200,101021321034010,100140014100401,110001120421122,100000101024224,100100030402102,101440000330201,111240142220304],
+        101204220003242: [100313324320240,102002212000021,102013201320403,100001310421201,110000110021420,110100410011143,112000221133021,100130000010204,102443324020000,101134004004013],
+        134202134322003: [100032141000004,102302221002020,111020112231430,110003222001121,110221222240310,110020401021000,102103234023110,100222420432002,112110002014431,111002024410131],
+        1121200020230243: [101100230013304,102330420243012,114011024102042,114402212310021,102310100240232,114230200210013,101030320340141,100300004314400,110020312200022,111302222202200],
+        1441010013200133: [110011000020032,111000044400210,110004204210030,102222021012222,100033304311024,112231212040100,110240142123020,110012322102010,101230004013020,110220212120101],
+        1010200132121021: [114020010030200,100004402212111,120011211132142,110020041012320,103210010100241,110140430013022,111011202110211,111001430040243,112000014004304,111024204120312],
+        1024411110244001: [100100411041000,112010012000201,103241131401223,100021221030421,102101101021304,100400120013011,102232024002401,102202000232032,102202141120400,103011001244001],
+        1040424440410030: [114230000001013,100002031032111,100022211001110,110003214210201,112000002310000,103002000122134,100204224322300,112004000230002,100402222200122,100422000432002],
+        221422402030000: [114201204111222,100104001041200,102012200202303,103222114034232,114122112202230,103221204032410,100004004102410,102301101004100,110432112111103,101104001101000],
+        1412100222020022: [101301014221122,114220040000201,102102204022310,100404400013222,110012130410040,100104101200201,111040100020010,112201010203210,100000214310412,103042320101230],
+        200233421020404: [114000000032100,100122124300010,100110034101010,110410224241010,111300402201232,111011100022010,100400444100202,101120101424040,101200111010033,112100404020132],
+        240220300110300: [102102101412200,102403004020222,1000030331001004,411002200000033,101111220222002,110144110000000,114320100012003,1042001130040011,100424222031420,112140022310000],
+        1104201022123041: [110421102023242,112100200230014,110011414201101,110001000023414,111440120030122,110202002231020,100120400400010,112104334041420,103043221414000,114400104140001],
+        1142010011033222: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1023212020000302: [110222304210114,101003000321222,102011131320100,114020000023210,110034002002003,111100202242202,100321104310301,100012011020041,112440222014310,101023031030021],
+        1002120030130000: [100300024310001,100012040401120,101001110343210,114000334010312,101022030300011,102214211122201,112300101130000,100000004100300,110004232203001,114400002323224],
+        133100012102102: [110011032010001,101001131021120,100000224343122,112011010210200,102310030202020,110020101010020,102420201112010,100002110000403,100242104310100,101021200342003],
+        1021010132024200: [112212320200423,100044011022224,102301011004011,102200111110200,102130001400000,102012100200021,112224304041202,102034010220333,111103044400100,100314021003440],
+        100202121220013: [104103201240410,100300204010001,100011320043322,102204100232030,110110012110224,100200011220231,101004410311320,100200310110000,102002122014040,103112010212244],
+        130024244021232: [100430014323000,112100021100243,100212101003134,103030014000020,100020024100324,101230011020020,112003002001002,102012201414304,114001404032310,114000200041240],
+        103011221104400: [101044214042221,110024010120300,101122001110002,114102002340031,102200011300300,100122101200000,110114022122200,101442404002102,102200101102002,110200340000130],
+        1000343224004101: [100400031010020,103442024002002,100320024212400,112003300212122],
+        310140200012220: [103114001444241,111324002200000,100030211020221,102013110232000,103122340101040,102012114000000,100001214214401,112140422012414,101411100302340,130300134014230],
+        1140002401203124: [140021043021204,103120420210322,102143020210410,110412000000011,112100214000031,103100004000304,101002014211041,110022002132302,110112402141330,100400302201014],
+        1021233321020042: [110104221201402,111101302241011,100003000102230,100100134100314,114232230211044,101112314022000,101001104011010,101410020300220,101101241113422,101102201113101],
+        104201002410004: [101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,100400231000200,112143144020012,101000100340001],
+        1011040102010244: [102021421100320,110441010032000,110000401222110,100020341221002,110410031002012,110330110101124,111010022200110,110003031232031,110032311222214,111302002203001],
+        102201000400010: [110101231202300,100130444102110,100001204342232,114132202313300,110223310000311,103010304012101,102210044010110,112000404000001,112000001121002,103103124000111],
+        1120210230240223: [102440001113120,114311204002010,110004221040341,103200204031212,100001024240030,100410110002020,114004102201202,101010014001032,100222014121024,100402002200000],
+        131001110000200: [101230002122040,110100041200400,101210241204043,111311120014011,100123011004113,100420001002101,101134224001001,102321234111310,101004010323441,102000024000002],
+        1022240011021003: [110203131211112,110021100023210,103122000100403,114103412201420,110014300041302,110020041310021,114241000002004,110020310022021,101121021020012,110321001330010],
+        220404102401302: [102422114040010,101204400304011,114032424122040,102020004001311,100101101010100,100301020420101,114103212312012,102321044112101,102002202000000,100022024100041],
+        101000002020402: [102203344011410,100021324100000,102103430210003,100012014300120,102414014022212,102012220241003,100032000101014,101430211012120,100204021000012,100032134101100],
+        1000101040140100: [102022404012203,110210334214024,112020010222102,100100324232004,102141240210423,101410014024001,114100000212230,102100031320041,112141102011002,110020234201010],
+        1120220203003222: [112113214020100,102010202004402,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004,103113010102100],
+        102102301442122: [110034012104202,102300444113103,110402002023040,102443120230311,100411031000011,100032111220130,114020130030141,102010014000110,110220004211001,101120214002100],
+        100410004300121: [101220040300414,114410002324204,101003140301001,403111002011011,113210210400400,1140104002020100,1010000000034010,1304032042210300,103100001242220,1120100002011010],
+        1000302211014221: [102101222000102,100113004302233,101000110324210,114221002303200,101022204002023,111201012201003,110200122222130,110140211201422,110123012044100,101002114213204],
+        1044023000010101: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        222022013141002: [114020000030002,100113220020101,114031000022030,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        202000201124400: [102123420200002,110201022020301,103322110110201,101212002120024,100033334311001,102122141343010,101002400300211,101014204002243,101001004010030,100400010010032],
+        242201000220003: [111431110000042,100302141003012,102004441124110,103303201400021,100000301221024,101224322120022,114100200002120,101004120224442,110310020040401,110200010014000],
+        1030200204000441: [144131233204044,120130001004000,101001131032132,110102030010210,110400010031401,102220211120002,114112002313010,114014010033321,101400104042212,1003022312322100],
+        1424411400140110: [110224314430000,102203301123001,103100134001001,100000001030003,114030314123101,114020142302420,114442222312000,101001001030440,114031010001020,114000024014200],
+        300104204121110: [110001332120300,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011,102130000312121],
+        140320333023422: [100010101030000,112020112300102,112002100233204,103202300102400,102442004024220,102032440200402,112400024011003,102012141440022,100420101011004,114030424122003],
+        1120432412431011: [101020204002030,114203042330220,103102211440104,102111022001024,102102231400111,111101100021200,114023010024000,114000204101231,100000400412200,100002020101023],
+        142410011140212: [114021004032120,112000104023000,102323234114200,102002200244011,102201014020311,103000304013020,100210021001204,102101022004020,100010304110000,112022020242001],
+        112344400302043: [114421022321142,101000204010010,110433002111222,110202441103213,112002100212411,103011010100014,103420201210023,100120110002024,114032102210211,114202332300110],
+        1010100200403041: [103443024000000,114112124140000,110044220021000,100231020112302,102101231341022,110122400401032,102440020200020,102001020222140,103122411441211,114102004002022],
+        202124011001042: [110030002000422,100011004343022,110401140004202,110040002034100,102402330230011,110201434430102,102110334020204,103200001420012,112002002000344,102120020230022],
+        122020010401214: [114021104120000],
+        141330010000210: [102101211411000,112032040234431,110010232004000,101020004000000,101004310324302,100102224033421,100120040400011,100214044220201,100400110020244,110410002020200],
+        100024000322202: [100041000411231,100010101030000,102140040210040,114110030002020,102010031444104,103202300102400,114103200002100,102410010201202,102202244040132,102211201122230],
+        122022030000101: [112002110220340,102002220221002,114100234004010,100030410102000,112240334012440,102101010210022,100010031222001,110020200001031,103001114001210,100034021034000],
+        1112113200012020: [100013200204000],
+        1001201041120242: [102340101000014,102002240241140,111203032220113,110232222040304,112241010203003,102120010230014,112104004022110,103010101412020,114020110001011,101010330320400],
+        123102103100020: [102304030220001,102141124004222,112042422001032,100134101022112,103310200110020,100020031030323,102140041342001,100001001032400,112100022010403,103100130100043],
+        1011021143020413: [110121130100010,112000111110400,100140001011002,101000401120424,102001114002202,103132120120100,110400004243120,121202102031102,111100210412220,120000200000202],
+        111410240120200: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        1001000221331101: [101100011102402,103100214000130,100002020122000,100002244244011,103001031403201,114040410020022,110033020003012,110023100420044,122333020133040,102011024010121],
+        323212001001010: [102001404012100,1010400230221020,102302200210010,102340120222440,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122],
+        1200212020220311: [102302214110044,103041014030230,110113122120330,102310101100011,111012312140331,110041202203140,100021404300231,101100020320003,112120200200410,110332242220220],
+        1001030011212013: [110032211204214,110230102122422,110103101002440,112432104012111,110130240011301,102002101410044,102002104011330,102100000220121,110222131200214,102103411140402],
+        103301202212100: [111423000022420,140102120200000,110400444243022,110131001002021,203201100012000,122001000320022,121104330112000],
+        210001203342400: [110240301111040,111123014100000,114200000003241,103103404004112,100110120023012,101042044010040,112021014022022,112002322032030,101040401030013,111300002204430],
+        1111023030001104: [110003410004022],
+        232030011020243: [110103014401023,101143214201102,100001044310021,114030444102123,102024000201400,103244411400010,103301201400202,103010031401122,102000404011100,100133044234004],
+        111002014410041: [103300344012201,100122200012014,100011200201400,100201104224131,100002100204114,102203001300000,102101004001020],
+        100020020103001: [100402004300002,110020134410001,100300020142022,102043001021033,101210211022100,110421202110000,114100202200202,110004100002122,100100121010222,110100122010310],
+        1000000043202304: [112132434020310,100000144104100,101040100302002,100013030100002,103340114022112,100310034310200,101014014000004,100100104102141,102111210230204,102200421003014],
+        132100430000410: [102343230224321,114201104111034,102310140240012,100014204201000,111130210020000,100141101044100,102114022004023,101022121001000,102102201340311,101410201010030],
+        141200013120120: [111102004100101,103122020213112,102140014001101,102000104012232,114122134140002,103012011434022,102101010202004,101001220303224,114400202310210,100042030201341],
+        114120403000020: [101121211101004,101001304001101,103000110142041,102002112041034,112401144042000,112200124010030,110422010000000,100020024100400,101000102400130,101304320302121],
+        124320101203003: [112021001121302,100020001001030,100100311010420,111100022114001,112202131104100,100102201220030,103000021220401],
+        102013202343203: [110200201311102,110332000400401,102100044001000,101012340321223,100020011230014,100011314203014,112410030231014,103023201244020,114200020212020,100222420432042],
+        1104242102104010: [100100030022201,103200010100022,101000121032422,110400300400024,110202101314010,101000201031210,100010230021121,110034400040011,102000221103012,111300040040303],
+        1020300002112112: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,103022110142241,103012000100422,101002024000400],
+        100004032134001: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,112003100241220,100301104104210,102101004000001],
+        1400202301000120: [110011414240022,111142010020301,102100104000040,100010044300003,114130210231020,112120224040040,103301410110110,112114324040000,102124031023100,100204104320231],
+        1100001000200030: [114011302301400,102304034110400,100043010120010,102101124001310,102430300201034,100130001014110,112030122000001,100004121030301,101102104020404,101031001004201],
+        1010020202012022: [101404110301130,102000001322140,110030411202403,102001104000101,103000200000240,104121003020042,112210200412300,102010020200000,111220034440403,122410423203002],
+        1001401431202110: [110021031040112,112004030241132,110344041332022,110322102201011,114302300000331,100342131201000,114032402301302,101420010300301,100211244340000,101010334002200],
+        1000001220030040: [100030204300220,101021334000222,114010122330030,100011024201101,111222442222413,110030122102303,103044001412002,102211124032000,110400200000240,110101301000001],
+        1001404440121400: [100122004300410,112400202020003,102000224000011,101212040303123,100021021000101,102030200240232,100011124202310,100030300124130,100001100013110,112233332034000],
+        114010004120201: [110000212101040,110021410020203,112024232302040,114013022304040,100040131021101,102322121000002,102021311100042,102030100221011,100201020140421,100004001002300],
+        1004304022120141: [110100104404110,102110042001043,110200200400310,114100002204212,110000011301000,102000100220240,110013001200012,102341101101130,114010000033220,102100014000101],
+        132022120032410: [100423004302232,100110034332223,101223100300200,100001130001003,102001034002201,101104401020410,102032031440302,100113004304010,111303214132004,100001000100200],
+        102002000030000: [100104010021241,100004301021110,114101100211240,114102102344110,114010002300003,100112110020301,102022200223242,100000004102124,100022301000112,114121030220301],
+        130010121410000: [100441200021020,102122041411241,100003000102230,100100134100314,114232230211044,101112314022000,110004331321320,110224102020200,112023024000400,102202240230002],
+        100101022000030: [103030411422014,103043334040203,110422201312402,102120131401230,110200302024000,110210020104031,113130020101411,102041210224224,112200030203124,100130334030100],
+        212110000000102: [111222202220021,111432124443120,103423201200020,110332111334020,111042000000020,110000001012000],
+        1001401010120004: [102201124020122,110210010400143,100103034003113,101020301142101,100130120400120,112401030203302,110212000400101,112003420210300,112212022020100,103020021423140],
+        120241321204001: [102010040210212,140230300211231,100030010000110],
+        100331300001000: [110122120100022,111100424100021,110111121011004,103001020104102,110200422113400,112000000223310,100002214210110,100011200201230,111001002201034,112024144002202],
+        100401000111100: [102304200241002,112144232304210,114401212321020,102011011133120,100001004130003,114013000011100,110102304220300,103204100112201,102102101410121,103242110100304],
+        1400340212321013: [100002031120341,113020001020004,100003044210040,103243401401133,110012212132410,101210014200430,110014011320012,110400022122040,101111010020120,100223400002001],
+        1020000322341344: [114011002300120,101221004042212,100303111000101,102011101321222,100010001023120,102002101120132,102010200213332,101100320320310,101000004211110,101230420300200],
+        1142200423022124: [114033120034402,100023221022210,100040221211010,102104010311220,102230022023230,100014200003002,101122001110433,110320022024110],
+        122241013202100: [102002014000220,100002011042020,102010200221000,101041201002422,114402320000202,112000002000420,102012401001012,114201224110141,112431004013030,114003002301122],
+        1020042002200222: [114300304001000,110214110004122,112021020220112,110003020001402,102000401102000,103021000101321,112231202030221,110011102103221,110102400111401,101301000310233],
+        200014210230001: [101221020040220,114022412330004,100103104302044,101041030320401,102141212000200,101203121020430,103130021444021,102100104002224,102020004000014,114144014122041],
+        134200121024220: [102334004110232,110002002000100,103013000104404,112200102024122,103000034003300,101000100322140,100000040001141,110002001231100,114010010002314,114124002341030],
+        1430001204234321: [110200100002031,101420310301020,111103224103001,103010301402112,100011401031000,100020034100101,100122214300222,102332100243030,110004424200024,103134021420204],
+        102023043030212: [100422000031421,110302040102004,101402114042420,102220021120430,111341300012200,100102000010243,112410034040040,111302304130401,100024334203210,103031410122401],
+        210200000200202: [101230114202200,100400000020230,114300124030100,100202031002101,112411140200242,100121114230123,102321014111202,102102334000400,114323400212122,110030110140100],
+        120001200240102: [100310120141002,103000004002012,100002011042020,100301421002002,100202140000111,103022021431010,103200020111014,103104200210410,100240101000030,101003104212220],
+        142000220213430: [100030010011002,101021301022041,100402300013130,104402130010100,140320413003120,101201220402420,400040001020004,1001120000022000,1323104441242212],
+        1121200020110210: [1010130003011221,1331041104430100,200142102010231,1032220014300112,101301220341310],
+        1140010130121200: [103000020120220,100004001020100,103030340110000,101420110330224,111023102200413,100110100000022,111424124422102,101030101022201,100022001231203,110020232200300],
+        212034003213120: [111123010022304,112003001133011,100201134100140,110213002132000,102022420220121,111010132204402,102401214020202,112102204024002,100100424030003,101000131030120],
+        1111400101000301: [110101231202300,100130444102110,100001204342232,114132202313300,110223310000311,103010304012101,102210044010110,112000404000001,112000001121002,103103124000111],
+        1010140041312320: [102000004002101,101403014020203,100402004300002,100042030120422,112100000200031,110003032000041,100003200120040,103300234023033,100112000410320,114010340043300],
+        101023332233040: [1302101004142102,1043303323011400,1002000010441103,1122204031101014,140011220320300,114200022340011,1140332400310103,214301004122000,1020002000321320,1003033202212100],
+        1040043400404100: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022,110104422010121],
+        1001104232404220: [102110230230004,102020034010140,103102010211110,100021000122000,112130002012100,112203420410100,100020404100041,102320204112104,101004210301301,101001100301030],
+        1012020010022101: [100004211221210,114022042302201,103310101401010,103220030101023,401300041114001,112032302000220,112003000230001,102004301444000,111133030010200,102103231340304],
+        200004120133002: [112120200204001,100030024301424,101011114210004,100024234202001,112102010201010,101211020302000,102102001342202,102420034022021,102130000221211,102013004023003],
+        100001020423013: [100120221021011,111242212222022,102022411100012,100020100100300,100001210102104,101401140300101,103220200100320,101030004004303,114102404120000,114000020034200],
+        1000131040022130: [114022412330004,100103104302044,101041030320401,101203121020430,100002004104004,103130021444021,102100104002224,102100224000210,102020004000014,102103321411004],
+        1444010010040200: [114011220041204,100301031002201,100000224311320,102120121212031,112000400223100,102022031324020,100211111003420,101100004022130,100344041000232,103123314002423],
+        120401221004200: [110141201302122,100023001222000,101002124002220,100101004230030,102103012004030,114034000012210,101044004000132,114114004140010,101010241113102,114030142200400],
+        1100140342302400: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        200024300000202: [114444244144110,102001200221011,114201004110120,100412114304000,103001020120202,101000020302400,102021014012210,102244221114031,112400000200011,111101400011011],
+        124110421221040: [102100010233022,102120400212001,114313022302101,114021002302020,102313204114304,112100102300200,103001324000110,100002014200021,102300401001010,103212320212011],
+        1100020010130000: [101044400340202,114101422201430,111014314400310,114020000010101,103121041440100,111130010032011,102012321321040,110020232132221,103203011404430,101012110312230],
+        200323144411410: [101001421031220,112220322030220,110210301200101,111000034110311,110400241240242,102200001002100,114443304123123,102000024010002,102413100201310,111001102202224],
+        1001142124010100: [102100304000010,102332320243001,102202014030001,114003040042312,110201400000100,110400204221003,112021324023000,100100340400000,103202011201000,111000000020410],
+        234421004212212: [103011431401300,101302134233230,100002200103104,102040300241403,100431000032001,100013011020311,100202031002101,102103331400000,103013004020003,100120041020012],
+        1030130231314220: [100411410430220,101410011012112,112300411132120,110131310000224,112104124022321,110100022012033,100221004340224,100103044230022,103222330131101,110020124201103],
+        1440320203000011: [110400112011100,114420304140242,110441010002400,102300120242120,114203104001000,111210002244201,114000004102022,110001022130201,102430001113001,114212102310100],
+        1140211300000040: [100030220100110,100002114314022,112030122000211,111130202220102,102000100200100,102020400244030,111004012200210,103112100101020,114402102312001,100413131013301],
+        1022312240013142: [101001131032132,110340014422102,101022400300001,102140004000100,103202130122102,100021000010213,100231004220242,112430010114123,130020100202200,120002101133400],
+        1003020300103014: [112012000220043,102414000203000,111101400022211,111320100000001,112002202000010,114001102301101,101010041003004,102000121442001,114011020020242,114030100040000],
+        102402330013411: [110034300021014,101042401000112,114400112314022,103004104003011,114014010043112,100112440013034,110104140001020,102011114000320,100041001211002,114200134110042],
+        1140112030002221: [101201111021101,103131044031101,110211100000033,100012010200202,120001020012001,102121042000004,114004312330002,114304304030022,114034424023412,100000220112324],
+        1002030120203312: [103041220111410,101100202130022,102004201032002,111001212200200,114101012343012],
+        1424403001321040: [101000201232022,103204024030020,112200011102023,111430004410400,110400304211041,112400040204203,101020304214000,101101011201302,114100000210113,103422044042141],
+        102030010002014: [101224001202324,100002001024100,102103130221330,102011310202304,110010311210011,102022421132024,100002121021022,102001331441012,100203014121400,101400201102014],
+        221212002022030: [101012131000024,102120221022200,114221104114000,100001111032112,100400212200322,112400004020421,100120120112100,103221021412001],
+        1020010314001321: [112004302004223,100011030420233,100000014100111,110112001300220,111024132204021,100400032200141],
+        240312210011031: [100004401212000,102123242001200,114120320224032,100000311022110,100202004324201,102041020200401,114030012303012,101003131110001,100000001232300,100240130000020],
+        101000400012240: [100400142200030,114020020001014,100001144201220,102120304001402,111212204101240,103210031410020,102330044110040,104103022103210,114400130000014,110232012044212],
+        240003400214010: [100024000110221,101301014221122,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,100404400013222,111001344400222,111000000000411],
+        1000130000200201: [1010400230221020,111320012221132,102302144110440,111101040014040,114140004123122,102143202000400,111020002202333,101321311004010,102110241342210,114122302311011],
+        1041200221400003: [100030040101021,114310102300021,102400124020001,100102224234101,102010321411140,102111131410342,100031120413224,101304004220404,114104214003030,114004004100210],
+        140224000241010: [103324221401420,110400332010004,103111004004332,112204340204032,101020320320424,110324011300003,100014121020424,114300034032400,110313010000400,111002022220000],
+        320410000002201: [103212014020132,102102030214401,102021420233130,111130410020021,101022000302211,101232020300432,100044004210004,114020204024101,101031320320042,100102101000203],
+        120122100110241: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,104110100014103,110341300400201],
+        124022102000302: [110102401201204,103020200141000,102400100230000,102414034040100,100212030414010,100412200002013,114312004002020,101200020303202,102020041321410,111340300010010],
+        1102422243013103: [102304034110400,100043010120010,102101124001310,102430300201034,102143432000102,101031001004201,102040010200101,102200434012013,100021301302122,114001110033210],
+        101404002000100: [102121240200000,101212040303123,100001100013110,102402000204104,114024142200303,102010042000041,100011221032200,112401042010001,103223200110112,102031021133300],
+        1141322000013000: [103140211443110,100030001020201,100242141004122,101302401003202,100012200201130,100004004102002,112020201120340,102300001002140,100204220000112,103210200100000],
+        1102404301201104: [102101141340120,110123114221102],
+        1004340442022302: [110300010040010,100001044200004,114121222313401,101201020300000,102011201441000,102100112002212,114202200002400,100113410410314,112230004011202,100131124002410],
+        124200240100040: [103201411402002,110022000023010,103101224000011,114020302300110,111002100021022,102200042000104,103002000104400,114100032320203,103002144042123,110114021000012],
+        101120402102000: [111202114103220,103000121421121,114404302200120,110140011300020,303320304020413,111020012233400,1000313001212002,110013024421020,110001002010000,101043021021030],
+        200101434110224: [111100224102032,100102244032220,111100214402203,102310310210000,114201124000012,112104124041104,112043222001113,103412024004004,102041011123103,110011301033002],
+        130411300102120: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,102023021321020,114040204014042,100040401020413,112414334044310,114001010044120],
+        1402020002003022: [103100030100010,100003414100400,101023221000031,114221004002212,112010022302321,101000214211011,102300131102000,100110204101020,100000001020034,111322242223400],
+        100401002000040: [104230032202131,103021014043200,101001024040001,114111300210304,110022002010132,100220210000034,114000212212000,110012112002100,103242100130004,103022004011103],
+        220012021000000: [110010000020000,100400200022410,100110201000134,114233330000221,102322011000003,102123304002000,112000004002402,102010224000100,100040340003012,100043004310410],
+        100011024113021: [111003204111140,110200421002003,102101142002021,100403304320200,110200024432011,212240000101000,100210020430111,102110211120323,100233031002400,100310014101030],
+        320401200021010: [112112402304310,112200122022200,114430104142400,100011040420210,111022002200300,100002000120011,110003042002123,101104004000220,101000120303002,101300240310433],
+        201423042210004: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1423003010401040: [110141010001110,104122011242020,110213401202210,111103310001234,100110441001000,102312000240002,102012104010301,114123014001020,100004004303030,102001424000000],
+        132001001231014: [102302340241312,100410410002011,110133000404002,102101224002210,112104230200100,110311232120010,122203322100011,114141142204022,102010010220014,110330022021224],
+        1004030020020100: [110202000002301,100021401041100,114020000011320,114002204011413,102010111411204,103040020122222,100031001030010,103433144040432,102310201001420,102420321400201],
+        200340004100220: [100032041021210,110004301222000,102040011121100,114310000001232,111322234130000,110104002010100,103100104000121,110024140142000,114304422323310,100212204243022],
+        320023042101041: [101210320301302,100440024301100,100114104101001,101023221000031,101400014040400,102012034000402,102100122002001,101000011021414,114101000221221,114010214101003],
+        1010104303302014: [114020000011320,111020032203301,100031001030010,101000210303342,103433144040432,112100034020100,112102204020000,102021104012002,101440400302320,103000121424330],
+        320201430112001: [102220011110041,102144032001002,101004344002124,102402030203003,103022011400040,102011011133120,114411400000121,114023240040131,114310024002102,110423300004001],
+        1024112110330043: [102000001132113,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,111321314133000,100004410120102,111222214101043,114412142320040],
+        123320213104000: [104100002100221,101200011020000,112000044002102,111300220000230,114110032343001,102230021122000,100031224102002,431300131230002,102001024011010,100010004130413],
+        101210010120004: [101444024041143,114121002310100,110000010033022,100001101023021,110200332041001,102020032000000,102140101342121,102023214001142,114002004033124,121012301123040],
+        122400302230121: [101220040300414,114410002324204,403111002011011,1140104002020100,104402130010100,103100001242220,101201220402420,1040212001001234,1001120000022000],
+        1011133000312204: [110111111010000,100001114111300,114120014004003,110300021330100,110131311200401,112400114041020,100100441000034,110242140012303,101030004000120,110441222110003],
+        1403244101212021: [102440011414040,102010244010004,102031004010230,114121002310033,102122014003000,100020004100000,100211001000020,110201222031001,111101202241011,112302311103001],
+        212111014111300: [110000411313130,110400000001201,110000010430211,110001212130303,111403414421302,101221311022241,110100231202400,110020102102000,100000201022030,100402021012201],
+        200042300340212: [102133011413110,111001200041102,114022424102243,101223020300040,102034324000220,102022400203211,101230020303000,111340130010314,110200422121211,101214240300041],
+        1003002200122031: [100413311002132,112220322030220,110210301200101,110400241240242,110023102103200,102400140230123,102112300222001,102000024010002,103302020111204,114113020221100],
+        1023040031411001: [114001210033034,100012200002000,102000141104022,111221102222020,102102010211012,100230220410213,110210002100320,102100220220023,101111211012031,101213110301020],
+        1100211204102022: [110213100122010,101212101023221,110213001300231,112120222020002,102130100222100,110200204432001,102020411123201,103024041421002,102200034042002,102030004010204],
+        200041001110112: [102242320200020,140203123020300,102101244022242,102010011011210,102013131134030,103312010110013,102004004010011,114101042313041,122112024242100,141000201412111],
+        201200000121142: [102021001132040,102301004110004,110402420402001,110021021210300,110404000000012,102000101120123,110221022101104,100020311220412,110123004401121,102203031121210],
+        112120004022400: [110011414240022,111142010020301,100000144104100,112114324040000,102124031023100,100204104320231,114002104020100,101032001032200,103132004002020,102001204001021],
+        1122002100013102: [110130432010223,101023312403223,100421310020001,111220012220010,111102302241002,110200002132202,112441000200100,114100040223000,103020000002031,101144124202103],
+        1000100122031223: [111210000001101,114013400011030,101201104040034,101020111030400,103004104010210,100202200003011,103210210100210,101013101033100,102204204042220,110100301000100],
+        1010020431322121: [100000201020000,102030024112031,102401011401222,100002002212000,102114341341012,111420200002021,111001224121320,104042022102100,104030002100140,103421124042304],
+        300000003200320: [102210011101414,102110201342300,102102011401410,114032124013234,102143020230411,101340141003001,101210100300100,101014424010103,100102014301210,102043024010103],
+        130114241002003: [114213004100220,100241210430100,101220301021003,110032424422200,100231411001200,102014031102230,100130044231012,100000230400204,101210014040333,114411330004112],
+        100120010200012: [102432004021410,102111120200030],
+        210112341303120: [110400022010030,100214121000000,100042034200032,102011041100210,101400240300010,110002131200133,102412241111002,100424104302020,101013234000010,101122420322200],
+        100003310020001: [102334004110232,110002002000100,103013000104404,112200102024122,103000034003300,102011000200113,101000100322140,100000040001141,110002001231100,114010010002314],
+        222124002003130: [103202004001120,100120204003012,1300022002310414],
+        130343014011100: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,114003134011032,100101234330123,110024000432310,102012101443110,110032220022103],
+        1002110232010033: [111102440020002,101202001024340,103312010113222,110130022140122,112002304004203,100034110413403,101030040320021,102123411402002,110100042013221,101042201030422],
+        1120112042000122: [100220034323210,112121212300101,100001124102222,100400100022003,114420002322000,101200034044300,102204044042410,100020310010001,102220001112023,114302014032021],
+        112211200402101: [111220204101421,110042120021013,101001010300011,114012020044224,102122401340101,110021020001220,110112030401012,111112204404021,113030210140400,100030120004242],
+        1002140220101040: [110411104220124,114210412314301,110112202140320,110041024412043,114410302313304,100144320410201,114442002310100,101101001100002,103102121242202,112024402004000],
+        103120100230203: [100034244210020,102012004000003,100411000030110,100041014210020,102041201121230,100000030100102,101012400320002,100002131000002,101001244010120,102041104001132],
+        121001031130240: [100003211020020,111000240044102,100000101040120,102300000220000,102323320240010,100011200100023,100010044213301,100330204322010,102111211401000,100122124300402],
+        1101000200000322: [112213102031413,100340311000202,103100011242104,110001044200212,102102000202442,101100301110000,110122022042030,100220201000000,101010000300401,112012022340101],
+        104123333420233: [110013112004021,100100004100200,101021404000220,103120140210020,102143211343014,100112000410320,103002110114402,102012242000404,102100214000001,102012100200002],
+        201201211000231: [111030212113431,102001111011201,103222004032000,110044320441241,102233034000002,110410122010102,110123011200000,101122404022022,110311110410340,100100200021431],
+        1034100301040004: [112004210244200,110210010400143,101200400303422,112024424001400,102100220202200,101020301142101,112032142000000,102102044002304,112003420210300,102100321123023],
+        1103322102400200: [110121100004131,102000301101102,111122200021102,114032234033303,110102022000200,102200034040443,102323004020100,103114211441300,112431104040041,100110204300200],
+        1032000000001432: [114031022302044,102031011441221,102021201410011,114103020221100,102002024000132,114430412322343,102400004021004,102240021302000,103202140103403],
+        1002103400401013: [111121100010021,110310034424102,100100010422000,100024201030210,110100001014311,110043400012000,102120400200312,102122134021133,110030401311204,100013014100101],
+        101120210201211: [101020024001041,100200201000001,100422211004214,102100000210002,102121010210004,114013214010111,112224232044014,100010004210020,112002100240200,100001404100110],
+        1413223440100023: [100310444310004,100211001204102,112333412022030,101411021100200,114303202300104,100210304340400,112020044000400,103230004000322,111201314412204,102100300233312],
+        111412024243241: [100402230013203,112132400200233,102030441134200,102103024000200,101032041032203,100221114231001,101222024011320,100021304310000,100400022201011,100010004313023],
+        100034304104031: [110112102211042,114314300012000,114200022300033,101400220303133,110431442110400,100100111041320,101420010300310,110000004210112,102334001004100,104100001240034],
+        100000301314232: [111130312211003,103224041400220,111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,101001010300404,102410220200004,102100211340043],
+        312300424003002: [100010400013202,101001201110100,100113201011032,102230000204000,102003134000001,112010420232040,100001324201100,101440004041103,110240220012030,100220410101001],
+        1002010331200340: [111100114401014,110003112130100,103000230120042,100101141042243,102001221100211,103222010114132,101240204233201,100110004332200,100403211014030,102001004041400],
+        1030121204003023: [104120011242011,101230114202200,114300000000002,100400000020230,114100124002210,102432044043002,114300124030100,102211020204231,112011204004112,100003000002034],
+        113040023020204: [110002130002020,110112040101001,100031201033102,110004031320244,100211204030111,102111001023033,100212204221011,100024001042210,100120101042400,112130024024102],
+        122322100020401: [112211122030420,101031201001231,102000010202042,102020001100001,102020324002022,112013012301132,102001104001214,111004410022000,102221241110321,124301340333312],
+        104022213410100: [101000024010001,111101222101212,102001310224010,114000224102000,100112034103110,102000104012012,110101101241222,103021001412410,111200200000421,111024104121140],
+        1040120000401000: [102103222002012,102010011411233,114004322320200,100403220020024,103102100122414,100121034230014,114322002322044,112040200210223,100002414310100,102042414010212],
+        1404230111101211: [102013024000211,114021004011100,102140140310001,100402022200102,111010302203001,114144212340021,102110111023103,102302104112440,114100102341011,113112341020242],
+        1000002000400321: [100024000110221,114130014001202,110010220103020,111004100022110,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411,102131304003000],
+        1030120121200302: [114012304010103,102211034013100,101232404040100,100044000201201,103320304021024,100010214313120,112040022002231,114401322310000,101110404001000,100000000101012],
+        100200200340202: [110010220040411,103100104000230,100303021002102,100010020101220,100310301002002,100021201031200,101221001202021,100301000142122,102101301342021,102324204022104],
+        213102140031231: [101010001000031,100021020104221,111120024101141,103201214021013,100030220410304,100011034302423,114200144110020,102142002000002,114120424122030,102104432003102],
+        112100003040201: [110201012032242,102011001134111,114102034001211,102302011002003,100314111000314,102311011001213,103222004034100,112401420204002,102002101100313,100000211001010],
+        130120034003120: [114240324110412,110020000140010,110200012030221,110212010000420,110000001102000,112002002034420,100000014340041,100010300404300,110204321003100,101212210303021],
+        120000142320021: [103122020213112,114101100211240,114122134140002,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,100022301000112],
+        1010111422021134: [110410000104042,100014014203233,111422100034314,100000040413000,102030414003000,121310232003222,141000013100220,100220021000033,102112104004041,101020041110132],
+        130400102000042: [102041310200042,101000304014100,110301030010140,104100002101431,110221000111302,110100222001100,101010001002000,102030020224102,111330020002213,102011440201423],
+        104110011124210: [101122001110002,114102002340031,102200011300300,100122101200000,110114022122200,102020020224002,111302004133300,110200340000130,110100040100302,114101040212102],
+        1021022200102142: [102422110202040,102304030220404,114004200041442,103000101432004,110200402121012,100301111002101,100022000101100,112010042000010,102020001120230,100310011002143],
+        1000404220210002: [104010100010424,103010014013304,102103030201001,100010221031023,100140000024021,101223024200014,112240404012020,101201024203004,104000021220030,112042430240120],
+        343003000320410: [110013312204132],
+        221202030120330: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1014114220020004: [100310120141002,103214010102022,102324014112020,102404021403141,103022021431010,103200020111014,100010004313001,103104200210410,100122020011232,100002200410030],
+        1102000313013301: [110441234224400,114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,110013122130200,111403100030130,114020204102020,102402330230011],
+        1202430201011220: [110400011311001,103300120141130,102110004000221,111144202220301,114224204100310,101434031010012,102304011004310,103101410212231,102100144001112,102000041441002],
+        121424241101130: [110044320441241,110410122010102,101122404022022,110311110410340,102300104110220,114201122320100,102303014110142,101442104021041,103020040104002,112021000221430],
+        1002221400234232: [110204400000120,100000121020303,103122114004113,100200020431202,101344140314114,110020004203240,112001202031004,102110001141443,100020010420242,110001040133002],
+        300001012000400: [102020100211004,101023000340120,102241210201000,101012400320002,100002131000002,114040222301101,102140110210424,101201000300222,101002020342202,112004044022023],
+        1402010301022130: [110000000003200,111401200000040,102300122004231,101041204222101,100024024211001,102110001342114,114342044032200,102330311004110,114032110040320,111203012221030],
+        1111040034440220: [102340221000300,101000130320340,100110020031042,100220124221000,100402002201002,101011014002032,101002201140040,100211000412142,101010010320010,100141021004020],
+        1133024112120201: [101232314010241,100301300121100,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,100414004300100,112102232300222,102200000201120],
+        1004122020334002: [102120010200131,102044104002014,100000204214001,102022000220004,103001220104301,100102434300310,102004004004200,100421200001003,114024200040223,112010004020300],
+        1022122220000220: [112401024044240,101222121020001,102000230223303,101004020340241,102012201412022,102101021341021,102143112001423,100003211021332,103202034020000,103002144021100],
+        120422002400140: [103020401400041,102020111124232,110042042002231,100100031020131,101000321141220,100141034102022,103000204000002,100030041031020,100403110013000,100400230013130],
+        1040020000442222: [112010121120420,101401014022004,101204011000210,103000001240214,111104040020043,114132404003001,102001000200101,101102001111120,100114210414111,101010104000142],
+        1041002420020314: [100301300140011,102022420220121,100030031220122,103210000102210,100001301214030,111140000012120,110010201320213,110103010011301,101010404001431,103012204004212],
+        124004200104402: [112030004004130,101340041000104,100000034301140,102111011142022,110211130002000,101420000330441,101040111003030,114022102300021,100023104101112,110140342044321],
+        1010204014240103: [100001020120010,100103030001121],
+        1432421112203400: [102114340204022,101000011030111,1303043020124234,1142022100220102,111143400421100,1212333103010100,4002031124040120,1001002042020200],
+        121132013002022: [100040014331413,110130104401101,102040044001211,110044200021204,100220301003101,110004402010202,100023234240221,101410100302222,102130204000301,102111000210000],
+        124100110113300: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        113001000112022: [114430202311020,110302140014102,110431341000014,100342121000040,114411202310423,103021121400104,100020041044202,100011041020300,102140004000231,114021102303340],
+        101102130002210: [110021000410432,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000,100010044101002],
+        204030401130004: [102230040200031,110122001010214,102023301102400,100030414300112,114043140010022,104120110010402,111010214402000,110303104423010,102000324040402,100100401040001],
+        1102240210123102: [100021200124422,100022211042104,114020132303131,102020014002022,110022120020002,100300421002040,102040004010020,110004021102300,100400322200003,100002000002212],
+        114122013002030: [101230114202200,100400000020230,114300124030100,100202031002101,112411140200242,100121114230123,102321014111202,110020004204120,102102334000400,102412001111203],
+        323204032022014: [100140201011204,101203104200224,112010030221031,100140000024021,101223024200014,112240404012020,110110210012111,112122004020414,102000220204011,101201024203004],
+        123210000212012: [100120011004032,101100400333023,100303111202002,101003201030041,112314322001102,100421320432102],
+        210111302310000: [112224111100141,100040134340044,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110210020104031,102041210224224,110240411110010],
+        114000220112010: [114101020033111,112202212040211,103020004000410,110004022101020,110142301120031,102032001030043,114211224002144,102001441133310,100202424301111,102020001321030],
+        1010004402301311: [103130424000200,114010204012441,114000240030002,114002322300200,103244034020020,103201034020234,114013402304000,114043342241044,102240101123140,112002122000310],
+        1004010101034400: [110213100122010,101212101023221,110213001300231,112120222020002,102130100222100,110200204432001,102020411123201,103024041421002,102030004010204,100104011041221],
+        1122231242203212: [100220210034042,101210004011003,101230044012202,114000012334010,114302200002200,110010204412200,114412402323000,103021304001000,100014041020302,103023001420101],
+        1120004030200000: [114113104123200,101210210300031,110002021121023,102300040221403,102201100200430,100114021040000,100021020412110,103110000223000,103000210120000,100014001041210],
+        1440001443102401: [101302134233230,100000130010033,114102224000201,100022021041122,100020001042002,100013011020311,102103331400000,100120041020012,100020001041231,102012204000242],
+        1002020201230240: [100000131032010,102300011004200,101010001030220,100012200101131,110032302102400,100140204233112,101042141032030,111020134112040,103403044001110,111012020040441],
+        1104432224020024: [110000001324024,103100314001030,101020111001331,100040301042132,101000001111200,114010040023411,102300404024300,102110001342011,100402120030401,102001010222103],
+        201141101111313: [102110000203003,101010234004042,114002010040032,100400012201120,110311011330111,101204014010434,102020022000021,102000114010020,102102000312101,100220204342200],
+        114440004442103: [100410231010401,100020104312003,103101000124210,101421104043100,114110000002020,100410124304100,120111111221111,100040400100302,112240222024012,101010101140202],
+        1044124201010001: [114311022304002,110421002110220,103020101244010,101300010310004,100123100000010,110301130112204,102111004000012,101031001020222,101020014002021,112111104043211],
+        1044120100040200: [103340041403223,112002110220340,102002220221002,114100234004010,100030410102000,112240334012440,100000221020014,102101010210022,102003224000022,100010031222001],
+        1202110101013440: [100121230031032,112000431120410,100122200012014,102120400212001,103042024040104,102304104110001,100104211044110,114241222321321,114313022302101,114021002302020],
+        310001101000412: [112224111100141,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110021340020022,110210020104031,113130020101411],
+        1111000400112004: [101004201002001,103112010213010,112200410200142,101212000301013,111400002102112,100034100124302,1320102201231021,100000211020034,100000040413022,101000000323000],
+        1021303301042404: [100002201031130,102003104011100,110011024414011,100011104344414,103300204014142,114203022320321,411231400122100,114201130210110,104103100010141,111101222240010],
+        1030212041030224: [110100034204020,114030020020301,110000030020101,110402040103431,101220011020043,101410101102110,101000040321140,114233210000102,114403334142212,112424004044002],
+        1104430130322133: [114413100031332,102101001412002,100210000032130,214000110100040,103031420121210,112114222301010,110133330100020,100001001203011,102210220202130,102200120234012],
+        122133411003003: [110010020020011,103141100120000,101200400303000,112314202020400,112400002013000,112314212000021,100010210000422,114310424030011,102000214004031,101001134014021],
+        302002120320231: [103130021444021,101400004022210,102031021441200,102300031004340,102312301104422,101200020303202,100000411002023,102303200241200,102140202001100,100022200121301],
+        122410120011244: [100010021034321,100031004101422,112013012301132,102001104001214,112100140200020,114214220001140,103144001420031,114024104100321,130040244231421,114311002324012],
+        1100130002121102: [112213000200301,100003224334120,110202120003032,102410434000220,110110440020002,110202022102130,100001304103100,103340300113103,111121014422331,110210102122100],
+        1400204220112410: [100221424320111,100203104322011,100021101021200,103240321400010,102010134012140,101204211020322,111102002240013,100011411040002,101002114000002,114010000020004],
+        1041022020031240: [100031034311401,102000200200301,100104211044110,110200101200402,114241222321321,114013124030022,114104200220022,100034124101023,100022001221001,111010024402022],
+        100140112230042: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114421242204443,100000301221024,101224322120022,110104422010121,114100200002120],
+        102020100011102: [100000241020300,110000100022040,111021030042411,100302420120212,110131011000142,100201134320102,110000302122001,103302031401001,110202012020000,110043414212400],
+        1011020220440242: [102400340230442,102100244130003,101000400320004,103220004020002,110320024422220,110003011010210,110220231211201,111211232220002,114123134000320,101000110323132],
+        133220000001222: [101011321003202,114200204000420,102000031133000,102101401342211,112300210210310,100122300411032,110044121211040,100410130034202,100112004034240,101023244041002],
+        100123004300302: [102101211411000,110010232004000,100102224033421,100400110020244,102021001411110,110041102012100,114222010213042,100022014302423,114011120010030,102310100243242],
+        121211100240203: [114004142244000,102002004012310,110000011220204,111200024102040,101330120302103,102111301402121,100021204341100,102331011001020,103002104011000,101210041020340],
+        101310240040224: [101042410301221,100102024100020,110040344210011,100003320401100,112143144020012,103033044023040,103231224012042,101000001001104,100110121040003,114211410004214],
+        1104010440011401: [110000002100440,111214100000104,100430221011100,110422010000200,103112021442033,110213401202110,100400440012042,110044014410012,110030231214100,111121012243322],
+        210140211040201: [110002004410202,112041002002124,140343100002103,100001424102041,111432124414000,410423004242042,100001222200102,102000004002001,100400422200410,112410122010012],
+        240120313012101: [102400040202040,100102011010403,103121420214211,101022344001121,101314041002010,103222014000001,103000121400401,110000221104000,111210022244041,114000010012010],
+        100032012041130: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,114201104111034,102310140240012,100014204201000,102103321411004],
+        101202230003021: [104132340011314,102203304123030,114012040020310,103132004002242,110000212104130,110200200004002,114131040224332,100123020032031,121002023311103,100021124203441],
+        202204101440400: [100341320422234,110020422002214,110110132041402,111010430000202,101040214002020,101404114023200,111022124400200,112034310220200,113200210100211],
+        1000011102304301: [110100200030100,111300030012334,110012000141104,140300020110000,100003301030120,110132020031210,100101004230030,103044004034040,102300231000210,102412140201410],
+        224003030221012: [100001104314010,114441040000300,114003044024423,102311422001002,110022000421200,101132021101004,103314000101210,100110000031033,101210104011000,111111024101000],
+        1000200020020031: [112312122020210,110332000010101,110022331320122,110000030132210,114002004103231,100001004311313,101403030300132,102321021102143,103123204002120,101010011001214],
+        212000120431123: [110003000042343,100020341001100,102304000241010,110011000043131,114102400001020,110220201301140,102414424041004,100022221044012,110312300010200,103214210103210],
+        1001302000231100: [100414204320344,100002314210021,114220102332012,102310001001001,101011431002033,101322204220222,100010101021044,102040214004110,100012201040023,100420311002420],
+        1102212004214200: [110020001310000,110214024430312,100011014100041,100310201003000,110412121110214,100212341003212,110142300120000,112013212032000,112010220224003,112001040231401],
+        101100134000304: [102314220240000,114210034112304,100014201221340,100400000013012,100044240002100,110122200000100,110313204431110,110211042120021,111210200002411,102302210211000],
+        130033304044002: [103111001422000,111244302220204,100042100102211,102110030200120,100202140000111,101114000332010,112112211102024,114001032300011,100142044103021,101100010012423],
+        111004020241333: [111030212113431,110001030120020,102001111011201,103222004032000,110044320441241,102233034000002,112130004021000,110311110410340,100100200021431,112101202012010],
+        111040010211310: [103024420121003],
+        1002300013001013: [100222004320102,100110004103122,103020200141000,102414034040100,100022304302043,103031300144042,100000111034100,103132114002002,100412200002013,114312004002020],
+        1022020000021003: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,112020012002031],
+        100200010401011: [100040014331413,100213020430224,110130104401101,102040044001211,101001004001001,110004402010202,102130204000301,102200210202001,112402204042100,102111000210000],
+        1122100000040100: [103100030100010,114034220041220,100042000102010,102013000202010,100200001210240,112010022302321,103204101402321,114233034103301,100110204101020,100004321032032],
+        101010000102100: [100000020004101,110130014400011,110011232100412,100220040142222,110232002101410,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300],
+        1123110410210020: [102310000222133,100101220021240,102220011122100,112013032002214,101404441100012,112123102010143,102130201140012,112422320200210,112100211100021,100021300412024],
+        1102110012000103: [102401030231212,114020012211143,100014011034234,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,100000324303120,102433214043112],
+        221220202002000: [103100314001030,111201000013222,100402120030401,103300024014002,114211202324143,101203211010000,101200314040213,101021104212100,102100022002102,103031000121000],
+        102012020210411: [103232014032341,103000001402120,101022000320120,111140130020034,132202044122440,100100104032130,111300224132411,100020314304002,101424324042012,102100004001040],
+        1000120104010320: [110101124221101,101421000301032,102121122000024,102301004113010,101004004003140,112020300223020,114020014100200,110002002104100,102222102020220,101300201001121],
+        1110200001311430: [101200001021021,114100210002204,100202421000201,111011022203204,100040204101003,103102014030320,110104110101023,100410024302300,100302001000220,103210031422000],
+        112410003021011: [111002100000102,114021010040140,114222302321101,102101024002121,110014024202014,110220130100010,100020011030330,102404221402210,110203022032320,101222014230110],
+        124000000130411: [100001004330113,100311304010012,101104300320030,101120101101310,101000100343012,100103404234443,102020010244020,111013104440122,102202130204021,110000142132013],
+        100333140040342: [102120140212001,114400210002021,103103221421013,102010002000402,100240011000013,114233112330324,114213004000003,100044001020100,100000300410101,102034011441041],
+        1021400101210102: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102122412001012,102311120222404,114020404020132],
+        120100010220201: [102142221342202,102001200221011,102420000202033,101012400343401,100020101020404,100002411021201,102110010210330,100012020410400,111111102240001,102122111402420],
+        110000010300212: [110120100120032,114010140023413,102003201410111,103222004000111,102431204040221,101221001021011,100301100420002,100040200001201,112000000210003,100000211231010],
+        1103321010030130: [100023101001004,102001014013004,103210210100210,101043004211000,102120230212201,100014200010022,102120011340024,101004204210100,114031424101013,100002121021340],
+        121221324324222: [103021220104200,100021020104220,102120001343001,114202332330220,112000210211020,100010324210003,103043011400000,114100210002313,100022124101240,102300200210240],
+        114022020222200: [100032041021210,110001041213031,101110044200100,110414300030001,100030020011022,111202012222402,102000221442214,102040041320010,102402104022000,103203401400132],
+        100122314120030: [114201402332241,114211030021301,210412232040000,114030214020000,102230104030012,103011101400213,112000102000100,121120101242321,144201000012040,112030040224030],
+        102034021220430: [103134014000340,104103100010141,111101222240010,100040210411102,100110004102034,102040140220220,114010400014304,114300132321233,110000140032001,102033340222200],
+        221010011014302: [100121230031032,100122200012014,102120400212001,100104211044110,114241222321321,114313022302101,114021002302020,102313204114304,100013200100011,112100102300200],
+        1044102440002010: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,103142111441040,110104002010100],
+        1042010202200013: [102342214020012,100214104301120,102421004041011,103000404000100,100040004331010,101203001022300,102320234112041,112420030202242,110012021200100,100000220000004],
+        101330021401231: [100002100412200,103200000101100,114200002331000,101012220324031,103042004010003,103320424022421,110410412110241,114203134112000,114220034000000,102133020200241],
+        104122144011423: [101023101033021,103020134004314,110242410001011,110131211140311,102202100240010,110000121220010,100400130020302,111220340010010,114000004020044,114200022320103],
+        104021022122200: [102420302023011,101100401113220,101402004040110,114220402322030,100000010402211,104303003022324,100210213323004,110221320110211,100402032000143,100404020040102],
+        1102101004130301: [110310404422210,111030222201023,111001200003214,111230322242002,101220034202221,102200010204000,100031000413030,100130241010201,102010000203220,103024031430001],
+        1100200032242224: [110141201302122,100000411231000,100023001222000,103140021211010,101002124002220,100101004230030,102103012004030,114034000012210,101044004000132,114114004140010],
+        1030200004002214: [110200004243223,100000021030000,101000204001222,100033400410104,114102302311130,100413300430300,110020122000000,103144401421000,102240001100210,102120204022100],
+        1031240121020103: [100042320001030,110024001010110,100100014300230,102043104010014,100001004300242,111120044100110,102200201110443,114240314000100,101002411030000,102002324011002],
+        120103201012310: [114032104100141,101213114040141,102210101002412,111140100011101,103220120212134,112001144002010,111103314101000,100012011022000,114140104122430,102021241324040],
+        1040000003000010: [100002044211310,102320221000230,112102200200001,1300001101120141,242022202122014,100001000100000,103014004000240,101141224002302,103430000133134,111043124112002],
+        120010104011202: [110102042010220,101020124000413,111210000001101,114013400011030,101201104040034,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011],
+        1043043042131340: [101022014222024,102203344011410,100021324100000,102103430210003,100012014300120,110100120400020,102414014022212,100032000101014,101430211012120,100204021000012],
+        1130012201033220: [102400010200011,101002041000124,101413321300222,102122001404300,102012421124224,1211200120132310,103313431403212,110222202033213,114310224030143,111214003022100],
+        1020110402111022: [112004300230022,102300030220022,103201311412000,110202001000101,101022130300021,102202101300230,111200004440204,114000102304201,112010101111102,110243100000014],
+        1430140000003320: [102202204040010,114200402332011,103333040110114,101022200343023,102000000221222,102011014001111,102331201001140,102101001342004,102103001414002,102022011101012],
+        332121301003040: [110403302023130,110001004204310,100010311020030,100020000200000,100141230020203,101031121003021,100200120030203,103111201443022,110101214400030,114104040220130],
+        1120411220011023: [100200101000000,103110431441100,100011004340114,100011200121231,111201102224324,114040020021023,111230114102201,114201102342110,101400300300111,114430204112100],
+        1020124010031010: [102100404000000,101144424002230,100040240023421,110200110001001,100012421031241,110012110022022,100010211220210,101401011014022,112402412301221,110112031341002],
+        140012210440003: [101000410321210,102001041100103,111102324104110,114021004100002,101300201001300,102100221400312,102010101130220,102304331000110,114000100041333,102330324110001],
+        102001000022012: [100010104331200,110010104201022,100012031032234,111132300020000,100022301030201,110302030004323,103040301410224,100040010000023,111000302232021,110220422230001],
+        214200213000024: [104100012102004,110030002000422,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110301311303102,110021232000021],
+        1013100140111003: [110101124221101,103300014023010,101421000301032,102121122000024,102301004113010,101004004003140,114020014100200,102320214110001,114411004143412,114000312331020],
+        1041002013030001: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102],
+        1040340203100012: [100410100030211,114110034120300,102410031403042,102320241001011,102013300200042,101001030303020,112410140202000,111300204123114,114040104103220,100020310101012],
+        1000020244020400: [111300232202103,110122120100022,111100424100021,110111121011004,103001020104102,100242444300104,110002202001202,110200422113400,110022300021012,112000000223310],
+        102100030020410: [103044301431001,102101142002021,102010220220022,102301044020300,103211001412040,101004114210003,100403304320200,102202030203203,102213241100111,110200024432011],
+        1000003400010004: [110023002000211,110031240011133,110010000002013,101140021101302,102401231110301,102010404010110,101002301110132,100001101040302,101400001014101,103232330101002],
+        103100402200010: [101000141031222,102000421131000,102020111324004,100421242201010,110200200001000,114023024101231,101410114043204,102101041341001,112431402022004,110022411320200],
+        1004004001004223: [102111432002020,110211341302302,112012002311040,112011020211403,103200021200400,103040310110122,100323420421134,114121220031320,103210400104101,111011044400101],
+        220122010024032: [112012111114213,102230004030112,100100221012100,1002022012411300,214021333002200,112102000202302,103013200104400,100130401022113,111103304400022,112001421111242],
+        102043123002200: [114000042302220,112100404022020,102141300232324,102301024110000,102020201410111,103002421431302,112033432004122,102341100242122,200030234030020,100310221003110],
+        210020003213120: [110104112010103,111102004100101,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231,114022400020320],
+        1040024313000030: [114134334101203,103004010113000,100431024302303,112004020202021,111201002224213,101110311041004,110101100030120,100413201001140,100211020412021,100100024030402],
+        201120302001024: [101020100322242,114300420002320,102000220240200,100320220142241,102023231442022,100012004201010,100120201022022,110020040002032,111220432220020,114202304110422],
+        121222222024013: [110202000002301,100021401041100,114020000011320,114002204011413,102010111411204,103040020122222,100031001030010,103433144040432,102310201001420,102031200220232],
+        101202201302202: [100040401020114,114202400210000,100302014210100,114011012304232,100043111020130,112001201110014,110213300002210,102402200200000,114103040222002,101020124210122],
+        1040441010340224: [111212022200012,111412020003222,103021020002400,103031041402200,110231202040203,110302242202220,103010441402001,111121004402312,101110231041223,103221000100141],
+        142101230030010: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        323101010222201: [101012400304201,100031044300340,103212014020132,102102030214401,102021420233130,103220300101010,100102104301413,111130410020021,101022000302211,101232020300432],
+        100003431201032: [101444024041143,114121002310100,100001101023021,103020001400040,110200332041001,102020032000000,114004020010203,102023214001142,114002004033124,102222420200211],
+        1012034133040002: [101010020320410,114003202303312,120000042021310,102103404004000,100300414022102,100000204100420,100221040432012,102110244130222,111202012220424,114121102204304],
+        1132311020100101: [100000001220044,102022200220022,102140114001021,100040400100203,102410111110002,100101041040330,102000100210400,114102302311211,114034400040402,102122000212204],
+        200314001211101: [110212214400114,103001001421100,101230011021204,110201110001030,102302000242323,114200022331002,102330104033012,102214401124121,100002001003103,114004200010210],
+        220242102101030: [102101401400100,103032104010203],
+        210330221122011: [100030204300220,101021334000222,114010122330030,100011024201101,111222442222413,110030122102303,103044001412002,102211124032000,110400200000240,110101301000001],
+        100334401132240: [102023104002000,110230010000000,111114010020011,100011014101313,102011114000320,100001204302200,102100101140030,103120334003000,100000004204201,114002104011010],
+        213434010220231: [110024021040134,101230044012202,110301001232000,114000012334010,102001201443121,102101320234011,102400204022024,102002101410204,102321400210323,102111002004022],
+        1030020200302040: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,103222114034232,101110404021211,103110041442122,114210400000112],
+        103022012003010: [111220202240410,110114002004014,100010114200031,102341041000204,110040112132130,101224110303300,110003020001402,100204004121023,110100200402003,114001000010302],
+        1040210203231102: [103122114004113,102242301122200,110030110122402,101344140314114,102100201400122,102110001141443,100011111022300,102001011120002,114032300011302,100234004033234],
+        102204211320000: [100002021042230,102122220214101,114011244103110,110022224202024,114112012310000,100120210410001,114043402214302,100104210400100,110213042222211,110002100132300],
+        320200002321230: [110032211204214,112002132303300,114420232314210,110103101002440,112432104012111,101104100331011,110130240011301,102002410220200,102002101410044,102002104011330],
+        1102023031211402: [110430000400002,111121102240240,100101130423301,114000100020002,100040321020030,100400000010033,100400000013010,100022224212020,112020002002301,102003320200100],
+        1010111201314040: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,100103104302044,102141212000200,102042000222002],
+        1032202230012124: [102000034011002,103204000110000,100001014340021,114203202330210,110214110004122,112032000211000,102300121000111,102331221102213,114212000211101,110021204411214],
+        1010021201242342: [101210121032211,111310114132200,100002311224241,110430030000213,112031204023020,100022211040222,103043001412001,114332202301021,110002030413104,110041302001023],
+        220013411003310: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,102044021101411,101042001021012,101100104002023,103230011412301,100102001000000],
+        1020141212421032: [104404322124241,102032031130301,114030234020304,102200124012000,114002120023020,114421000001111,121400013334402,114413200000230,100103201040210,144000213202010],
+        132221102102000: [101400004022112,102200000200201,103110020210000,100022141030334,103200211410311,102100404021014,102303001102431,111441004421100,102000200223003,112030222004121],
+        1020000001300010: [114200212322001,100401210020002,100010111022102,100220300410430,101024201114010,102412220200003,110012222000144,100201214123301,114302122323101,110431022023040],
+        1130331004102100: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,103140124002022,101042421021120,114013204013220,102000100221400,114241204001213],
+        1141240012302340: [110011414240022,112004202302034,102100104000040,100010044300003,112120224040040,103301410110110,102124031023100,100204104320231,114002104020100,101032001032200],
+        1041403000014002: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,114003134011032,100101234330123,110024000432310,102012101443110,110032220022103],
+        100110011012100: [114110002202241,102102004030020,100002000000003,114000012210041,102002100202041,110301302001430,101023010304010,101131011104040,110000012230024,112010130232300],
+        1001244040010101: [110001041213031,102300324010203,102100142002204,102040011121100,110113004402201,110104002010100,100030024303023,102042204000300,100001134100120,114023214101310],
+        1022021010400001: [101201211002121,113220210222001],
+        1014210214100020: [100404404302042,114010010024103,114020444100202,100004004210020,110202220010410,104100010014103,100404000020300,114241034113010,100014044200222,102110142004430],
+        124332301200240: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        131010000020202: [114221114103012,112120120202201,102010440220124,102122211440420,114133102311014,114400004140002,102303104110000,114444200000122,100244001003311,102200204033100],
+        1120302040122310: [110200100002031,101420310301020,100020330100100,1002443410030003,111103224103001,100011231042030,102100141413100,102110021342213,112002310211210,100010031020102],
+        1011443132101100: [101230002122040,111124004101012,101210241204043,104102040011120,114103220220104,102120004001310,102430121110340,102020121102120,112141104020201,101200111020111],
+        1010200033100003: [110220122044010,110042304412204,114020124021122,100002201003312,110110111010042,102230121120000,103300001402013,100400010013330,102204011110020,112111400203031],
+        302000003030010: [112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,110030222130000,101022440300020,101402010301000,103140120112001,110204434434200],
+        1122104440001011: [103030420104431,101421001011423,100444010421002,101040214213002,114033010011401,102222320200001,102304014110202,112002040214231,111100300024000,114203000003434],
+        244342100044030: [114001204020002,102010221411024,114230000001013,112012040220020,100010201030300,112420104040020,100233014224240,100403430013124,102030001131120,101002100322211],
+        1023201001004030: [114031022302044,102031011441221,114103020221100,102012030213014,102003320200411,102002024000132,112440114040203,101044001032114,100401001011010,110031200023240],
+        1100202300000313: [100030130410021,100000020012240,100040034301300,101010244213120,100010001014210,102103210214042,100200100401300,101133024000013,110401030000402,100011404310200],
+        1022200020001200: [100010400022200,102420221112201,101224044041002,100010344310042,102103214000210,100402012200112],
+        232002320003011: [102022004012201,114201104111034,111130210020000,101022121001000,100000024210130,102034221103124,102300104110002,100024000101404,100020134212021,112001120220130],
+        1130103021400102: [100000100100200,102010020203010,102200010200000,102001241410312,112102100423402,111131232212120,114444012310100,103140100210101,102323001001000,100020200120032],
+        103200103012132: [111133110023322,100400024103122,102000021101201,102141300232324,101024401112120,101001440303020,102000124010400,103002224002043,110140141201202,112012030233024],
+        1440130113021200: [110121100004131,102000301101102,111400214442024,111122200021102,114032234033303,101041100300001,100000020201032,110102022000200,102200034040443,102323004020100],
+        1120320131223141: [101004120224442,100413311002132,100320421001431,101233021020010,110210301200101,111131102210013,110400241240242,101001024210000,102210101121104,102000324010303],
+        1400300000440232: [100030010011002,101021301022041,1043303323011400,100402300013130,400040001020004,114200022340011,101201220402420,1001120000022000],
+        1023020041401422: [101020414010211,101142004000232,101410021100102,100110004101000,100040020201004,102000034000000,112400200201000,102221204020110,100103121021000,112100020204342],
+        220040241220103: [100002121043000,102400234020130,101202001022000,100133204300040,102000124002111,110400410030000,102320100242001,102200031002000,100101021012040,114021112304224],
+        1101104002110311: [110200411140130,110114120120100,103124210100201,111014200024034,102301002004242,112020014000340,110021404214210,101003014210212,100130220400031,100210024300001],
+        1004422144020030: [100023324302420,100104341010424,111121004103434,103111201422013,112203001103411,100212024121000,100001001033200,102441030231300,114121024121404,102304110220101],
+        110320230001124: [100324400111300,110320024422004,110002022103210,103202210101000,110022004204211,100010200012114,100002030001021,100204244330221,100022024100220,104032200010101],
+        1222121220311102: [100121230031032,112000431120410,100122200012014,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,100013200100011,114104200220022],
+        112110002131310: [100310120141002,100004001021111,100301421002002,103022021431010,103200020111014,100010004313001,100003000104203,103104200210410,100002200410030,100121031014040],
+        1420040230200021: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        111402100102040: [114042032210200,100011120101004,100000120412021,100030101041442,114242304004011,102302200241241,101202111022400,110201040003402,112211022031124,100004201233320],
+        1400202004010010: [110201122032010,110422210003030,102112231410401,102430301112032,120123111200230,114002102211121,102300104033220,102322214020000,100222000432020,111012124400030],
+        1011220020200204: [100002201031130,102003104011100,110011024414011,103300204014142,114203022320321,112234142031230,411231400122100,114201130210110,111101222240010,110430400101001],
+        103324014001014: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,102042000222002,102001011100100,114402104142102],
+        1140200210334002: [100010441032031,114402414111240,101231211020143,100022021024200,102040444014121,100024100201424,101012011001200,100003014211000,102400204024124,103241134020044],
+        102020002304410: [101121211101004,101114101012020,101001304001101,103000110142041,102002112041034,102041111020030,110022001201023,103101124003110,112401144042000,110002001231100],
+        200342310201020: [100000211041234,101130000023030,100200400000010,101221200010202,102100014031110,101010101034002,100040001022001,110004342121110,100100340412100,110030104412010],
+        322042110301230: [101301014221122,114110200212210,100102224033421,110012130410040,100104101200201,112201010203210,102021001411110,114222010213042,110041102012100,100120430411222],
+        104204022104122: [112303041103203,102100111341030,102020231440400,102144200210031,102121104130242,114104220000003,100112011040312,101013200321014,111000220020441,102211304043141],
+        100300143300020: [102111220202433,100100431001421,103030001240001],
+        1040311120340120: [101000404014420,100020204211040,103010144014002,102020301413010,101112020330001,100021211030200,102220201302400,100023221020004,101012130300004,103001010101420],
+        1004204203001024: [110102401201204,102200130202201,102414034040100,100212030414010,100412200002013,102020041321410,102301324112020,111340300010010,100120421044222,102110042001220],
+        1110021032011401: [110200411140130,110103014401023,110130102010010,102301002004242,110001010030000,110102202013213,110021404214210,101003014210212,102024000201400,100130220400031],
+        101101134034100: [110413340401411,100201104211021,100020104100331,100432034100300,100400040020030,114021140030212,110420241240103,100030200001122,100004341223313,101200101022022],
+        132312120020420: [112113214020100,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004],
+        1000233213201010: [101022000320420,104101000012210,111010200042110,102202030232200,101322130310304,102200110234042,102102330211000,110002001312200,100020014211012,114123000000123],
+        1004002300202031: [110002022002032,110000242002021,110042130002002,110211114244021,101010000324423,102421340201120,112000020240422,100002204300121,110402332010103,111111110022110],
+        1023001031200010: [110000212101040,110301011234204,114211102321011,102110221412210,103330421400224,102000200201422,102412004022002,100032204200023,100023211030203,102104301004310],
+        1042101141021002: [100001401221100,101204241200204,104100212101311,110404013244040,110000001210300,101203134230142,110142101000021,110141004132001,204144002130204,100001131021011],
+        1001200003422220: [100040020100400,110104010020022,110000300030110,110030010040441,112100300200332,101220030300042,112200211103401,103210310104102,100110204030443,101030004010100],
+        300120022222042: [100114004100001,112102201102030,103222244003021,112440114040203,100401001011010,103001204002010,100340114211043,100033001220020,101100120334014,114233002340141],
+        1010031331102220: [100003020421130,101120104004011,100333004310032,100402010020402,110120100120410,114220022321121,111202220001312,114024120021041,112004002002243,111010414402003],
+        110301213122224: [100121014300312,111144004103013,112012030221400,112202022022311,111000002221010,103020031400120,102000114010112,100110024300032,100012431020010,110220442220001],
+        100100220042201: [100020004313034,101400120320033,110430030000041,102140411342420,103243024040441,110021014412440,102020004000301,114114204001401,101042214000121,102000121102220],
+        1103000100120411: [111112002210022,102024021130010,103211010211331,103200224020100,112012010230002],
+        1140011020023200: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1102424111012101: [100210201001001,101000224223002,111120402212201,100101021021114,112240000413000,101040201112304,100100301021212,111011024411424,102130000312131,100000101223200],
+        1010310132014010: [103102101422031,102100221340112,114002244103320,100000001020034,102101001412044,100012001020221,102001120222010,101000031144204,110221002033200,112103014021210],
+        131033014100032: [104111102100000,110000102100212,110130042014110,102110410204321,114423100002212,100011401040040,111121012212042,110022134200011,112320030202004,110012102130100],
+        1003003202420203: [103111420110210,102022400203211,101214240300041,112430210020301,101002110310112,114202044001301,102021001414200,110000014413004,100404400020001,102100124000134],
+        121212202001201: [100020004313034,101400120320033,110430030000041,102140411342420,103243024040441,110021014412440,102020004000301,114114204001401,101042214000121,100014300000200],
+        1102042200320021: [100200214321010,102303024110011,100010040412121,100001040112010,100030101033421,110002222104304,100013140102040,112003112302111,100000340413320,101011021020240],
+        120111412313022: [102213210210004,101220121101403,112210141104023,234010311030401,100003030202011,110103420020232,100010041001440,102302421103304,103220010130113,101210020303000],
+        1022413444114134: [102100221340112,100003414100400,100114104101001,114002244103320,101023221000031,102012034000402,102100122002001,101000011021414,102102201121020,101000214211011],
+        204230100241112: [114202120000302,101000314012210,103204020100331,110414222010040,110000344201200,101044230300020,102100000201214,110220224213000,101032400342331,114014220021140],
+        111140041000211: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        120041221022240: [101021134011012,104120130021200,112421004012141,102011104010201,111100220022101,100021104201130,110030410040101,101300401002320,101110434020010,114330002300133],
+        1022031000130304: [104100421240110,110024042103114,110213012044343,111113004102021,100012130010240,101001101031102,100014014203023,100230114221102,110041221200014,102202121300311],
+        1400210001031204: [100000000004323,100120001204102],
+        122002222004211: [112224111100141,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110021340020022,110210020104031,113130020101411],
+        1014120100001402: [102120031140142,101021204010011,100404410022320,103012101410102,102131304003000,100002204100101,102220220201011,100222044100141,101400000300101,102000110222120],
+        1040010100200410: [100403200030000,102330130243430,112021400230000,111344004132104,101200044013000,110201010013331,110104120000112,110322102100121,102110031144222,111100024421114],
+        230000002002020: [103114010100442,110400222110100,102120244001000,100002411024300,100112101040103,110304220401302,114120444000124,100110304233020,100104004030002,100101000402002],
+        312000302021421: [110110402011142,110210014220001,100010010121321,102140011440001,110401112220304,101011220342010,110200004221020,112241202024021,101000001110010,102000300200231],
+        202213100022144: [111101010010203,110110212010011,103120101441202,101002121003112,100004104210221,400014404414011,100000010101402,102010414013103,101201021022111,114100030221300],
+        210000431200200: [110114001202122,100001010100220,114002114012041,100414031001210,102000004012011,114023102303000,110101100012002,110001002004240,100030220002102,111010024401332],
+        102302210111114: [110012244202012,114220124140201,102032011134420,111410022220201,100240220112202,100001020001222,102210201010102,114104422324400],
+        1102440343040140: [102402024000034,103012024004312,102214020242110,101140320330114,101010010300020,112120020230024,100000204100304],
+        101020100040202: [111001440020003,102001000212142,110200020010003,114121000002140,100002214100100,102120104003011,110123042010000,102120402000014,100041000100422,114020002303212],
+        103211040042400: [100041000411231,102140040210040,114204120210000,114110030002020,102010031444104,102410010201202,102202244040132,103303001400240,102442004024220,101224231020422],
+        1122100041103333: [100400210010032,102011211321000,110010144200414,100142244232110,100210014343102,114002242203043,111122412110000,103201431202043,102423111110121,103400014003022],
+        1412100222102320: [100003004302243,101221214042201,100210031002311,110001000134002,101203000300012,101002424000211,114102002341430,110420222224222,100214214101020,100000004311204],
+        131012331014331: [103101200221334,102003040210002,110041001300210,100100304301220,103200004030010,100400414300130,110332030011233,114000210010231,100021101220000,100011104103200],
+        110311413430130: [100122004300410,112400202020003,102000224000011,101212040303123,100021021000101,102030200240232,100011124202310,100030300124130,100001100013110,112233332034000],
+        1141404232302001: [103310101401010,401300041114001,112003000230001,114000044101422,110003002010301,100003014101004,102001421410020,102001134000000,102004414001114,100420021000320],
+        1010242010112220: [114034030020130,100000301031020,100221000031141,102422310203100,111120020014001,104130142103020,114224200210241,101010244002013,102343001000312,103400021212203],
+        100030302212140: [110020301220324,100041000010302,102020100243032,100031001020040,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321,112003110242131],
+        110204242100032: [101204004040140,114000224121024,110344021203140,102200310230230,103001134002100,112020002001230,100022020402123,110441340002101,112000030210004,1304211130012304],
+        1140000210203143: [112132434020310,100000144104100,100013030100002,103340114022112,101014014000004,101033141030001,102111210230204,102200421003014,103214430100103,114000212300210],
+        224400342004020: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110012101102100,102102304001200,100010040001210,102002020220000],
+        132000014424004: [101021120323020,114111200034310,102001111412134,100001021030011,103230040101112,100010041032043,102110234020204,100004131024040,102441311400421,114020214033220],
+        1010001003034302: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,102100014132110,100021304103002,114001012302043],
+        102042304000030: [110021000410432,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000,100010044101002],
+        100304100012010: [100023341032000,110121001321020,111112402101001,131120400002024,101001024040001,111203444130002,101202110304201,103103243020231,130211430311301,100422021411001],
+        310021030012401: [110000024201210,100044004100240,114403000001001,102020121321033,100000421021000,110010120042000,100024330000002,110102022041040,102101100232020,101002000310100],
+        1100102002200001: [101400401012014,100403402200101,100213001002313,101001000200001,103140404001201,110024021232043,100402000020330,110421010000410,112210000412200,101024104000402],
+        241242413100310: [101020000323002,112112014020004,100221020410001,114314004030042,100111001020220,110321132002134,100411000433012,100210024221001,110001101011030,111301030010001],
+        1200202101100010: [110113004402201,100030414300112,102104020202131,101300401004400,111101222244101,114112324000301,110220022100020,111430412213000,112023202310000,113404132421101],
+        1100431000211240: [110210000000201,110040421041000],
+        103301003032000: [102301324112020,102100001400000,114404020002102,112102002010300,114013222204012,100011401030000,114212034001403,100000000012342,100044004301023,114012114030220],
+        1011344402021011: [102230040200031,102442211414022,110122001010214,111010214402000,102101204000010,111231012220013,110022300420031,102000324040402,100100401040001,114230230000123],
+        1433202202104010: [100002024201011,102004410220430,103220120212134,114200014001032,103013411431022,100344101004202,103044004012014,101040004222021,102400004020303,100001214210212],
+        1030223414223014: [102200130202201,100001300012442,102414034040100,100412200002013,102133001404002,102301324112020,102400101111034,114102104124000,100120421044222,102240344041020],
+        1022100200001100: [114130012310000,100210201001001,101100001101401,100243120430140,112214431102032,100210010430242,101411001011011,102211241120212,102130000312131,110120032013303],
+        132000130034242: [102100200234203,110203204241122,110001214200042,112002242001000,100021111211003,112010204003014,102032220221210,101032240320040,112001302302020,100000004310202],
+        1140124010014040: [101003114002014,100202121002020,112220000422230,112020031122001,110220020001020,100113414201210,112000000210212,101021200320340,100044100002002,110041001302020],
+        130021204021211: [131402001003121,114420000001024,100304111000014,103300031403210,100022131043110,102010021413001,102040300202332,110010001011032,102100100230142,110030140000021],
+        103004204041100: [114201102320021,100001004104043,102104241412020,112014402034232,100110100410210,102000000211031,114333212323001,100002214201101,111303034134331,101402041101020],
+        101003100020334: [102010221411024,112012040220020,102430401401200,100201211003004,102030001131120,102221414000020,100011214104320,110004204420320,101230031023440,100023024342204],
+        1140300100120200: [100113214302002,110000002133140,101233341022410,103021000144000,100040204240000,114100012313002,110023002200241,114440440000034,101004202403121,100304320140012],
+        243122200030101: [102232120200100,112000142000331,112100302012200,100022341030311,102010100223003,102101001341304,111004314403022,100402100022022,100040210100004,112042002002400],
+        1420240002010223: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        300002111204404: [114423002313120,103100010101002,102300041004010,100241020000000,101403004040100,103000140101310,102310204023400,103111240223100,113104030104020,114401010001000],
+        1042020101004004: [110000112003030,114243240004343,110300024422133],
+        210000320003221: [114130012310000,102112432004423,102402124022000,100243120430140,112214431102032,102032204000102,100400120013011,103011001244001,110120032013303,102101230310000],
+        1440002200022022: [101022014222024,102203344011410,102103430210003,100012014300120,102414014022212,101004411032102,100032000101014,103030104000102,111311002224001,100032134101100],
+        102014201101304: [102133011413110,114022424102243,101223020300040,103111420110210,102034324000220,102022400203211,101230020303000,111340130010314,101214240300041,110214220002020],
+        1423223123210030: [110043132100300,1321200010022312,140403400240000,103002124003020,433402331200202,102222034401200,110030221221100,1330044041003024,111200100002230,402102020002420],
+        100000004112013: [100100004100200,103120140210020,101432201010330,102143211343014,100112000410320,110124044400220,103002110114402,102012242000404,102100214000001,110233124211010],
+        120142001110232: [114100204101002,101101230010000,114100020033022,101012034000001,102002100000102,103112021441120,110401101144000,103124201212022,100002001020202,100422100432000],
+        111010000202013: [111200140000402,114303202300104,100210304340400,112020044000400,111201314412204,102000200204141,103220100102140,103041130110112,110023014202232,102220021304234],
+        102142201040320: [101200100304010,100102000022402,100000001033001,101202404042303,100121231021002,101010200321022,112402002010210,102200231120202,101021220300001,101431311011102],
+        102040200210010: [101013004002011,101300011002044,101011324004222,114000322300011,100002314302420,143310043400402,114411312312124,101010404213432,102110411342400,100022014100321],
+        122024000000014: [110224314430000,102203301123001,103100134001001,100000001030003,103210400110122,114030314123101,101112020300011,100400201010000,111220020010043,114020142302420],
+        1042200020200001: [110200400000020,100324140141402,103204301402123,103102224034002,111100100004430,110001001200323,110102111204210,103013100120001,102000000222203,101001301032024],
+        100402243210110: [101220011200202,102211124010012,100411221010100,101420300301140,110102202210222,100200200003210,114213204002010,111311022202104,100414014102130,103030104000000],
+        130000300220100: [100422211004214,102100000210002,102121010210004,114013214010111,100010004210020,112002100240200,100001404100110,101213110310042,101424044043122,112022221120403],
+        322210210314001: [100121230031032,112000431120410,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,102313204114304,114013124030022,100013200100011],
+        1100220132200013: [144131233204044,120130001004000,110400010031401,102220211120002,114112002313010,114014010033321,101400104042212,103441112000230,132042400010214,112030200211020],
+        224121020102300: [110130314400100,100104010021241,114023142202040,114002014033200,100004301021110,101010124001000,100210224243223,102330020242041,114021300010020,114020214022000],
+        122224100040420: [103001111221030,110042400130000,111200020004203,104101201240100,102301112004021,110000011012202,100201230412211,101301000314000,111010002110212,111121022221002],
+        1123222000212401: [111200200000232,100101001011114,101430004040203,103122104002013,101020404210020,100000024301031,102220024122101,112022140234004,100143440001301,114102104121201],
+        1010000022123200: [111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,101020031030240,111204000003031,100012004110024,102142000210040,103243411400000],
+        1100003101030412: [102102430310202,102002301410122,101001414212120,102142020212310,103304004023413,100022201043312,111300032204432,102002410201020,114142200030000,100030001042331],
+        221012000100001: [114030230020144,110000120020000,100100134234041,100340100422001,110010002103101,103042041243304,101410200110200,110104011001220,110120010011024,101013021021140],
+        314343000100322: [110020000030400,103210220100310,102220000202044,100001104102110,103101030213102,111311304133413,100000004212021,102441030200210,111110200020323,112400332010200],
+        122020214140410: [110033000022043,104412212102010,101230004040022,101021020324310,103140021211010,100020140121034,102340211000200,110414012023214,114021000044211,114000200010000],
+        1110240400400121: [112002140242302,100022140001044,100010204103214,110013100422233,101214301020044,101213412120001,101001311004102,102202111100020,100100041020000,112412202010110],
+        120100310012122: [100021311233000,110020200420132,103111104030033,102300024110101,111010204111010,111200302222011,112021221130424,100113144300434,100010010004402,102021310220414],
+        100013303040013: [103100021440001,100120100032121,110000201324002,101200400331110,102200302000412,111201022200100,102100100210100,100002244341113,101000141033304,112400230200400],
+        140000210113020: [101011000322203,101012130310043,114102344121242,102011001411100,100001410411142,114003300023020,114421102322111,103224324020100,101423004042333,102104020232002],
+        103100220140000: [100000241020300,110002012000400,110020422131120,110043414212400,100402000010424,100002004301002,102000124000220,102113002001101,102140011343001,100030020010422],
+        1002031233000321: [101222101202341,100020220410142,110000412003001,120202201010210,112042024000020,110003000024101,100010024302100,100000011020412,102022400210202,102003034011323],
+        1001310141442432: [111210044131101,100021100013401,114032002303014,101242421020211,110310042021341,100204011000000,100000001224221,112301111130031,103123200101000,101002401002132],
+        1020222312400100: [102210100313100,101200210302201,100004420014012,102240210240022,101040401032021,100102001040033,101242004043300,100002324211100,112100204041010,102024124011010],
+        1000013340001010: [110000101304203,110040020001022,101104020300301,110010022003021,100401241014100,102101004000011,101401001010021,110033002000020,101200200300020,102010214004210],
+        102401001142343: [110000000441321,100120004300000,101211011010400,100022411221040,110212300122200,100121004301043,102010021101132,111220204102302,100222401210112,111101210030022],
+        140004212101020: [111020120021001,102422221110121,110120010013100,110410004221142,114003044024423,100432201000300,114022200011010,100011104302132,102103010200201,102040031124231],
+        212430302310110: [104100002101431,110221000111302,110022140120012,111330020002213,102011440201423,100002204310140,110110210011002,100020320002000,110101210402402,111130042240210],
+        103020323300000: [104244002023000,120133001040211,111320124130040,114012412200022,110000110000231,100142041012023,110000000411120,110302100010342,101301030313022,111440222100012],
+        1023113301404241: [110002420020000,100020010010020,110003001101020,112011340213224,101300011002200,110311020011020,110002100043200,100204130001213,114441400031030,112213100413130],
+        133011400041002: [100420021010013,112101302302202,102212011120200,102344111104233,100432104320110,114021014020000,102121321340000,114200214002024,100111221011100,100023104101340],
+        1431220014210200: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        113020202032132: [100422040021304,102000024011300,100002010413410,101011210300000,101002221140440,102040021424212,112400020200104,110324444424432,100100001010020,101000000322000],
+        121021030422100: [103111001422000,111244302220204,100042100102211,102110030200120,101114000332010,112112211102024,114001032300011,100142044103021,114004014011110,101100010012423],
+        1410010043031010: [103123041444340,114002322301113,101431311011102,102211201110013,102142002001031,114220110000102,1320030020310312,101210004012132,102223240200000,100102044302112],
+        103221220012000: [100203321001221,112000210242204,100100224031000,103111001212300,102310400244210,110010112102022,112111040230130,100004101023023,102022304023433,103010041241404],
+        1030010032040310: [111214100000104,102103034004032,100430221011100,110422010000200,103112021442033,110044014410012,110030231214100,111121012243322,110100144404220,102420024020120],
+        130210202000000: [100020004313034,101400120320033,110430030000041,102140411342420,102020004000301,114114204001401,101042214000121,102000121102220,100014300000200,101031101024100],
+        1001100022400112: [110001202003004,102114101444001,100022121031020,100103240011013,100020210101002,100042420003120,102300220220432,101020120322020,103130004003141,100043240102000],
+        1041104220001241: [100001201220014,111001200041102,100210000032400,110200422121211,101213311020021,110040411222022,100041120200010,102303001003004,114010312213204,102140004002412],
+        100202423330142: [102414440232000,104130210010324,102201204040211,110024102010002,103010034004303,101324030311010,101402001013023,111433000002144,101434300302410,101010231002430],
+        1012022120223104: [100131424302300,102104004021010,112033000244420,104132001240113,111221000010010,114302044003120,112211222041401,102000100240000,100202234032222,114400220000013],
+        101000002200242: [110421202022110,111142002114321,102101020220020,102030030202212,111420022210032,100023020100300,110013140400124,110103334401021,102201121001214,101000000341320],
+        121041001123102: [103102101422031,102130124130100,103214021400010,110100022010014,111110420014032,103144220102102,100000001020034,114440020003320,102101001412044,100012001020221],
+        122424002020134: [114400034111031,234010311030401,110002201200100,103120044002023,101121420321412,102210004034010,101010111030103,100430020420000,100422210013104,101210020303000],
+        1201010010230040: [110010000111020,100430014323000,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101],
+        131411004102021: [104100421240110,102001000212142,110024042103114,100024121030022,100012130010240,101001101031102,110020422130021,100014014203023,100230114221102,102040211440200],
+        1000241110002220: [100020244100302,100002200412020,101320310311403,102024011413201,102331201001140,102103001414002,103222024031400,114001042203020,101002004010200,101102301100010],
+        120410041211143: [111004122201200,101100104021220,110132200012004,110030441210222,100220134100412,1301000101110210,400142440224000,103022040121103,1441130121130001,113411000100230],
+        1100122034120010: [100022001022231,102314032000332,102300001100200,110420020000202,102023024010033,100001144201220,114240010000411,111212204101240,103210031410020,114430000004001],
+        242123101000102: [102000201100400,112123000200343,110034120023130,112121040200102,100134044003303,103002004002222,100121100111000,101001401032000,102000110220314,100143111222020],
+        1030401420201234: [114020000030002,100201211003004,102014002000401,103103241421322,102030001131120,102221414000020,114121012340044,102000400240203,102104304023201,103310300140324],
+        210010010404032: [101420104040010,101201201022032,111301210041010,114340002303220,100021204100214,103144224004012,111344320041124,101120011040200,110042004410444,102043040200002],
+        100132312020010: [110042220002210,101112404231342,110011401011100,102221200204022,103021030102410,110430314220010,102423100202400,100004014300341,114100212211004,100020011230424],
+        210200023300222: [100214121000000,100042034200032,102011041100210,100200021000412,101400240300010,110330000400112,110103041012020,102412241111002,100424104302020,101013234000010],
+        110012141123341: [110320442100100,100030000104003,114020012204013,101020224003300,114422000000001,100411410002011,100044204210304,101200220300302,111201310013231,102100101320311],
+        1011002011031422: [110000204210130,110222020012300,100100100422103,103101001422002,100021140000322,110010011212411,110102322040111,102002104011244,103230010114302,114010304010030],
+        203002012302021: [100021414104212,100030001033120,111021004400020,100242000000002,110011114214043,102420314024020,114111202200420,110121002010041,100000101030212,100203041200002],
+        1204213141330013: [100100021040144,114101404004011,100102404100430,114142044000010,111230032242001,102300200221021,114322222322000,100104020022212,114024104032203,102023110212012],
+        102021222031240: [100020031000013,100024004310330,111100012111200,110410324244300,101001001000302,111034020021310,100110040411303,102101030311301,114121012211212,100223401013100],
+        1001230102424402: [101004201002001,103112010213010,102121001410120,112200410200142,101212000301013,111400002102112,100034100124302,111112214101000,1320102201231021,100000040413022],
+        320300002010000: [111101034100200,114003410040220,114021004101032,102001140221330,110332124420001,114221122320002,102010244010004,100000204310000,114104200000400,100011000410042],
+        1010421111021020: [101230114202200,100400000020230,100002200103104,114300124030100,100431000032001,100202031002101,102021024004322,100121114230123,102102334000400,114323400212122],
+        1010002000010022: [100000100100200,102010020203010,102033021130021,102200010200000,102001241410312,100000121042240,114444012310100,102330021000131,112041031114021,110400240002411],
+        114210100203001: [103000104004220,110243010010124,101010340331320,111000024410303,101100424003101,100201401010000,100241131003241,111002212200000,100220310411013,140101212000204],
+        1014111400001131: [103134014000340,104103100010141,111101222240010,100040210411102,100110004102034,102040140220220,114010400014304,114300132321233,110000140032001,102033340222200],
+        101200430240230: [102421011111120,102100004004440,103423101410042,100012044303001,110113222010020,100220211001224,100042444310422,112220114010021],
+        1004000044030131: [102300221004024,102031101124431,100003314102102,112224001100103,103100014000022,101144404004021,110020400130000,100411004100111,111010004110221,113114001024000],
+        121021322032443: [114011114123044,103042141430211,114403210004014,101033214211000,114142044000010,102101404000000,114322222322000,102003104000032,103211301411024,101122124202002],
+        1041103000010020: [110140300430002,100021300412300,100002430012110,100000211021200,111122000031124,103013000110110,102420244023112,114322402322100,114400244140102,100132300400011],
+        213110000024004: [102003104011100,100011104344414,103300204014142,114203022320321,103134014000340,114201130210110,104103100010141,111101222240010,103110001420420,110014010003041],
+        1020220102030020: [100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,103202014031021,110212424242341,100101014300100],
+        1011201011001041: [110121200003300,111040104401311,110102031222030,104101041240101,102400304041032,103121004000420,100040311024300,114110020212130,102002102043132,110041300410101],
+        1000123000003000: [111012034402110,114221004034110,102140014002141,111100104104202,102302000220440,102002204000124,100011230120014,101104024002242,114220144000001,100400010013033],
+        113000000242010: [110000112003030,114243240004343,110300024422133],
+        1143241300010200: [101202001024340,101041310301004,110021122100000,103312010113222,110130022140122,101003101000000,102232110201100,111203040002344,110000000143124,110100042013221],
+        141023021411330: [110130102010010,110100030123401,102301002004242,110001010030000,104100302102030,103200030110000,110102202013213,110021404214210,101003014210212,110000242104040],
+        101004000200213: [110033000022043,110100200030100,100000411231000,100023001222000,103140021211010,101002124002220,100101004230030,103044004034040,102103012004030,102300231000210],
+        1000402020041412: [102322014113341,101022104001221,100040201012040,110021422000000,112021004003303,101120030330110,114100222310230,100011120000004,114131002342130,110002022003101],
+        320000000232100: [110212214400114,110201110001030,112300020201040,111200400003200,102330104033012,102214401124121,100002001003103,114004200010210,110200010000103,100001214300200],
+        224230410221210: [114000120041100,110100002012444,110313012100114,100210304340301,114000222300110,100022201021001,114001212303000,110012200403213,100103244100022,114422104110002],
+        213202220224013: [100010101043200,100030100004000,101001221022240,100401320020240,110201222120421,101000011020103,114121202312210,102212040312301,110010402103240,100020120112303],
+        113012032020401: [101041301000320,100210104322421,110100001200142,103242311400421,100020001224324,100022340021012,102002001133122,110010204412200,110240010100402,102100220230201],
+        104040021000211: [111122100010330,102302231004020,102110031342012,103001000141212,101202104010412,114234414102011,103211324003020,114014442200003,100103121044231,100101201041310],
+        1101010001230030: [110402402020010,112421302011301,101023431001040,110001210120320,110300404422030,111024100022301,110200310012010,110102110124010,100000404341421,110000022100112],
+        121144003201141: [114211010000210,110200020110120,100003040101420,101440004020212,102234400200230,110100201000100,100000004210012,110202102231202,102112000204313,111111024404430],
+        1422130340314011: [100201030430140,100004024100043,100241214220112,112021142000002,101000104000400,100021000410443,100200144102020,111001422230001,110103002040131,114001110013231],
+        101031043002220: [100000000102140,102200011002302,100402400013000,112102302301410,110001030430030,100220104020000,100341024211220,100400100020200,114104014001020,101042000300011],
+        142104012100202: [110210400114203,100001100104021,101101300010301,101122200300011,112210201100012,102120200221403,112001122302311,101001211004233,102303011002000,102314100240010],
+        1100100110012110: [102342214020012,100214104301120,104130011240303,114300014030310,100040004331010,102320234112041,112420030202242,101001424004240,110012021200100,110000200000133],
+        140232403042002: [102111000202241,103232220103211,102022004010004,100202204222000,101201114044200,110422420000022,101412010300001,110312121300022,110040304210001,110033111221230],
+        102014030304000: [112413224040101,100220100110400,100001121023210,101200031020230,102010110232121,101024001034211,114001012300002,102121100232012,114102330210021,102140320310003],
+        120202411002010: [110321031234422,102342120222031,103021004014220,110302100111410,100410434302212,102023001440404,101023014004000,100020010101201,110412042010210,102312344020020],
+        110221102021410: [100001101024000,112021240233200,102012020200430,101024000322412,112320330411100,112202332033141,110231222101120,110002002104010,102330021100410,101230111021024],
+        101001021013411: [102010221411024,114020000030002,102430401401200,100201211003004,102014002000401,103103241421322,102030001131120,102221414000020,114121012340044,102000400240203],
+        102012401042334: [104441021202022],
+        102341202023000: [100200011001220,111202014132111,100003141022321,110201434240143,111030044110010,110041304201404,112101414041022,100040211022000,114000134102201,111103412240000],
+        1000002421022310: [110220100000102,102100321320100,114042102330002,102102011414242,100041004100221,102310030240210,100000000412112,110000010033022,102330040242220,102310400240000],
+        1402124300113003: [100430021001320,204020131034103,114113404003030,103214301421201,1000001214032041,102100204001030,100102240020100,114000332302320,102210000240404,100040004304002],
+        1001424300100241: [112014422001023,112410310201130,101010200344040,102120044004401,114100220033300,103021020110143,102010400200202,103000004002040,114130114003242,103220104020120],
+        1010012021012304: [100040240004024,100010000002400,112000013244041,114020100001120,120020211120020,101002041000124,102100000231232,102030034011211,102031111324402,114201404114100],
+        100121010001240: [114033300040100,100313030142202,101221020300020,102013401100100,102043030202102,102300014110023,114230024111000,101021110322104,114420302320210,102112411341000],
+        104111011231030: [102240221000001,112041002002124,114000024101102,100020124204330,112202412030001,100010000101004,111432124414000,112410140230303,100040024103120,114210142321120],
+        1000013001100401: [102101021412120,110024020421011,100042014310200,100003014314102,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012],
+        144110111101000: [100002031120341,113020001020004,100003044210040,103243401401133,110012212132410,101210014200430,110014011320012,110400022122040,101111010020120,100223400002001],
+        111101300123204: [111342430040130,114014120011010,110000202132000,100202041213213,112000230220010,100103021003000,110312102103200,112030402000043,101001020312121,100043001220111],
+        103421110041022: [100010101020412,102203101113311,102100200221304,100001120400212,100122101040003,102100001341200,101421011104010,100010020410014,101001004003201,100040141042400],
+        110021203010201: [100140010100100,100022111042144,101221201020204,101000314002223,112020240233004,102300420220003,112200004010122,101320400340000,110220102020014,100210011000412],
+        122020112221010: [110130201302200,103041021430301,114000402211404,101000100302003,110343042000030,111302204120210,100203211002212,114140022340203,112032222300033,111300302202002],
+        1020004441140020: [114001000020102,101020040300010,100213001000212,100002004212420,102121014002022,100141404233000,114131002342130,101020001030204,100403122201202,102303304020122],
+        1101000000000402: [100044041022000,103003311430003,110402020001421,110010412101002,101410104020340,100131300422201,100014030414202,100401200033020,114002204023003,100100234234040],
+        1444230033311212: [110201320000011,110001100140240,102230114040102,100244204311004,112001002030133,100240203220201,110200114241402,112020201122220,114000020043211,102000331322102],
+        1102210000002002: [110011414240022,112004202302034,102122214131011,102100104000040,100023031000024,100010044300003,112120224040040,103301410110110,102124031023100,100204104320231],
+        1110224000020422: [111302020010000,110204400000120,101300221003002,100000121020303,110200220010220,110020004203240,100020010420242,110001040133002,100100204232000,110031020114222],
+        221402110224012: [112003002001002,100122204301140,102120100230203,100023004100032,103332430114042,100020014100010,103313021401232,102021224002101,114110200221240,111201004100241],
+        1042140031004402: [103001111221030,110042400130000,104101201240100,110000011012202,100201230412211,111010002110212,100414004300100,102000020241101,112311000204002,112312041101012],
+        1002200132000420: [102231130213210,102000402041014,100043324210140,100023024211011,100003201021001,100122020011232,110002021121023,102201100200430,100022010411004,114121300224141],
+        1143041002141401: [110002320424340,102031100200300,103130311444100,114102134122020,101040004010012,103000204003200,114004030023211,111100404100043,100000120412410,101222220302400],
+        102240012000210: [102011214000000,102110111410144,100031010010121,101001100300012,101041104222000,112000202310100,110001102102020,101012031033100,100400030013102,112023100230412],
+        1100000411031212: [100002121043000,102400234020130,100133204300040,102200031002000,114021112304224,111214012220202,112001404000330,100202004323143,100302241002010,112040101110000],
+        1140122200001330: [111011304114002,100000021023020,110013410002100,102000111441024,102001014002221,101110204004210,114240000000041,102120400200003,112440140200000,101013024000102],
+        240042210123300: [100002004303100,110130010102101,111000122201420,100212034221414,102000041101100,100042004301301,100012021031014,100000201032010,100121301023030,100404000020000],
+        131014040400203: [104310001300102,114021132202032,112012004004324,103001314001021,114122220031004,103040024041111,101004004213014,111124002211203,101211231023001,114022214031210],
+        1100022000004102: [102111040210242,114110000002430,102010011412143,102323124020210,114013422300032,100201010110320,110101101120302,100040201030342,110210402031211,110221030000000],
+        1100004010022112: [110001022000001,110002012000400,110020422131120,100001000100000,110243000001123,114024400030020,102102120210120,100402000010424,100002004301002,100103120023100],
+        1200400022220220: [112124004022322,111300210014020,102103201320411,100100031043410,114403210004014,101033214211000,114001100024243,111000142201220,112102100423402,110141112044000],
+        1410134011002122: [102004024000402,110031101012110,110231004212304,101124004002042,114210000210402,100022011220014,100032340422310,100100300004321,111334234120033,110234001301040],
+        112243000110330: [100000020421013,101020024002022,100100224230014,100200110014030,110012404411012,102340411101202,103001204012032,114121224000302,102041314012004,100232000001001],
+        301040112430410: [100002004303100,111000122201420,104134121240044,100012021031014,100000201032010,100404000020000,100010210410420,103000300124010,112311030201000,102430010202411],
+        1002134003002041: [103011041410132,100102134031030,110233000100021,100112104301200,100021242211014,101001210201440,101110040002210,110211104432213,111401304441341],
+        1012100302403002: [100013010004000,102200000204231,112020022000410,111232100010040,100010004203011,110001420003002,103230330100204,112033012312000,110021120110240,100401000022224],
+        221013010204002: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,112004021121002],
+        1000210430142022: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        110001002100022: [100021301030034,100020214240402,110014032200004,1113004122042140,1400000110100020,110400302220030,110013222003112,100104341202202,122002012004004,112124400420024],
+        1040300031240011: [112210010201431,103100024002220,103303000112122,100003011021244,114003100020203,104210021140401,100112101024230,102042030211303,101000400301224,102010124001401],
+        1401001002110320: [102104201320013,101023020301100,114220104000102,114004020010203,102100221341001,100011301000021,114310214033042,100100001040210,102014001441210,100203030110000],
+        1014010333020004: [111410210001002,101023020301100,114220104000102,114000332302320,102100221341001,100011301000021,114310214033042,100100001040210,102014001441210,100013224103322],
+        130224340411032: [114112124140000,110044220021000,102101231341022,101004004003140,102001020222140,112020300223020,103122411441211,114020014100200,102213040202212,114100010210310],
+        212040400001401: [111120230020122,103100221440010,102140000212141,114301000000002,112124310203104,100113324103000,102424114020143,114012444020220,102001000221124,102023021321020],
+        203000000000301: [112201000413102,114301000002344,100404040022004,101111131042000,100402030022312,100020301020010,110102021301220,102314341000123,101000000312021,101241201014000],
+        300444011012130: [110241024242442,110444010032242,104132420010010,100001041031013,110300112023012,110224200113042,101000020301410,114000102210200,101041001032310,103100100100104],
+        1001100100140000: [111124004101012,114103220220104,102120004001310,100410220030300,101021204000200,112141104020201,101200111020111,110001200422320,103210114021430,114223242332100],
+        1200200200000002: [102332004110243,100000340100242,114003122300200,102000200123303,112223042043112,111340032200020,112012132300102,112402204011010,102301001101100,102042421123404],
+        1031121000220130: [110100221223104,101022024010004,102102112002431,102412101112121,102404200230330,102110244000130,114000312301300,100102304302000,102400231404200,111113022242200],
+        1401120004202331: [101221004014002,103100000124030,110100121304130,101421210300314,100014041001100,100400300013200,102232001124214,100030100030030,100000204310002,110122002210114],
+        1401212021441101: [102143124001400,101204400304011,100020440122040,102002034010400,102020030220401,100040211031313,112010244000200,111100034100301,112404002023002,100033134104200],
+        1014000124122034: [102030004002200,100040014210402,112414102011010,110014012001011,110022410420343,100100410401030,102000040222041,100400430022423,100201314104221,112323230202030],
+        1010001022112102: [111020030040120,110002000134011,114301022320021,101122040304410,103344200113430,114101104102004,103030404010000,112100102012303,111302202204022,112003402002003],
+        1002041020112200: [120032010212320,220103022224020,411001103222300,1002022230124020],
+        1040003233111241: [114200212322001,100401210020002,100010111022102,100220300410430,101024201114010,102412220200003,110012222000144,100201214123301,114302122323101,103000104001003],
+        1024330040310402: [101001040340004,101013004002011,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        122010220021224: [103000230120042,110111001300044,100101141042243,100101100022012,102001221100211,102100132000411,101240204233201,110320100402023,110220411214021,100110004332200],
+        203021300200420: [100020310412200,111014124400030,100244420430210,110000200110230,111434000000313,101021344000412,101100101111040,111102200011210,110240312020042,100204420011023],
+        1042101022144100: [102314220240000,114210034112304,100014201221340,100400000013012,100044240002100,110122200000100,110313204431110,110211042120021,111210200002411,102302210211000],
+        1004203101302131: [102401030231212,114020012211143,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,100000324303120,102433214043112,100221200002204],
+        1110401001202210: [102103222002012,114004322320200,100403220020024,102100244002003,103102100122414,100121034230014,112040200210223,112002142310023,100033010002203,100040101020201],
+        1110322123410430: [112241020202432,103341411403412,114100130002210,100100001013001,112401002022010,103000214012340,100004204101200,102400134001010,102001004014032,101321040311120],
+        1000133004321111: [104130301242304,114000124014210,110010104412000,100220100410211,112401002021204,100400300012210,114001132330140,101010204011004,102022024000010,110002112102110],
+        1022130000421100: [103001111221030,111200020004203,104101201240100,102301112004021,110000011012202,100201230412211,101301000314000,111010002110212,111121022221002,102000020241101],
+        1100300302202220: [114012044100020,110014012001001,114203204001211,112144220230212,101012300300123,100011114240200,112210104010231,102201241303232,110010002001202,100202101210043],
+        1201320100000200: [110212022124220,100003100410042,100222034340301,101440044041401,111210012243010,102130124000000,100032310000111,102010421413322,102114020210302,100001100100040],
+        131000422300201: [100440104303400,102122000214201,102024240221040,110320011200230,100342024100204,101422034042201,100011114300334,102303004110022,100110201042101,110134201140010],
+        202001002404013: [112200431102021,111320124130040,110042234410000,102424111401024,102030200222404,114040340020333,101100240320232,101010204224010,103120011240001,103102420123201],
+        1031004124140010: [110001202000001,111040304401000,100100120423101,100000040120302,100120000410100,100201004102032,111424002100100,102102041124313,101101231100421,112002030220120],
+        1100101223222122: [100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100022410101442,103202014031021,110212424242341,100101014300100,100400242201410],
+        1420420002431422: [101342300314204,114104200220022,110001244204302,102010244010000,103003204011330,114430412322343,114200034110031,100000430014301,114423002314000,114010134021022],
+        1010322341002003: [111001440020003,102020204001132,110200020010003,102110004000221,111144202220301,114224204100310,102304011004310,102100144001112,120020201100121,102000041441002],
+        140301140120320: [104210402020230,141401003011030,102331004110020,100002110402000,100033410001200,110024222100202,100040014202402,100020200000102,102222021110020,101001320201113],
+        1000340024122141: [102001404012100,102340120222440,102122214131011,114223204100010,111041202200140,102100104000040,100023031000024,100020004101012,102402000201011,102311011000200],
+        4020222202404120: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,102042000222002,102001011100100],
+        1012140134022034: [110302040102004,112110340200041,114000300001030,101220030300302,103233000101300,114020204100412,100013144302033,100002220412021,114120104002413,102111410210032],
+        1431202004221002: [100442024301200,411231400122100,100003104342121,102000121100012,100400414321103,112130220202322,114320314031401,110404201113410,110302030412400,112003210211300],
+        102410022421000: [110022004410312,102000401442010,321114010100340,100121041041101,102322101000200,101020041000102,110413131000201,112012002302100,102121321410143,100201120000000],
+        134011101021021: [110101420400120,110110420012114,101210001032303,102103122004020,114021020011222,100040204304024,112001010231321,100304100140104,111102010032024,100213444314000],
+        223020402022002: [100021200124422,100022211042104,114020132303131,102020014002022,100100204230423,100423202201102,110022120020002,100300421002040,103131000120022,102040004010020],
+        1001311212012210: [114010332302001,114020400022001,102020220201140,110021021120041,110044410433321,102002221100222,112110022014320,114123100221401,100203310014042,112000221110010],
+        240131120143301: [111121100010021,110310034424102,100100010422000,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202,110043400012000],
+        1121231100220222: [103324401401404,114411024141202,102203320200340,110233430000121,103003204021222,101010004213230,112014104000224,101001010301410,102300200210412,100010010400110],
+        1000020010022134: [101020030332430,101022004214304,101010000323030,101001414212120,101001020322010,103310220113140,114200202330330,102114104001041,100022201043312,100000101031020],
+        101012000310101: [110041030411301,103301210142043,100002024200142,101110044200100,102411000200000,100400014321101,114100122342002,112012020230301,100010101020023,110033041200104],
+        122410102043310: [102003224011000,101113140334114,100101400000132,101221414041100,101110301040312,100030310422011,103011024000103,103041020101400,111300402200003,110000314200200],
+        1422400440300103: [101400220300033,100012021032040,100012021040320,102130224023220,102100401143124,100010001030140,102110101410144,114142204121324,112102421102022,111320134133110],
+        102034200403014: [110013202003320,110111032140220,100020010200022,100023101042010,102410111400002,102112310210202,102330010243440,111211010002130,111011002200232,114042044100403],
+        1000002312230100: [102130020200000,100012101223021,100021004302202,100002040102100,110023330004130,100001104303411,114102010220042,100224204323201,102021301441201,103103144000200],
+        1034103201030310: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        1022030204204402: [112312122020210,110332000010101,110022331320122,110000030132210,114002004103231,100001004311313,101403030300132,102321021102143,103120121440000,103123204002120],
+        1023000000003012: [100010424101430,114000224101044,102110022001111,101020301114001,102102300210103,103024011431131,101011324001431,102320200224120,100030014210012,114100300000120],
+        1141100103113032: [110130314400100,100104010021241,100032431030100,102022004010240,102023211411003,102202031002304,102340200224222,114002014033200,100004301021110,101010124001000],
+        1003222000202330: [102003224011000,112004310224204,102304420211002,110403042110030,100101400000132,101221414041100,100032424312011,101110301040312,102204010204023,100220000432400],
+        1120211322100012: [100200400430003,114420102323300,110212022133311,110404122110112,110403010000304,114100040214000,101210021021243,100140024230240,112230240412241,101010200320244],
+        1120000412044234: [102023210204300,100130101023140,100141314304233,110000004422320,100021304210300,100044304100100,101012341111024,103132204000234,112200002020013,100104010400030],
+        1402400203042440: [110320311331332,112212030411210,111040032230210,110431201311021,114012244102003,114014200002210,100102004033300,102224300230021,101114120321220,110324001000140],
+        102214021003000: [103302201400001,100021141223102,114323224031011,111000012222230,111303000013003,103131241240330,100220201001310,100000004342021,101222310302110,110200300012000],
+        231001212202221: [102000004002101,101403014020203,100402004300002,100042030120422,101134224001001,102321234111310,101004010323441,110003032000041,103300234023033,110124044400220],
+        102002010311110: [101224001202324,114233210000201,100002001024100,102103130221330,110000300140010,110011002100114,102011310202304,100002314204210,110010311210011,114004020020313],
+        101133314002201: [102400111402142,100010000002400,141030301403400,100000024100211,103224200113121,110140101300004,103103221421013,120020211120020,110230010010142,112003000230111],
+        1440322140010000: [110011110144000,114410024110002,114402014112002,140400400201014,100020000120134,121022000104032,102402040200201,111041212200040,110013004410001,100002244100310],
+        100204022110010: [100304004104120,111101200022422,110221322120020,100013121221320,101100231113103,112030030214000,101210030300001,110021320433120,100101304232004,110221100001210],
+        220101020000111: [111400124420002,110201400400024,101033124000402,102401000201121,111013232200403,102214104010210,102201100240444,101013411000000,102100001400004,114011402240010],
+        110010021000203: [100014111040241,102201124020122,100020104312001,101140014001100,112202101103010,112001104002203,110030002000110,112000100212200,100220244121000,100140100414131],
+        1002120400042400: [110012031011302,111200104411001,102121200313040,111011104401124,100300021202320,111201004131300,111311434120141,102224202023120,110334102021144,110421000003000],
+        120001202103000: [102004021410041,102004044011020,114300014030310,110100001002000,114100202204020,101200321020210,102204014032200,100402240013020,111023420020320,103000000000220],
+        100243230300201: [110102224201130,103301201402204,102401121113302,100021020124002,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010,114042014014024],
+        1131412411031024: [104103201240410,100300204010001,100011320043322,102204100232030,110110012110224,110000040041001,100103130412424,101210001020221,103100001242112,100200011220231],
+        1400231200110312: [114020000030002,100233014224240,110110200001000,102221414000020,114121012340044,102000400240203,110004210004223,102302004110231,102203004032420,110000034212000],
+        142301002100022: [103002104012101,114021000012031,122000430101030,114000022300301,100311000141022,114210202322020,114423024110004,102001101130200,100401301000011,124210120032121],
+        130030002042032: [110220122044010,110042304412204,114020124021122,100002201003312,110110111010042,102230121120000,103300001402013,100400010013330,102204011110020,112111400203031],
+        122220322000222: [102401021402212,102041020220100,114120204000410,100000001020000,104312001303013,114003104100012,114010214013020,112000224000141,102200414034330,114243312321003],
+        1020414002422300: [102420300202421,102431104021200,114100004121100,114002004114040,112134220420402,102220030202124,101023221003021,100000311024240,103212014032110,102023024002104],
+        1000113000240023: [103301210142043,112110340200041,100400014321101,112012020230301,100010101020023,114000300001030,102140101343110,102242000200420,101220030300302,100000011020021],
+        1202024241242314: [110400200102102,111300040003300,102001410212441,102100034132002,100001430120120,121000000000100,122102300020200,110222034213101,101001130322442,101030400323000],
+        1200040010022004: [120402022102021,110140101300004,102010002000402,110423221000200,110030211224203,114201402332241,114211030021301,210412232040000,114022000013011,120204020430010],
+        1024024200112020: [101032141001121,101000321002030,100100310024040,103212010100200,132224022200202,100231004331011,100200010434042,123102041021330,114100444004011,102312201003210],
+        1110211140441422: [102430401401200,101401000302120,100000020413120,114430014144403,101343421000022,114021424032110,112020002300103,102012021102214,111320122203243,111101004401023],
+        224412020421420: [102103222002012,114004322320200,100403220020024,102100244002003,103102100122414,100121034230014,112040200210223,112002142310023,100033010002203,100040101020201],
+        1122311101010222: [110201400400024,102112220202010,102214104010210,110042042120021,112010120231202,101011101032340,101013411000000,102100001400004,102310111000301,110032224422403],
+        1402102400420321: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,100001021221000,114003134011032,100101234330123,110024000432310,102012101443110],
+        130002100302431: [114343002322014,100022314100104,114100022342130,114300010002100,100013024312024,111012002200101,102102211140013,110020220022010,110210020002243,110121220000022],
+        111023012030222: [103100021421214,103312200112110,101000221031032,103402304003240,112402404024011,100332204310240,101112024024301,101231024010320,112001021122340,100340221201130],
+        204002001022122: [111130224102101,102322020212020,114403304140021,100031131042030,112201422040000,114021040001000,114022300011000,114441124140100,114000002330112,102000314012111],
+        1010342342312424: [100040020100400,110320311331332,110104010020022,110000300030110,110030010040441,112100300200332,101220030300042,112200211103401,103210310104102,101030004010100],
+        130010200220202: [103000230120042,110111001300044,103210001422303,100101141042243,100101100022012,102020440242023,100220010002421,103222010114132,101240204233201,110320100402023],
+        242002102122000: [102420300202421,102431104021200,114120004000010,102002001130001,102404000230201,114100004121100,114002004114040,112134220420402,102142100210120,101023221003021],
+        1022000310012100: [100442030020022,110210004400002,102012011131100,100112101040103,110304220401302,111303042200110,100104004030002,101002210342202,112034100230011,101100111114011],
+        1040020040200113: [110020010134221,100004020411020,100300321000010,100000421021322,112331012023100,100021010100320,101001030303000,110031210000110,100431024301030,101222321204303],
+        1001201004041200: [101140130013320,100204210031132,100023001042200,103224034003141,114202022320120,110442122023340,110020240400120,101022044001032,103101404000040,100110100033144],
+        1010041103400010: [112410300200000,101022420321103,110224102034030,100412210430201,102002004012101,102002114004030,100400000012403,101020231020220,101414220303014,111001214403102],
+        1010241221130203: [103204301402123,103102224034002,111100100004430,110102111204210,100041014102004,102000000222203,100301101000021,110020140044140,101001301032024,201120000130201],
+        1102222220310100: [110203131211112,114103412201420,110014300041302,110010022003021,110020310022021,101121021020012,110321001330010,100000300100000,111240304101330,100420010030240],
+        241104000033302: [114101004121020,100040301042132,101021104212100,102102241341004,102323404112032,114312012320120,100000041020230,102041021121210,100031000101440,103313300113232],
+        103142012230024: [111240220002100,110030344201413,101001014001021,110100001014311,102304244110431,100103224301304,114000100020200,102100322001021,102102100231000,102122000221020],
+        1440402013020100: [110121200003300,111040104401311,110102031222030,104101041240101,102400304041032,103121004000420,100040311024300,114110020212130,102002102043132,110041300410101],
+        130010001011042: [110040022130003,101120014204000,110014300001402,100100014230110,110201004241002,110130201000333,101000131142230,103042100100430,100104044230000,114022024012213],
+        1142312313100034: [102120002000022,110201420003020,100011304210101,112200011102100,100010210104123,111130102210101,103121021443212,103021401244424,100001040102000,100100001001024],
+        223201221310101: [100020121020300,111110010022310,103432001210300,112440134041000,100210240013000,110401214242400,101044214042221,100033201031241,110010114210202,102141000313022],
+        120300024001004: [101421000300000,100004000004212,102020424011001,110210000123320,101043130321113,101120100020310,100400420013021,101212040300120,101410441011302,112100124020213],
+        311023222001200: [100000431020101,100244100032320,110010212101240,104104001243020,100032040000331,104124102100301,110002010440412,110111420033313,103100200103020,102000410200403],
+        302320110211040: [114400034122341,101444024041143,114121002310100,100001101023021,102020032000000,114002004033124,103204321414213,111120010020104,101100120332004,102100230210011],
+        1103100044011014: [102121221343020,101400010303002,112104424022201,100013211002142,130030220200012,112200110000221,1300034431310021,144020001004041,1001010233020100,112012200120020],
+        1004012200023020: [110202004211120,110341010044330,102031144010424,111021030042411,100302420120212,111212114131222,102140001441301,111012030022123,110031424214112,100001230120013],
+        142404301142103: [114031022302044,114103020221100,102010244010000,114430412322343,100000430014301,114010134021022,114102224104002,100040240003341,114422404110312,112140134003231],
+        1101330100342343: [102002014000220,102203004042010,114004014011110,102410004024030,114402320000202,114014112302234,102012401001012,111230040010002,114112000004001,101004421020002],
+        142100121003020: [100000044301222,111012034402110,114221004034110,101223041020020,100011230120014,101104024002242,110133120011001,100400010013033,110100000031102,100100001043001],
+        1113010140143422: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        100311220124023: [110200400000020,100324140141402,100002204340200,110000410001034,103102224034002,110020041310021,110001001200323,110102111204210,103013100120001,102000000222203],
+        1041041203210240: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        113200100201203: [110300000402020,100014401210011,102323304112140,100004401212000,100003034100001,102000010200014,102110402004000,114030100040000,100002024212102,101000040343001],
+        1112002131011030: [100002011042020,102010200221000,101041201002422,112000002000420,114201224110141,114002004012300,112431004013030,114144100031004,114424014110200,114420022314022],
+        1012100002403103: [102401030231212,114020012211143,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,100000324303120,102433214043112,100221200002204],
+        1001001200023002: [110114001202122,111021202200011,100001010100220,114110004102301,114002114012041,100414031001210,102000004012011,114023102303000,110101100012002,114421002320003],
+        124114120100202: [110130302012020,102000100222110,100000211021004,102411134020204,114032200030021,102000000224012,110210120000001,101000120303020,102000001133312,102202220200320],
+        200200104122033: [101001000322303,103120004002000,100021441032202,100031000422032,102404120202300,100001304100000,103022041401232,100213114342042,100212001002030,102123000200142],
+        112223200442400: [102110112001242],
+        124000111321230: [110144240011020,101040211000300,110413401240204,112000244001222,114441114123013,103220211421421,114000012334102,101000014012442,100312401002102,111022210021013],
+        1101003400210121: [100303230141010,100010421034201,101000110310443,114100202341000,110203111302200,103012100000024],
+        242214323420220: [114040102210432,100034004211240,102140121410131,101201340300430,112040200233002,101241100301411,102113111343110,114020214123240,114002220010031,100001010412000],
+        1200430010000411: [101000040341000,100001024102000,111330004130112,110000042002101,100403440010040,100202210431000,100003020422102,102320100212010,100111324230343,100200000011200],
+        1024200000322340: [111030302201103,101002330300234,100440134301011,110000211010231,110402402020420,111142142101013,103143031442112,101110104002011,102204204030403,102004001410212],
+        202002000244020: [102121124130314,112032400230000,100042010200121,101022220302103,111010200000412,114200002320110,103013241240202,112010000243420,103032214000202,114233200002044],
+        1101310100043441: [100112000402300,100101220021240,102220011122100,110122000020202,100001001034141,102040244041000,101404441100012,111120140021303,111020102204112,110421002110030],
+        120000431112110: [102101211411000,112032040234431,110010232004000,101020004000000,100102224033421,100120040400011,100400110020244,102021001411110,110041102012100,114222010213042],
+        200431043110310: [114300022300010,102011424013030,100420014301302,102201102000000,103012240110400,103012220110230,100120421004010,102012021101230,112220430200204,103121404002104],
+        1020300131241022: [110020301220324,100041000010302,102020100243032,100031001020040,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321,112003110242131],
+        120041020012002: [110222020012300,114244120001041,102120111142201,110010011212411,110102322040111,102002104011244,103230010114302,110010220000210,114010304010030,102140001402011],
+        123003220030300: [110222020012300,111012104400010,114244120001041,100021140000322,110010011212411,100300020142022,103230010114302,114010304010030,114100202200202,102140001402011],
+        100230403201114: [110030002000422,100011004343022,110401140004202,110040002034100,102402330230011,110432242020141,102110334020204,103200001420012,112002002000344,102120020230022],
+        124400200400010: [103020031403100,114003104031111,102302331003300,102320000221020,102120141343312,100012020410120,114201022330011,114020420030200,100120400410300,100100310024321],
+        104301422204142: [101022040322021,102042100242012,102144201402040,102100201400021,101113031012041,110030441223002,110100122212220,100420011010004,100021420122102,110000200023244],
+        1010103211230204: [112110001104000,100102200021002,112002020220002,100010204013120,100010221221003,100110144032230,101000000310112,102201202022411,101020021031103,112141122310440],
+        1110032200001010: [100312331004000,103301244010210,100101031041022,100000240003101,100032224101400,114110004002200,102311110222320,101021410320100,102301000241011,103001220100000],
+        1111200112112311: [102204001121032,102004000220013,114003124010140,101000030322212,103000200112220,110101422010012,100120120112100],
+        200430313010320: [110443010102111,114303120004402,100444004302301,111320004131241,102020101324002,100210031004220,101030224211010,102304321002412,114140304122040,114404130030010],
+        1002002040230401: [114201010001201,100030024300201,100040300102020,102400110230001,102101011342100,102311210240013,101312211000200,100312131204422,100012230204000,110143101120300],
+        112024240000100: [110110011340130,100210304330211,111121210031101,101041010324010,102104210214401,100011230101432,100032024240322,103202224024200,114400044140001,114120010000040],
+        1112201420040040: [100121110032440,101030011141012,102200100232031,114221100213120,102211104033011,103210000102210,101142444001020,111420144421030,100031004202000,112012042001200],
+        1002100102031003: [103103231424020,112203400410130,103232044020212,110300410040034,112000042312030,100013311220103,102101000310001,102100221124440,114203004000200,102103004001021],
+        120201022314002: [110120144200000,114022412330004,101200221022044,100103104302044,101041030320401,110241112020204,100002004104004,102100104002224,102100224000210,102020004000014],
+        120202030214112: [114004142244000,102140001441301,102002004012310,110000011220204,111200024102040,102103204000000,111301010002100,100020024100000,100021204341100,104133130010123],
+        122402201402242: [102203004042010,111244302220204,101114000332010,114001032300011,100142044103021,114004014011110,102410004024030,101100010012423,103102211440104,100330020141212],
+        110022210020204: [104100002100221,104310001300102,112000044002102,114021132202032,112012004004324,103001314001021,103040024041111,100110101040020,431300131230002,101004004213014],
+        203220122341110: [102102101412200,103003000142012,1002201014202430,100112430012432,103330400114023,102403004020222,100002301031043,100040321042021,100302224314022,1211200224022400],
+        1130000101424000: [101001400301113,103101024004200,100002120200101,103300021402104,102014111102023,102100431342023,102102024000001,101012044004042,112410300200001,102020304000321],
+        1100000432221010: [100012001023022,102112012004120,111112242211204,100000041201200,110021410130302,102003340204010,110003004420010,100030201031300,100012401022403,100042431211020],
+        1001002421332411: [100012320001320,102000331120104,100232214222204,110203111111000,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        1421022122020102: [100111211021233,110100201140241,112001022300000,100203210003004,100042204102400,112120124020214,111304442220340,110003001024303,110032001122110,101000044001103],
+        100121200242200: [100000111000003,112400104044001,114423002313230,103201021402002,100304101200101,100203310430032,100201130410420,112010214003000,100404220013411,111102020010300],
+        302200041100140: [110202000000310,110000010120043,102102011413000,102403404004110,102122410220401,110301311303102,102141410230020,110103111120042,114420000001301,101012410301010],
+        1202002010204401: [102011214000304,110100104403201,102202000200010,102214204040420,112340020203003,102443011400041,100010430022021,101011001031001,111300030040030,101010001000231],
+        201230032030022: [110320202023400,114101420030202,100011004343022,110104422010121,110302204433321,110401140004202,102402330230011,110022202130021,110142432042212,110203210002230],
+        120030000000120: [101043042401310,104001222102120,101113012101010,110010102002310,100021220002020,110023132100402,112112410232001,103004041414132,102022102010211,110231202040203],
+        1001230142004120: [111312000000403,102312010211010,111011242233002,100000011041021,110014210424201,100100141044110,114313200211321,102001114010033,101430020300303,111321010040420],
+        122210123102100: [100000020004101,110130014400011,110232002101410,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300,114200444140203,100000124211001],
+        1010012300010214: [102041310200042,111333104124202,101000304014100,111431110000042,100040011023101,110301030010140,102004441124110,103303201400021,114101420030202,101123232010002],
+        302104300100113: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,112004021121002],
+        1420111102101004: [102131104023111,102420130230104,103000004010400,100000004310002,101000004003224,100012114210011,111200304131014,100000340120221,114133104120204,102001340200322],
+        100021000020012: [100000220100001,100122230031414,210303212040010,100000014200104,102440024021100,103231014021201,114000232300122,100203304122231,100122111002401,102000101120014],
+        1440211140400210: [111134204102000,100400122201240,101000034000203,110422200000213,101020031000300,112044200243000,110000400000233,100202140430012,110000420020100,112000112030300],
+        1020110310300200: [110102401201204,102400100230000,100212030414010,102031021441200,101200020303202,102020041321410,111340300010010,102013224003020,100002210201212,103013020123142],
+        1102030214000300: [100010101030000,112020112300102,102140040210040,114010000021104,102431010203240,114113004140010,114004000040100,100010004203102,103202300102400,114103200002100],
+        113034310204312: [102224101113104,100312331004000,103301244010210,100101031041022,100000240003101,102311110222320,100040310123023,103001220100000,114124420032020,112012012002100],
+        131401244102202: [102001000212142,114121000002140,100002214100100,102120104003011,102120402000014,102000200210032,114020002303212,102303110220130,102223231121242,102103132002023],
+        1100113332434120: [111030212113431,102001111011201,110044320441241,102233034000002,110410122010102,101122404022022,110311110410340,112101202012010,114240004000000,102300104110220],
+        100101040000421: [102130020200000,101104020300301,100021004302202,100002040102100,110023330004130,100001104303411,114102010220042,100224204323201,102021301441201,100024040122220],
+        134014011004200: [100113220020101,114031000022030,102014002000401,103103241421322,100300211000020,102104304023201,103310300140324,100002224244002,114310200002400,103211220100010],
+        1042320131012320: [110441140102024,101004120224442,100413311002132,100320421001431,101233021020010,110210301200101,111131102210013,110400241240242,101001024210000,102210101121104],
+        1032310024101130: [100013100100014,100120234300003,102100014000422,114010422330121,110020402100200,101401424024210,103044001403210,111300122200243,100000101040410,111222222244101],
+        210140102011040: [120001021014002,102021204013000,110424200100400,100423110021010,101224110302431,100220110000201,102123024003202,102010011124143,102201040200403,114040022210401],
+        1004314020004310: [114030110041300,103112004030003,103100311424002,103040224000100,103132424000410,114323010000311,100400220013232,110010002000100],
+        244120023102030: [102300324010203,102100142002204,110113004402201,110301232000100,114110340004414,102104020202131,101412010334000,102020100213212,110021141213001,102332001001302],
+        204310020011420: [110400022010030,100214121000000,100042034200032,102011041100210,114323000000130,101400240300010,102412241111002,100424104302020,101013234000010,103210014003000],
+        214013043012111: [100423004302232,110030220000310,100110034332223,101223100300200,102001034002201,101104401020410,102032031440302,100113004304010,101310311000124,111303214132004],
+        112001020320102: [110011001021000,111120002211010,101201200310001,102020000201200,111232000010230,101230000302304,102300211000020,110222100011043,101020320323422,102122004000004],
+        102413100214132: [100240000032004,110221204243141,102000000210211,111010204401023,103142444002002,101200010300001,102211300204221,114420232314210,100301004321221,110312300040010],
+        244013143230120: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        133004040301010: [111000242201231,110320024430030,102040101121143,100002210000020,114311040000110,100000014312111,112003130224002,103404004000103,102000020220103,101002410300300],
+        131100330042222: [100022041001002,111240340004003,102021024000010,111101222244030,114032424122040,112011012004300,101021401003220,102000401120420,100301020420101,100022024100041],
+        1020300040010001: [110000002200001,100201024102012,110000324200322,100402002200020,111340104131020,110114132013304,100121324030101,110010431320002,100010034301040,110030001010000],
+        1140431400240421: [103012004011310,111003230041302,112400010203210,110111022044102,100300004104143,100002224104130,101010410340000,111020210043121,100120010402000,101101201114100],
+        101204202102111: [100310304310342,110140044401202,101300124221002,100010041031020,100042400001023,112402000200101,100020201221000,101010020301243,102030001103000,100040021031201],
+        1434102314324032: [111302020010000,101300221003002,100000121020303,110200220010220,110020004203240,100020010420242,100100204232000,110031020114222,112001410232200,102012001132133],
+        1111040032001420: [100000220100001,100122230031414,210303212040010,100000014200104,114011120024030,100101121010100,103002011240201,102440024021100,103231014021201,110110420034120],
+        302123011110002: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100000100120300],
+        1030012041401021: [100101021020221,100121014300312,111144004103013,111000002221010,100012431020010,110220442220001,101010000332203,110210142123042,110110400003300,101000201143043],
+        120000030100401: [101030001001022,110230231300100,102010424000101,100300121000420,100402431014100,100100001220400,110330200400021,102100020210143,100030024303110,101423100300002],
+        1410012140000222: [102101210213220,1001013211040100,101404203243201,1132012124324031],
+        1003101201201020: [101200011020000,101202001022000,114012222301110,100031224102002,102001024011010,103042141420430,100000424201223,100002120011102,102112004132100,100101021012040],
+        201210023004123: [100002024201011,102004410220430,103013411431022,100344101004202,103044004012014,101040004222021,101002114000000,102400004020303,100402200031004,114340400001040],
+        100000200000321: [110014010012200,100400142200030,112233010221200,114020020001014,102442400231201,102120304001402,100024004103100,102224000214240,100141014231104,101201104042203],
+        1000204112132210: [102004414000212,102010221411043,102003214013022,111100010023012,111020240024110,100002101021040,114013324102022,103102324002110,100100100021142,114212100023341],
+        1021040410444201: [100220034323210,112121212300101,100001124102222,100400100022003,100032001041230,114420002322000,100141120014242,101200034044300,102204044042410,100020310010001],
+        120100042004144: [101230011020001,110000201222422],
+        122004111402000: [102111030204323,100010410021300,100033101030010,101133300043021,100344000422241,102113024003300,100010030420033,114302424032232,103410031210320,103222021204312],
+        1100110210000310: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,100001021221000,114003134011032,100101234330123,110024000432310,102012101443110],
+        111010121010402: [102442024024214,100443211002141,102100330211131,100011014103012,100030220101040,101130031041024,101240021020011,100400020033003,100100110411000,112204130410100],
+        100004110033110: [100310014310311,100400000031312,103230004000142,100400010013000,102011114000042,114110024003013,114142102344042,114114040001042,100000030003111,103002004001434],
+        131411411011001: [100100100412204,103120210100100,101424100304000,114004000022042,103003444010014,112022000242003,100012241220110,110002111042010,112420122022130,110002321321021],
+        1214321220001300: [100422000031421,110302040102004,101402114042420,102220021120430,111341300012200,100102000010243,112410034040040,111302304130401,100024334203210,103031410122401],
+        1420123210040202: [101200341010102,100004000102302,112011300223041,102200100241120,102030031133201,100240101000210,122011112200413,100000221233001,102142034004000,100030201021200],
+        1022320020001020: [100121230031032,112000431120410,103042024040104,102304104110001,102000200200301,100104211044110,114241222321321,114021002302020,102313204114304,114013124030022],
+        240234000100141: [102112204000101,100004210400203,100142414232131,100400002200000,102100100214030,112213100200230,100002221022420,100122104020004,111031104110300,110431100000020],
+        100011012042204: [100114004100001,102012030213014,102003320200411,102002024000132,112440114040203,100401001011010,103001204002010,100340114211043,100033001220020,101100120334014],
+        111030220140030: [102140411342420,103243024040441,110021014412440,102020004000301,101031101024100,112000210242204,114403014112210,100100224031000,103111001212300,110010112102022],
+        132022104422222: [101004010304203,114104204002313,114300000002130,121200013012000,102122210230200,103110411212041,110421410100301,110244400212004,114410104141020,101002021110410],
+        130010341202000: [102422114040010,102020004001311,100101101010100,114103212312012,102321044112101,100022024100041,114231212342200,100020011043020,100021231020200,112022200202104],
+        101010213000232: [103301244010210,100101031041022,100041234101100,103001220100000,103210004031201,111231012242301,103240404032240,114444004140210,114114100214000,100011121022401],
+        1434300020030411: [114033300040100,112021201120101,114202002320113,101000104002203,102010231120312,102300014110023,102430001401230,114420302320210,102103422004103,101000011111400],
+        1040301200000100: [100040300102020,100012230204000,110143101120300,101101200311102,112401402023020,103142104001331,100200204123011,103031120143010,100103401003022,100101130101111],
+        110413230020140: [110124010031144,110311312000001,100140010411214,110010320023302,100002120100314,112004431132202,114130202311020,102111031342214,110103022012204,100214200004002],
+        1130101200220000: [110101124221101,101421000301032,102121122000024,102301004113010,101004004003140,114000312331020,110002002104100,102301214110003,102222102020220,132400144402210],
+        1001000200002422: [100400400033012,110412321240412,101201020300000,100200444320120,112020204001002,100120200402000,100102030022032,100404340013222,100111200031001,100400002200140],
+        1031041330034004: [101010241003223,100000201041300,101100300302102,114011200003102,101020104000040,114120420223002,114012402332300,102302020212101,100030004104210,103030201434002],
+        1012224102421104: [114000044020204,103044010120003,102320000221020,110142020400012,100142011022211,114230344103210,100030020104423,100102011010000,100000001021041,102000000212122],
+        1041121202302432: [110301011234204,114211102321011,102110221412210,103330421400224,102112042004203,102000200201422,100032204200023,100120431012000,112210204002124,102003014001002],
+        1012010004022204: [120001021014002,102021204013000,110424200100400,100423110021010,101224110302431,100220110000201,102123024003202,102010011124143,102201040200403,114040022210401],
+        112120100132301: [102211230244321,112121214040022,100004004100120,100041014210020,100000030100102,102140200224200,101012400320002,112002100233204,101001244010120,102200121300400],
+        100001030022104: [102010200221000,101041201002422,114201224110141,114002004012300,112431004013030,114144100031004,114424014110200,100014030200221,114420022314022,102322001000202],
+        121003123220221: [110130314400100,111121100010021,110310034424102,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442],
+        200040101004123: [114201102320021,102010124004041,102011021132412,101012004212201,114000102202022,102442100201100,102222421012100,100000400120232,112001410240333,102310001003111],
+        1000121020042000: [100000044204004,101020224210014,114202244101041,112423102010012,102112022001414,101212214011134,100001121023210,100012101020002,101424010301210,114204120000200],
+        1100002120012100: [102014002000001,100004210100003,102431121110021,102320004111024,100144301040241,100020024342004,112031401123023,101442041011111,101101034200101,102111010310232],
+        1040230030200114: [110400332010004,110132222014033,110300310011000,101020320320424,100014121020424,102110111122212,110313010000400,111002022220000,114202220210010,110030011010043],
+        133200422110231: [100000020004101,110130014400011,110232002101410,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300,114200444140203,100000124211001],
+        110001211000201: [100201114323042,102102011341002,102141024001000,114222144114122,103001000102220,102021010243000,121100311033233,103102044004203,111110202240200,100002000412000],
+        1001212300011100: [102110230210000,101124201110410,101423221010210,100100224303300,112240002024221,100040420200010,114421302322203,102011204010242,101123010330203,101420111010123],
+        101134003411022: [100014011034234,102240221000001,100000324303120,100221200002204,114000024101102,100101011013002,103002121432200,102141101410101,440203203132211,102012011104110],
+        111010412400020: [110001022000001,110023342101220,100021004310222,110020422131120,100001000100000,112220322030220,110202222043022,110313312021120,100220214333200,110330234422000],
+        1014200020002102: [100411024300421,114210204001422,102101001412002,102200000240220,114010302301200,110100242212103,102013014000124,102030100214200,114204140213040,110003320121201],
+        130202300120020: [102422114040010,101204400304011,100020440122040,100301020420101,114103212312012,102002202000000,102002034010400,102020030220401,114231212342200,112022200202104],
+        314100040210102: [100000201020000,102030024112031,102401011401222,100002002212000,102114341341012,111420200002021,111001224121320,104042022102100,104030002100140,103421124042304],
+        100311100100112: [114212420211103,111200042221400,100342011201332,112224042022101,101222104020403,111022014110000,111004424400103,101012124044012],
+        212004331010240: [102422114040010,100022041001002,114032424122040,102020004001311,100101101010100,100301020420101,114103212312012,102321044112101,102002202000000,100022024100041],
+        1102201000100020: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        141000201201400: [102040431121110,100400002201113,114111100021420,112024212301420,100300310140241,100240134323001,102111024000402,114321002320001,102042000222002,102001011100100],
+        1102120044000042: [100000044240301,101140021101302,111120224100101,114440120000030,101023041001203,100201021001300,100211400140102,102323110212100,101010040320111,114300014030021],
+        1012024020222240: [111102110012000,111142010020301,100031201030331,100000144104100,101000344010212,101033141030001,100104400021023,102111210230204,101003400322022,102200421003014],
+        242401011120420: [103303001404000,114024312202242,100020001011422,100110411200024,114020000022214,111240020000201,102221204020110,100103121021000,102203204123112,102302010212201],
+        1404002001100411: [100422040021304,102000024011300,100021320123031,100014041042003,100002010413410,101011210300000,101433010300204,102114321401000,100002414201103,101002221140440],
+        1030042010204412: [111003110010202,100104000024404,112100404022020,110110011140012,102332041000321,220132443001240,102330211001013,100002301221010,100000324201220,101041420322222],
+        1031314220400013: [112241020202432,103341411403412,114100130002210,100100001013001,112401002022010,103000214012340,100004204101200,102400134001010,102001004014032,101321040311120],
+        1431000000000041: [112102024020402,114400202314210,102102010214442,103022110142241,101002024000400,102101211410144,102240231110222,102010214000120,114023142202040,102330020242041],
+        1120004301122440: [102401030231212,114020012211143,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,100000324303120,102433214043112,100221200002204],
+        101313100310010: [111400124420002,110020402002000,101033124000402,102401000201121,100112044024030,101202024231020,114100042311200,101010001000400,102201100240444,100103100414402],
+        1430340000422012: [103303001404000,111111000014001,100020001011422,101023321000020,102010221132220,100110411200024,114020000022214,103113204001423,102221204020110,100103121021000],
+        1141030001430141: [111130224102101,114201000004122,102201024041200,101223301020130,102322020212020,102144002001240,114403304140021,102103021340120,114100024004214,100031131042030],
+        112301040212242: [101020210300204,100112020023021,112203122042414,101020214003103,103021210110121,110203100002414,114002100002414,101211011023023,103020224040304,101143031140312],
+        1100001423232033: [114102210220100,114001210033034,111221102222020,102102010211012,100230220410213,110210002100320,102100220220023,101111211012031,101213110301020,100100210414012],
+        1240203113110303: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        132201100020001: [112102024020402,102102010214442,101002024000400,102101211410144,102010214000120,102010111102410,101000110322242,102404110230202,100010020101222,101222104010140],
+        143000200040430: [110444144241024,102001101130120,1000310103100002,102242301122200,101240010310200,110040230120420,100200020431202,100021430021301,102011110213001,114001002300400],
+        1022011320030121: [100004214100234,103000011400001,110402410002000,102001011442200,100324200110130,100342120144000,102020001440011,100100031003220,100200034020100,100000041021200],
+        1011222301013300: [110022004410312,102000401442010,102000014004040,321114010100340,100121041041101,102322101000200,101020041000102,110413131000201,112012002302100,102121321410143],
+        1100040020240044: [114213002340022,102120140212001,114400210002021,100000021022400,144200203310100,1003022312322100,102001244001224,114030214020000,102023422000000,114213004000003],
+        104011311014010: [102300401000244,101043004000042,100042034212023,100001404100302,101101014004001,102112220204201,101022020303401,111322022222202,110011114201210,102000021121130],
+        132044004300421: [102430030200201,120142100101000,101202321024330,141202030000322,141200042321141,103110340030100,101044004010300,120120221230400,132141134410102,1003102040011030],
+        100221120044210: [102431111110001,102323101101400,1003002030122040,202003402402323,101230330042220,1320124301012211,410142111403201],
+        1101120114012022: [100020400410010,101211210304010,102010041122220,110314422023002,102100001004041,110000403400000,100000414104102,100001020044101,410310420012412,101000020100020],
+        110010213034220: [102033021130021,102001241410312,100000121042240,114000332303001,102330021000131,112041031114021,110400240002411,114432422322332,114044240023401,111004002202111],
+        1024342412040111: [101041310301004,110021122100000,114431224113420,114033012202420,111211002241330,102420001400320,102012000213011,112040004000012,112012032002220,112410214043412],
+        120102320201223: [110411044221200,114200222340000,112024232302040,102423031402210,102322121000002,101012040320004,102000011410132,102321230240434,102140014000102,112000020220201],
+        100200222011104: [110021040020010,100001140020000,111011030004021,100012101223021,100121104300201,101220330300003,110132000024420,100224204323201,102021301441201,103103144000200],
+        1004020102010020: [401142101000022,400114001102410,102100000012031,431232000323104,1012100023110102,232023302143031,120200122422404,1020220210340010,111414004440203,1040100003200241],
+        1003031240200000: [111041004113300,102020010203200,100011144312020,103110120210013,100020221040231,1012220402104110,102011204001010,103012004034001,102001410221023,101010111034000],
+        133120230041403: [102140001441301,110302100111410,102111400210040,110010220121014,114000402300001,100020024100000,102142022001203,104133130010123,102010420212022,114132200222003],
+        1111242014404013: [103412204020401,100014410420202,103304100141001,110201324240244,112002014003103,102012040232301,100402002200121,102442100200132,110202114242400,101003041032000],
+        100004312224000: [111330120000213,101011014010102,110000100423033,111222004100001,110222002034040,103144001420031,103101130124033,101231400300040,100220114121101,100112204301144],
+        1032140002100120: [102001404012100,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,100002301021040],
+        1112030040102000: [100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100210301004023,1302011220000002,100401430030420,1300302112030020,100140221202112],
+        123132013103013: [101203004040100,100142224230113,102104131122031,102320024020040,101100000320132,110402122111020,103040120000040,112010000211002,111041012143402,112130224021002],
+        1100421422310024: [112024232302040,100040131021101,102322121000002,102000011410132,102321230240434,102140014000102,114020100042040,102020304012040,102144012001120,100400004100332],
+        1010200334204000: [103100130122100,102340011104001,112300002022101,100430101012411,110112320021204,103411014002010,132000110000001,110302130004200,101000000300110,102112100210100],
+        130002304011003: [100202400434310,100000010002202,114410024140040,111221024440402,100021344104342,101011121032013,110000300444443,100131310002422,101000024014331,100203021000012],
+        1031040014131300: [102401030231212,114020012211143,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,102433214043112,100221200002204,112001030021004],
+        120302002100002: [102401030231212,114020012211143,100014011034234,100002110100031,100230112110132,100110404103132,102100010232001,100000324303120,102433214043112,100221200002204],
+        141004440010111: [114200212322001,100401210020002,100010111022102,100220300410430,101024201114010,102412220200003,110012222000144,100201214123301,114302122323101,103000104001003],
+        1020102000020042: [112001001112001,100310444310004,112332000411020,102431200203321,100211001204102,110002400042003,100000004244400,102032010241003,110024001211221,102403204000000],
+        300011200341000: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        1001342410002023: [103101224000011,102200042000104,103002000104400,103002144042123,110114021000012,102304204110040,112020004002110,114242210004001,110031404200110,114033020020202],
+        101133210200002: [114112124140000,110044220021000,110122400401032,114310000004320,100000324340102,114443200000122,102440020200020,103122411441211,114102004002022,103414020133020],
+        111301210424031: [112002204004403,103013001430040,100402021000101,100100220024041,103030200142241,103010040123432,100003001040112,102112322004011,102334101001210,111203430002211],
+        100430210211101: [102224420201000,103013034012221,110302311302101,100000120002200],
+        1102402400440041: [112113214020100,103300344012201,102010202004402,100000130013400,103224041400220,100001321032243,102104244000010,101001010300404,100201104224131,103340004020422],
+        123202224112002: [110113022011200,114010024033002,101201001024132,1042411340004022],
+        102312020044410: [101004120224442,100413311002132,100320421001431,101233021020010,110210301200101,111131102210013,110400241240242,101001024210000,102000324010303,110023102103200],
+        1220140112400113: [100322014312444,103010110100111,100120410111230,102022024010214,101030004002122,103232004020011,112013110224020,100000424310110,111114332113210,113030342402110],
+        120022011130410: [111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,102410220200004,102100211340043,103443104001332,112100311104022],
+        1011304420320000: [101230002122040,101210241204043,104102040011120,100123011004113,100420001002101,114103220220104,102120004001310,102430121110340,102020121102120,112141104020201],
+        1002422010322203: [102001201440040,100212000030034,102300001100112,100121010400103,100121111001223,110201030101402,101000120300010,110324304424130,100002024310012,114431000001000],
+        1202000011001142: [100000044300303,100002030101101,103300220111112,103141324004100,104120021242040,114300024031112,114102002310230,102211124110220,100400102201000,102100100220002],
+        144313310001020: [100131031020002,102031401100332,114003222201103,114120212310000,100022204300000,112012211120102,100101040400110,102203111103200,111000000001211,100404200013104],
+        1032002104103100: [100002100100210,102420424042020,100010001032223,102111024000402,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320],
+        130220011132020: [102114321402233,114310430002402,103202320100322,110300420102224,110242444432002,110021100022013,100244144101141,103000104032321,101023440300102,110140110023004],
+        1440231030110030: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,103140124002022,101042421021120,114013204013220,102000100221400,114241204001213],
+        104220402140410: [102102031320011,100041140201301,102140041342420,102140021410400,103011100120201,100000120202410,102300004110122,102202334040220,101001100320224,114000202300004],
+        1102400401230211: [110002220002220,114300022300010,102011424013030,100420014301302,103012220110230,100120421004010,102012021101230,112121404020102,101000000300323,112220430200204],
+        1020220231131000: [101121211101004,101114101012020,101001304001101,103000110142041,102002112041034,102041111020030,110022001201023,112401144042000,112200124010030,110422010000000],
+        110020211102034: [102121240200000,114001232300102,102323324112410,101130314020142,101422210301101,103000041402003,100000104102100,100043044210031,114212344000432,100001021003113],
+        120010142301020: [102401030231212,114020012211143,100002110100031,100230112110132,114220414000323,100110404103132,102100010232001,102433214043112,100221200002204,112001030021004],
+        1021101401020232: [110101200032041,113402202420020,100000012212010,110041002000220,100040111030202,101142410330304,103110001242101,103431011210021,111132304100420,110433222223310],
+        1420013100302320: [114003122300200,102000200123303,114402212311130,112012132300102,114020310024000,112022010222000,103401431210002,103313141402020,100001204200000,101013010320220],
+        210230103011000: [102000004002101,110202000000310,100422314300200,101403014020203,102141410230020,100042030120422,101134224001001,110020001224021,112100000200031,110003032000041],
+        210000234010131: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102,100030010102102],
+        1202310030214131: [102020314012030,102020224000000,101242101020042,100002104104001,102421010200213,114021040001000,114110000002010,102301141002223,102110300210002,100001000202200],
+        311022002001000: [100422040021304,111111000014001,100021320123031,100014041042003,100002010413410,103100204000400,101433010300204,102114321401000,100002414201103,101002221140440],
+        130101000212042: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,102042204000300],
+        130111410421030: [102400014042200,100422201002310,114403120002242,100021020021013,114020002203014,100000204203120,102401004042103,100024030000243,100101301041100,100003104300220],
+        120314200012210: [112020104001300,112400104042431,101400110300032,110032412204130,111242402020001,100101004300200,114101012201420,111032414402324,102424040202123,102110024001402],
+        1402011002010022: [100024234201100,100010234114300,100331200141014,130000420243230,110112204224100,102212234021233,110224102230230,100120411200320,100100341202102],
+        1100402200221321: [101204004040140,100022102100243,241221402002000,1030200104020421,1000102021230333,110344021203140,102200310230230,103001134002100,4002244101001011,112020002001230],
+        1040124103000020: [114222040214020,110200004210000,100142221012003,100100030402001,100121221022103,101000041142321,102120124004020,114101204004022,100120221222104,111440404400230],
+        100200002340002: [100400000020210,114011300040140,110240032042222,110200022124020,102234341124302,100024110002203,112024414000023,100000104200120,110210200014413,100020134102010],
+        1022144210100043: [114031022302044,114422004110130,102012030213014,102003320200411,102002024000132,112440114040203,100401001011010,102021221120401,110100331003020,101114000330410],
+        300440311014202: [103401000120223],
+        324212220100003: [110430341310122,100400100020024,100020211223400,101102241114000,110014142204101,100203321004410,104130230010032,100100011220404,110010000020002,101210001313401],
+        212001013010204: [100002024201011,102004410220430,103013411431022,100344101004202,103044004012014,101040004222021,101002114000000,102400004020303,100402200031004,114340400001040],
+        1011031002141401: [100222000004100,110002001222210,103122204002112,102120000202211,101103320301203,102011001102101,100402020013010,110003004212001,110310430012302,110041002120211],
+        101044041410200: [110012220442042,100034204311021,101121024024120,103011131430040,112201104011200,100201244122014,103020420121211,101020041033003,100003221024211,111031030040220],
+        1010123243314001: [102002301120010,201301011030444,100012034312220,110001000020034,102004014000430,110140332002220,114111240032010,100431240001030,102101024002121,110014024202014],
+        140202003024042: [114022412330004,101041030320401,101203121020430,103130021444021,102100104002224,102100224000210,102020004000014,102100200210002,102031001411010,101400004022210],
+        1004010001102003: [104244002023000,120133001040211,111320124130040,110000110000231,100142041012023,110000000411120,110302100010342,101301030313022,111440222100012,100420111002101],
+        1043212000021040: [102000034011002,103204000110000,100001014340021,114203202330210,102103001340022,110214110004122,112032000211000,102300121000111,112021020220112,114100102202223],
+        200014212120104: [101011400320030,114000004022410,102410012002102,101000134010220,112330302020202,112003042310200,102220001120020,100040000003122,112024140222012,114014022301200],
+        222201003101000: [101002120301230,110010000411100,100400020022110,101030411030220,102111310313001,100123410022301,100001014301120,114023044020211,100001400404002,110401214221203],
+        1401232020042113: [110322104424202,101202421002031,102102220312102,103004204021310,110012310020200,102030130241300,100232224340041,112400002011010,112011001113222,102240134031142],
+        1411140200001240: [100000324342000,100000410412010,114412124141222,103300400140000,114002304101321,111002202221023,112002144000001,101240010300343,101010411112210,102340410242300],
+        103412011010020: [100443120030100,103032411100001,114104002340200,100020114210041,103214331421023,102120141142220,100221421002211,110040030000044,102100030222020,120400000024121],
+        1014024004102004: [1020102021344321,101030301001232,100104302001300,1001102321230101,220200021120010,140320413003120,400014401213001,1020423021001303,100021204230002,320143400144303],
+        1001022111231200: [100214000430410,101100210320232],
+        122100210311210: [100102000010243,103000300120001,112300042020334,110001212010040,112112122012022,103012200100120,110402000100440,100011110200210,110210101210300,100013024213130],
+        1101124221301400: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        1224144040212102: [110000204210130,103102104000031,110201134243240,100100100422103,110020134410001,111100044100001,102204004042041,102101002004300,102043001021033,101210211022100],
+        101000001100200: [102420424042020,100010001032223,102111024000402,114321002320001,103220011411101,102001011100100,102200401111200,102311120222404,102000430221040,114003104031111],
+        1004030002312130: [100002100100210,102420424042020,100010001032223,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200],
+        120103422003102: [102421012023000,114203412342202,102000021442024,101000410340001,103000000122004,101210024012220,114311204000403,102100001340121,100120211000004,101012014000204],
+        110021314000002: [110311331003000,101020240300003,112021334001000,100144430411240,111000024401300,102321040213311,111210442211022,103222041413120,102103010312411,110433011310111],
+        100110000242233: [102334004110232,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,101120030010320,114124002341030,110302322102041,101300004231010],
+        1000120001110423: [101400004022210,102031021441200,102300031004340,102312301104422,101200020303202,100000411002023,102303200241200,102140202001100,100022200121301,111423014422320],
+        1023040204100410: [102020204001132,120020201100121,111122012213410,142011110011130,120320000422011,110024000413122,100022200410202,102021201320102,100420231010003,144041310003010],
+        110110202031302: [110002010000240,110124010031144,100140010411214,110010320023302,100002120100314,112004431132202,102111031342214,110103022012204,100214200004002,100400030013021],
+        1144332120022040: [100240414222323,100210004030410,102304004110020,100003104302021,114342024030024,102021201440011,102202030200124,114132104004011,102103200312030,102000001101130],
+        132202400004130: [110110011340130,100210304330211,111121210031101,101041010324010,102104210214401,100011230101432,100032024240322,103202224024200,114140404123402,102130031410200],
+        1100230304230004: [100004300000204,121202234011000,102124021023300,114001014102403,112444304040204,122022100000222,103121420214211,100003024211200,114302402321024,100000020120210],
+        230001222111000: [100002131024210,102410001402210,110000102100012,102010020223010,102120214001422,101412300302220,110320002024021,114201200004112,114002044114140,101400201100022],
+        1021002001040202: [110103002040200,101220111020012,100000214101311,100004024202000,102112430210103,110310004424040,103000114012224,100033131043244,103000024040413,111102002220124],
+        1040000013000201: [112222002021104,100221304220024,110121112012011,101400401012014,100213001002313,110020100004110,110200310002240,100211024101002,103140404001201,112100122300333],
+        121232000414130: [102030211324014,101040344004000,103014201410032,100111211000011,103402210131312,102200132000032,114230324000001,111001030000002,110000204214122,110004000020130],
+        1031040012210001: [100033114200011,102201130200131,112002024004122,100410040030230,112120110200240,100004120402124,111201002200020,100012020420232,100000101222004,103412114001210],
+        1001200101223001: [103034031400131,103322000112244,111123412214002,114200220003001,100043121024120,100001011022100,100240110002411,103410000104330,100104104302020,100021201012224],
+        1100020200001102: [112113214020100,100000130013400,103224041400220,100001321032243,102104244000010,101001010300404,103113010102100,102211430202033,100110301022230,100320114314042],
+        1000101020041032: [101000024004442,101031104002100,101101230331040,121104330112000],
+        1120020430031021: [202013001110004,101200020302200,1320010210001300,100010230021300,112012111114213,102230004030112,100100221012100,1002022012411300,112102000202302,103013200104400],
+        120401401002412: [101213114040141,102210101002412,111140100011101,103220120212134,114200014001032,100344101004202,111103314101000,114140104122430,101100010302233,102021241324040],
+        1100100220100210: [111214100000104,102103034004032,100430221011100,110422010000200,103112021442033,110044014410012,110030231214100,111121012243322,110100144404220,110004001040434],
+        1002042422001100: [101300000310241,103103001442303,100031000410300,110001302002012,101020414001023,102110411023111,100102234100211,100010204103214,101000024000234,114104120220001],
+        142120223030024: [101010201030113,114012012300010,111202024134001,100302000140001,101000004003224,111302120011012,100002314210021,103101031440430,102021014004211,100000211030342],
+        1010004003121400: [102422114040010,101204400304011,114032424122040,102020004001311,100101101010100,100301020420101,114103212312012,102321044112101,100022024100041,102020030220401],
+        1121201240200221: [110021000410432,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000,103300021402104],
+        134202004322020: [114210410000401,103210214003143,112210010201431,100024104100032,103100024002220,103303000112122,100021304103002,101120024021024,100003011021244,114003100020203],
+        104041224043122: [100442404301421,112400012012002,110000002132011,110200442121020,100121221022000,103220110100100,114200124144010,100302220420400,111401202210212,103133001240012],
+        200330200011013: [102242010244123,102023200241300,100400130010102,112000132030001,110000032130121,100202000000010,103131001210231,110200131311400,112101112300110,102100201143032],
+        1001041000301243: [110134200122322,110200412020210],
+        101302203404011: [110024021040134,110000310134014,114000012334010,114302200002200,102001201443121,100200024301301,101120000011032,102111002004022,103210031422000,102211211000203],
+        201241022044100: [100034114100102,110330002104200,114000000030300,110011111104432,102000221034000,102143421000420,100300000441223,110201012040210,110000321104200,100104041000002],
+        1012413000110222: [102101004000411,102434121112224,100024001040202,101200210300413,103210021401223,111110014101210,102000004001141,100002211032042,111344032200432,102100301341002],
+        220201201130122: [110010022130210,110401304243400,102321101000300,102104100232130,102403241400023,102010020210100,100000404210104,102104211400330,101130024000302,100210310002000],
+        1010042010300014: [102202310203222,100042001020203,102002320220202,114130210231020,100004410120102,111222214101043,101011211003002,101001040304214,103230430101003,103013144020404],
+        1042210002212232: [101434200303301,102302100241110,114000224021230,102120031340220,102002244014003,102101120213444,100121044230340,114031442303000,102010214000002,101412101103402],
+        211134301000322: [102041310200042,111333104124202,101000304014100,100040011023101,110301030010140,104100002101431,101123232010002,114421242204443,110100222001100,101010001002000],
+        114000010022010: [102041310200042,110320202023400,111431110000042,110301030010140,104100002101431,103303201400021,114101420030202,114421242204443,110100222001100,110302204433321],
+        304410134022101: [110034300021014,101042401000112,114400112314022,103004104003011,114014010043112,100112440013034,100041001211002,114200134110042,102002201413004,100033020104222],
+        100121400000120: [101221422120021,103001024002110,100231114320100,100001000002210,100004130002301,101210300302302,110100012120201,102020131413423,110020204200342,100000220011133],
+        120204001004324: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,112021004003303,110331012224112,114100222310230,101002200301130,100011120000004],
+        1021234200200340: [102120214131012,114130312310220,101411010300100,111120114103002,100004100102242,101221101020012,100101210412030,102334110242204,103210000102000,103123321444000],
+        1133110010022414: [110102401201204,103020200141000,102400100230000,102414034040100,100212030414010,114011200003102,100412200002013,114312004002020,102020041321410,111340300010010],
+        120212142112100: [110120144200000,114022412330004,101200221022044,100103104302044,110241112020204,100002004104004,102020004000014,100014204201000,102103321411004,100400001001300],
+        1000010241040420: [100024210002210,100000020121140,110200000112123,103022204000200,110241020002103,102023021100010,100221020410103,101120241102203,100010304340120,110020010120340],
+        1122100002424110: [100410410002011,102101224002210,110311232120010,122203322100011,110330022021224,100410311001021,110123442011041,103021000110211,102201324110204,103010141222231],
+        100210303240020: [100000110410000,100001004104043,114022212300211,102104241412020,101200000304000,112014402034232,102102104002322,101003011000111,102000000211031,114200340003213],
+        111212300242140: [101001044211204,100031034311401,100023210021210,102100104000203,102000200200301,110200101200402,100000140100020,102021201410011,114013124030022,103211014030010],
+        1011220024120202: [102242240202112,100102424230122,100241100430021,101040101001202,100022001231022,101010304000212,101010010320220,112000002000103,110010040002340,142112232110201],
+        204010012101140: [114313304002310,112204010411101,103211010211331],
+        212010120203212: [110201201211024,100032201024101,111124004101012,114103220220104,102120004001310,100040341020133,111101344104210,100410220030300,101021204000200,101200111020111],
+        101040003402034: [102102000233342,102001140210301,103302220110131,110100111121002],
+        220430220011124: [104100002100221,104310001300102,101200011020000,112000044002102,114021132202032,112012004004324,103001314001021,111300220000230,114110032343001,103040024041111],
+        1123240110202022: [1300422220310121,120032010212320,1023422111011102,411001103222300,1220101103414143,320440200013001],
+        1401430311300300: [103202004001120,100120204003012,110202102121400,200304020022101,114114004000121,102022034012314,1300022002310414],
+        101313042403213: [114020000020001,1302101004142102,110001001100001,201014000241421,110400102312140,1043303323011400,1002000010441103,140011220320300,114200022340011,401400200400300],
+        300213220001120: [110101231202300,100130444102110,100001204342232,114132202313300,110223310000311,103010304012101,102210044010110,112000404000001,112000001121002,103103124000111],
+        200300020003100: [110222020012300,100100100422103,114244120001041,102120111142201,100021140000322,110010011212411,100300020142022,110102322040111,103230010114302,114010304010030],
+        100100000002201: [102001001110120,110221220004222,102020020222311,102412300200000,100400430022230,100010200100020,102141200210120,100101414300001,103001004014140,112320020200312],
+        1043002220010141: [102300221002020,103120000104021,100124221021011,114012002304110,100031200001240,101200140304140,102302234020012,102102010211012,102000110221004,101002330311011],
+        1004300000012431: [102030410223003,140400400201014,102422001400000,100301224310100,101020220323012,112101102012030,111201122241213,100002244100310,114022302300000,100143110421000],
+        133210000000041: [110033000022043,110100200030100,110430430003002,104412212102010,114102024123030,100432200033101,110132020031210,102340211000200,100020200102220,114420230000240],
+        240231110100012: [100313030142202,114122220031004,101221020300020,100121021011022,102013401100100,1132202011200221,112210102030020,102043030202102,114230024111000,100402120031033],
+        1040210003221001: [100003041020000,103100401443440,110030420441114,101002024212040,114110200004041,101000404001000,110210002031212,100000304102201,101010010321410,101213001014122],
+        1000122100102041: [102302144110440,102143202000400,111130224102101,114201000004122,100143034304100,102201024041200,101223301020130,100041004200042,100341044310403,102144002001240],
+        1141323022303011: [101032141001121,101000321002030,102000144014000,102100104002302,103212010100200,132224022200202,100231004331011,100200010434042,123102041021330,114100444004011],
+        1414013020102000: [101301014221122,114220040000201,100404400013222,110012130410040,100104101200201,111040100020010,112201010203210,100000214310412,103042320101230,100120430411222],
+        1101031321234320: [100040301042132,102102241341004,103031000121000,103002020101431,102020300220201,102020431101132,101404104000404,100012104210032,114213102324020,1041210023400124],
+        1011020001000032: [100023404242000,110033101044200,110204002123041,110002404210000,102300011004443,114102122200241,100201021001300,100022240120042,110212001204000,102224210203004],
+        122100120012032: [114221312340014,102434121112224,100311204312442,100001024100241,103000020100131,101211204201231,111130412210000,100011300412123,102000004001141,100000110100200],
+        1002140033020201: [110200422121211,114100004121100,102212014011000,101002110310112,102110304003102,110321010102000,100030004211002,100000311024240,100002041020000,102420010202004],
+        1404010111303430: [101221020011201,112310132020030,111200210001023,101101401020424,114030220011120,100011101011002,112002110240403,100100101220114,100002210000020,112410110201010],
+        102310010204343: [102021100220120,101222041041012,100032124210042,103222000100010,100100000021020,131213314114102,110020000000320,114010024020443,114021112203200,111302002221301],
+        1142013310040202: [101020204002030,114034220041220,102102231400111,114000204101231,100000400412200,111100232241200,100001020121021,102111024004010,103343010113030,114040202214201],
+        140404211020143: [102012201321104,101021004000000,101002011001110,103012301401041,100022130100210,101001301000011,100001020002400,101200034044124,103042224001110,111000230041031],
+        1042212201001312: [101400114040043,110230222121001],
+        1002011012031132: [102001000201100,112002024000000,101101300010120,100030214100100,101021104001210,102120334002020,101401000302000,101041204000012,100402200013100,110034210424200],
+        1010010040010131: [103220214030401,101000021034110,110401404221420,102120310322101,114012344100300,101023000300100,102130020224110,100311010422310,100010424104142,100400230022020],
+        121200103210000: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,112401014040034],
+        114022314112413: [114311204002010,100002101021120,102102012003220,102313114114000,114004102201202,100000101001431,101043024000300,100001044241012,102030420223110,102120200201042],
+        101002310004220: [101233330041031,111121024400002,101102041114021,112202020200200,112003414002222,101330104221320,110143012013241,111103322224400,102343044111203,101220141202202],
+        102042104210410: [110130302212044,103240010131114,114020312240022,110302241332230,114110200001300,110210011300123,110402220003241,110103100400230,111121134100001,102410134022300],
+        201120034040002: [101200011020000,112000044002102,102230021122000,100031224102002,102001024011010,103042141420430,102214001432020,101011420323313,102002104000111,114023024022000],
+        223210010231010: [111121210031101,112312022021021,101200101021000,102104210214401,103000024014022,114120010000040,101040000302000,103100120114020,102320310224141,102000404002002],
+        1403220001132200: [100242430032003,101412131010213,102020010200102,102202010204130,100032000002120,110022030110040,100424011014010,100042000010010,100003040422420,102000331132232],
+        1002100404013021: [101222321200012,103211144033404,103103240104001,100204104322122,100041301021020,102100011341012,100102001301220,114130000220023,102314224010213,100000120000202],
+        320321101040100: [102101324130010,101440004042202,114040020021023,111230114102201,114201102342110,101400300300111,102122302000300,100100204101010,114101200210030,102114020210202],
+        112003000100240: [102301344113012,102141124004222,102430201110000,114010200020312,112144220201011,100002131020410,112042422001032,100111200414020,102443421400110,114044414023030],
+        1100030101300000: [103000004012003,114000014014332,114040002210003,101401304040214,114441402310144,110430002023100,101002311031133,110021144413041,102000004014112,100200234220021],
+        1102223032103021: [102120012001031,102323304112342,110430320104000,110020221320103,110121111202231,110240020100212,110012001214430,110004431040201,113204011001300,114221002340120],
+        100124140040100: [102044104002014,114021004011100,102140140310001,102022000220004,110210001310230,102110111023103,100010144303000,100102434300310,100421200001003,114024200040223],
+        131421101020101: [110000411313130,110400000001201,110000010430211,110001212130303,100103301002044,101221311022241,110100231202400,110020102102000,100000201022030,100402021012201],
+        121321102023020: [1304031410000002,103224040221400],
+        1110002210110203: [102112432004423,102402124022000,102032204000102,100200200412034,102101230310000,103004041410020,103444024001001,101004004211001,101002000323021,110200202231210],
+        1103413200201012: [102404341113402,100140310020221,102033442000014,101214400304203,101200004010120,101204044010203,112014030203304,100123200410410,102100440231020,112023230230101],
+        1000021020100134: [102000001132113,100042001020203,102002320220202,100120010421220,100000201041300,114011200003102,101020104000040,102432101112141,114412142320040,102100044000000],
+        122030231324002: [110042011204212,111024024121404,100340001000212,110201102030430,110211011302040,100121301013301,100214011004010,100032400104331,101240004040032,100202024104300],
+        1002004034001120: [103002100100101,110000402000040,101000220301403,110300124420043,100212104030201,102400401401031,102201400231110,100213024220000,110003102131421,100403214302001],
+        210011030010110: [104100002100221,102000321102310,112000044002102,102134044134410,101202001022000,111300220000230,114110032343001,100110101040020,114012222301110,103120440104110],
+        1020020000302000: [110000012103121,110212201200033,114010234012413,100400310020430,100011040023100,110120134222021,102214214042032,100021234211320,102301404020000,101000204001132],
+        1002033200220220: [111332210000301,101404201014234,110231010421003,114100024002412,102321300210040,110022204200044,101031001020043,100103404234443,100402401011232,100400030022000],
+        1123002404100003: [111403414421302,100402021012201,100010201230130,100011201220110,110020014200010,102110020310200,100401200012030,102010111134043,110000014202022,110302030400400],
+        132312040000244: [112300002023320,114210032320402,114100002340230,101030200300110,111000114112131,110110412014004,114102100212002,111004220022422,114201012324201,111100202241010],
+        241020023100311: [110330400010040,100101231004020,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022,110020130044232],
+        1241130110010004: [110203022120020,104121030021030,114303000000120,100402200020301,102132204003422,100203321001203,110000210041101,110133022014110,110121311241021,110210020001042],
+        1002030101334100: [111101002241322,100000000120200,102132424020001,103100121423010,101004304210104,102120044002231,103003044004000,114010144020122,100002404210001,101102020333110],
+        1112201202020001: [100024040001400,100400322200003,100222141002002,101113000331203,110032101100411,100240241002011,112203124013030,100212100430302,100400412200020,102114044000001],
+        1420244240403402: [100004221022001,112210212031100,100102444032011,101120314000210,103222010102041,110034140040012,114401112200031,112420102013241,110001011322420,103021124040242],
+        104004210012100: [100214000430410,101100210320232,102302001102032,110003004412202,100100311001010,102010401101200],
+        134021010101103: [110100001200320,100000214101311,100004024202000,102200230202120,114200020003000,102112430210103,110310004424040,100033131043244,103000024040413,100000034344404],
+        1400031030000100: [110132010032031,100200044102003,100110231000142,102420210200041,101312004211100,110010030101400,100432200431112,111022114120310,114003422242201,113331432424011],
+        1043400020013011: [102230010201400,112011014020221,100112101011130,112310022020213],
+        1023121200024200: [412310220104121,114100222340120,132011000122003,120100010104132,110230010002303,103002020001300,1002203202101123,1304043431201120,423203002400042,1302321010020120],
+        100010311030114: [220103022224020,1304100402114410,1022200104230030,410142111403201,1002022230124020],
+        111100000211210: [111012104400010,114244120001041,110010011212411,100300020142022,103230010114302,101210211022100,114100202200202,112000020210140,102200230240322,102012100200002],
+        1110403002011121: [102144201343034,112132120202010,110002201320001,100430010431044,111020122230001,103040201222041,110111221000100,102341131103201,110000022003020,103104014002131],
+        1040101220404002: [102400010200011,101413321300222,100031004101000,1211200120132310,114200224001003,102201201002010,114310224030143,144203403221310,103304201400304,100011040202101],
+        1020014030200300: [100430221011100,100112434101120,103140301441302,114001302300110,101010000330233,112101210200001,101221104013002,111000014110023,110010232000300,111224122220314],
+        202030001001024: [101000041031301,100020424214024,111221212223401,103214400131240],
+        243243313212003: [114021010023030,103422000104202],
+        114323030201000: [100310120141002,100004001021111,103022021431010,100003000104203,102041410242244,102101220214011,114000424102300,102120231343021,102311110240101,102141020210132],
+        1412022410102421: [100243401002310,100004000100101,102020030220200,110031404423144,114130104001000,110014114201012,101004000304012,100022210410130,114034424104042,101002000323022],
+        1200132241010202: [111323002200100,100021044202120,112401000200410,102202210201312,102212444022430,111020012111214,102010002002034,103220021410020,100020104312240,114442120000403],
+        311022132121010: [100002100100210,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,114000044020204,100102020411200,114200302341234,103002110100200],
+        241023012214002: [110011414240022,111142010020301,102100104000040,112132434020310,100000144104100,102124031023100,114002104020100,114200024110134,103340114022112,101014014000004],
+        1401402042441110: [100000100120300,114202244112111,114011404103142,100202121000302,111000142201220,114040002300000,102002430222010,100101041011230,102323001001000,103004021432210],
+        303004103010002: [103011200100000,100302000140222,102122340200200,114000214021240,111111000020023,111344032200432,102400220203010,111000000012202,112012112300040,110024000410240],
+        111100213001110: [103132001240124,111040000020020,101042100313010,101120200320322,110021102200021,110210041300110,114104300212311,103200110103041,103110201240231,111430220001210],
+        220020022113412: [110011000022102,103021220104200,100021020104220,102202410240103,102120001343001,100112004101222,114202332330220,100030001041404,103043011400000,102100021410201],
+        1102301322130333: [102011214000304,102202000200010,100042010200121,103032441431121,103013241240202,101010001000231,102340031103401,103101010110042,103032214000202,114233200002044],
+        1002122223002012: [102420130230104,103000004010400,102040404010111,100000004310002,101021014224121,111301000000031,111200304131014,103020200123211,100000340120221,100400130013000],
+        121000221103203: [102203344011410,100021324100000,100002020410020,102103430210003,100012014300120,110100120400020,102414014022212,102012220241003,111120214102000,103130020213032],
+        1422304411001140: [102040001134000,103003410102200,102212010202013,111144202224001],
+        1120123022114210: [102420104002001,102020204010103,112202100203012,114000002201211,102230004011304,100020340212010,102000420200000,102442144021224,112211022133400,100221441000130],
+        130031010200020: [101002021020030,100242134100332,114401100001322,110422040001042,103101020110000,110220042123040,103414101210300,111221310002240,102241011101100,111140020012204],
+        1001410030220011: [102310120240000,111020022204020,110010002002213,110303100010101,103444110124002,120202001100101,121300000224002,103000124021132,101322301000230,110101020120003],
+        1011001010330300: [101233330041031,100013104102120,110412221244140,101102041114021,112202020200200,1022201020410210,112003414002222,110200241201421,110010114411020,110143012013241],
+        100410103221410: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321],
+        143422000001200: [102310324112030,100410130030232,103220101421001,121110020100002,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100,102024410220121],
+        111210020241120: [100133024330243,112002011133010,102343000224400,110014320024200,102141000212220,100010024101122,101021020320214,100001024240340,103001321240031,133321004220020],
+        1240200340101120: [101010424210144,102202000201220,102203011120021,101000424210014,102103122004211,103022230124332,114002002300222,101010334004200,103003040102120,102420041111041],
+        100212204303222: [102001000212142,114121000002140,110123042010000,102430321112030,111113004102021,102223231121242,102103132002023,100024121030022,100000020001022,111141224102220],
+        221243210101020: [102200211120103,100231411002211,114132040223044,100404202200223,111202000003000,110232400010300,100131201202420,100220111000200,101043021124401,100003010000000],
+        210412002030120: [102110202001010,114420200000104,100043200102020,103332044032320,111222000012010,114142014124243,100000004100411,114022344022303,102110004102101,102332201000140],
+        102010210420110: [102011201101012,102300304110030,114412000003141,100112011040011,114033300041020,101201220300012,100102030423010,102101004022104,101432240300300,101232104042101],
+        1010322120400002: [110034012104202,102300444113103,110402002023040,102443120230311,100411031000011,102012000241430,100032111220130,101201111024014,102010014000110,110220004211001],
+        1100120000002214: [101004120224442,104120221240413,100413311002132,114000320043340,111100030030120,100320421001431,100024004304130,101233021020010,110320002020403,100202024123224],
+        1021330002000231: [102320021000100,114010024011000,103212100100000,112341421131200,142100000024013,112404232010231,114300402320043,102101120211200,103110214004242,114021014023400],
+        1041201011130001: [110242002110210,101001331003101,100310424310200,103040011223003,100110411012240,100040214340010,100230221001300,103000004014020,102003400200101,112121104024000],
+        1440014233002010: [100112434101120,103140301441302,114001302300110,101010000330233,112101210200001,101221104013002,111000014110023,110010232000300,114102322200110,111104120022010],
+        1000304011012020: [101044400340202,100012034342242,114101422201430,111014314400310,100212210430040,114020000010101,103121041440100,112140010234021,101100004000012,111130010032011],
+        111114002000400: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,114123420002142,102023021321020,114040204014042,100040401020413,112414334044310],
+        111021140144110: [112302112020021,112010032340022,114120304000212,114111202313213,101042041021001,100010031232443,101211414040000,100012404203210,102104401140012,112000022310414],
+        111101142002300: [104411012102030,113012100130004,110000024200142,134230121002024,120300120422200,110300140101200,113112420100020],
+        1003003202220022: [112002110220340,102002220221002,114100234004010,100030410102000,112240334012440,102101010210022,100010031222001,110020200001031,103001114001210,100034021034000],
+        120002022031230: [114211010000210,100003040101420,101440004020212,110100201000100,100001024102310,100000004210012,102112000204313,111111024404430,102213204110020,100224120001302],
+        1004130300301200: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1023024011003011: [102023211411003,102340200224222,103212000212121,100100011010220,114114414122002,112002010220004,114320110001030,103211014000111,112120340203021,101243010302200],
+        1104442324000210: [112113214020100,103300344012201,100000130013400,103224041400220,100001321032243,100201104224131,103113010102100,102211430202033,101031321022412,102203001300000],
+        1224402130201431: [100020344302010,100002100000100,114100102340003,100100414230101,110130030020000,111214004444320],
+        1010220131102102: [102442024024214,100443211002141,102100330211131,100011014103012,100030220101040,101130031041024,101240021020011,100400020033003,100100110411000,112204130410100],
+        1143002030000011: [112202000411103,114003344011001,101203001010111,114003022300020,100031201030102,114201104114111,101041001003300,100001100411302,101414214021020,102320231001040],
+        140010100100004: [110021104200001,100302141003012,102004441124110,100000301221024,101224322120022,114100200002120,110310020040401,110200010014000,110202204430020,100002024303323],
+        103101200204302: [103242420100012,110224044242243,101400004022112,100100210000011,102200000200201,103110020210000,111343012200000,102201430201310,100022141030334,103200211410311],
+        1000001110121331: [110020301320101,114013212300032,114001034010131,110401041140300,103000121403344,103310041402103,101122101102100,102202001120002,110200010003201,100412041011012],
+        112411111044121: [100422040021304,100002010413410,101011210300000,101433010300204,101002221140440,102040021424212,110324444424432,100100001010020,101000000322000,100102021220030],
+        201012302100201: [103102300102243,110000000003200,111202004100121,114031000012100,100222220001202,110200000004322,110020014410200,114004204010100,100410041002320,111110020000001],
+        244020110002440: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,102002020243020,114002002300201,111012002200101,102102211140013],
+        141000010030000: [1300004001031100],
+        1002311410242000: [100300031003200,102310031100100,114002034102120,101020200302021,102230121123030,114020402303041,103000000104034,103020031420410,100002021020001,102322014112302],
+        102121322420121: [102014001130210,110002302201420,102421004041011,102240040202421,100130004300103,103000404000100,100040004331010,101203001022300,112142441100101,112420030202242],
+        1203001320140430: [103220011411101,101030404212000,114220014111304,101030301000221,102003111413120,100023101043203,114200122340300,102013024002300,100301321200402,114020420030200],
+        1403400402043211: [112221002043330,103214200103130,101011024213031,112222042030004,102230200204114,114241010002120,100224010430102,112100202301420,101210021000110,101000121021044],
+        1104224330341002: [110212122030010,100010014313003,110210000001240,100220001211020,110203200013020,101423441010401,110432100401100,100200010434122,111101202242012,114213114002001],
+        211200002112414: [102000420203042,102000211443214,100024000000132,102422331113042,102100231341003,110011124203230,114003324014400,101001204000121,102202210230122,101102014003322],
+        200101214201100: [110232011000001,100130004033423,102111301413000,101002120323040,111000212203022,112200422011002,114120122340141,112401112300120,111021202201210,112243004012113],
+        1101021200302101: [102041310200042,110301030010140,104100002101431,110221000111302,114101420030202,114421242204443,110100222001100,101010001002000,102030020224102,110022202130021],
+        1041122130040112: [110002010000240,101000014004010,101102041020024,100140010411214,112323000202020,110222004210002,101204431000204,100002120100314,101112001100201,100400032200040],
+        204111111020021: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102,100030010102102],
+        111033222130304: [110020111312122,112400100203303,102102310234432,111300232201020,100201110002411,100000224104030,100120121023011,114110340221112,101310124231042,102412034022002],
+        1021410140403021: [100030400013321,111100044403012,100001111000202,102032001030043,102311114111000,100310010102400,102044144002103,111020210000113,103014020140401,114200404111202],
+        310301002202020: [111110034423202,112014440221201,101022004002300,102311010213330,100021024310204,100022104100032,102001024002022,101003004212410,101000004214010,114440122312030],
+        1002100044014100: [100003021033300,100011011020440,102110020202330,100001010014420,101011001103200,114001214100103,101200004040021,114023314013200,102040104000040,114022120040112],
+        114320230201000: [101030001001022,110230231300100,100114230020141,100300121000420,100100001220400,102100020210143,100030024303110,100142120100230,101423100300002,103111300102020],
+        1401012200230100: [102440011414040,114121002310033,102122014003000,100020004100000,110201222031001,102140001444011,112040212002200,100332204310240,112001021122340,102010134000100],
+        1010021032030420: [100121200020000,102412004000132,110000002133140,101233341022410,103013314020203,100102401010230,101030021031101,100122124100132,100100124100031,103010201402134],
+        200021212200003: [102201124020122,100103034003113,101020301142101,100130120400120,112401030203302,110212000400101,112003420210300,114202000000002,112000100212200,100140100414131],
+        140430210140011: [101004321143032,110002210041204,101110100330302,112021412003113,111012044400414,110044322010013,101000024002220,111022040000100,110012041100001,114240322320222],
+        1042200323442110: [103011424002021,111202112220003,101002401020122,102220242000201,111010304402110,112114030224400,100131101022241,101132010320401,111100132103413,112000040241000],
+        1424020112010201: [100240000140032,101042104010000,114000122301411,104122202100000,102111002001230,111102010020434,100400204302004,110410000002004,102200210200442,100414231011020],
+        1420022302000340: [101221004042212,100303111000101,100202000430000,103101041210203,110400040000210,101230420300200,112004000213042,114240010000030,110113030403241,110022002001023],
+        1000102010040402: [100113444000011,112001144000032,101101400332443,121402220120031,100340040422001,112241020200031,122220022201102,102240100200224,122220002200110,130002111021012],
+        1441132222010024: [110101124221101,103300014023010,101421000301032,102121122000024,102301004113010,101004004003140,114020014100200,102320214110001,114411004143412,114000312331020],
+        1400010220131004: [111102110012000,100031201030331,101000344010212,102100431342023,101033141030001,100104400021023,100131400100220,100010000101133,112400020200004,103122101440000],
+        131043220000000: [102104321001201,103210010100224,110002240040003,100400040010302,102004224011140,111400220003310,110000241321331,100204230432012,112040012001112,103433244002210],
+        342401020011140: [110311002102104,100410204303320,102010420220000,103002311240000,100202144121213,112001032003010,102010020243104,101022021111221,112102010202000,100230101202040],
+        1101000002201100: [100310120141002,103214010102022,100043324210140,102324014112020,102404021403141,100010004313001,100003201021001,103104200210410,100122020011232,100002200410030],
+        1114014320002012: [103224310130411,100031411020200,112210400414000,100102101220123,112102400204000,100402210013023,112200302030311,100000001210103,112240024014421,100202141010030],
+        1403041021240203: [100011301040031,102101021341002,110002220002220,114404210004101,110011001100133,112121404020102,101000000300323,102322144112403,102024001102302,110031102000134],
+        120004302113001: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        131232004201020: [100020244100302,101201104041401,101402011014002,100002200412020,100102000423142,114410012310230,101423011010400,114000332303001,102141100210112,100022224312021],
+        103404234000314: [114420200000104,100043200102020,114142014124243,100000004100411,114022344022303,100422101002110,114124222202102,114000030012110,110004342000332,103102021443001],
+        1422101111313020: [111302204133040,110300000011120,100000221020004,101213020304210,111020010022310,114011302300101,102420021400002,103221200100302,100424444303100,102201000201101],
+        134202101022000: [101221020011201,102201204040211,114030220011120,110020442001124,110024102010002,100011101011002,100100101220114,111433000002144,100010021211303,100002210000020],
+        1114101104001002: [110443010102111,100441224303402,102020101324002,102401030202031,100210031004220,111321012222400,102000104002003,114203204004133,102401004020304,110112214200023],
+        1404140430204401: [110443000000102,102430100200123,103300001402013,103040001430220,102020201100002,101032004001004,100000020412412,114042244102400,100142000100232,102301300210214],
+        1002200423002401: [100120011004032,101100400333023,104130442103041,100303111202002,101003201030041,112314322001102,110000144202030,110202201303021,103031010100133],
+        120002002013020: [103202004001120,1300022002310414],
+        130140024030403: [114201010001201,100030024300201,101041404002420,102220310200014,100040300102020,102400110230001,102101011342100,102311210240013,101312211000200,100312131204422],
+        1022322202223001: [110022212134022,112014002002044,112000002300002,101030010320010,100421200012012,101441201011100,100032321230000,102320000212000,101100034021010,114001204104041],
+        141240040003123: [103020401400041,111001314111000,101031030300001,100100031020131,112111004022140,103110214000303,103000204000002,100403110013000,100030041031020,114001044012120],
+        1022342100000122: [110401030003002,102042014000100,112000201123012,101430314040103,103400114000020,100023141220100,101211204013302,112010100204410,100101130400000,112020011110100],
+        102231320034000: [110000302030030,110301311303102,100003200120040,110030124410000,110122021200300,101403201012011,100400040013420,101042004003201,102023000211002,110233124211010],
+        1013202100100201: [100000041040000,102401141113031,101200140044000,100101234301300,110210400002012,102331104110040,100130414300000,112310002020302,100020410410021,102144002000300],
+        1431003004201211: [111220002220100,100000241020022,101133410300302,132200010004401,100030044202001,110114410003233,140200430112430,112144312011433,110000040024442,101410044021332],
+        1100001011042400: [110010100442102,114040002330340,102130014134000,100041001020232,110033201204240,100003044241304,102440104022111,110031000024240,100434044100040,122430430314200],
+        211011110241000: [104404322124241,114030234020304,102200124012000,114002120023020,114421000001111,121400013334402,114413200000230,100103201040210,144000213202010,112020102300021],
+        124002012013441: [111041004113300,102020010203200,100011144312020,103110120210013,100020221040231,1012220402104110,102011204001010,103012004034001,102001410221023,101010111034000],
+        101001044024400: [110041030411301,103301210142043,100002024200142,102411000200000,100400014321101,114100122342002,110033041200104,102140101343110,114111104000423,410110432000414],
+        1120301330004300: [110132141121031,112101020422004,100021300101110,102030140000022,110201031111320,100000224100002,102024044012212,100000021030412,110403031140001,101012144004034],
+        110000222330404: [111410210001002,102104201320013,114220104000102,100011301000021,114310214033042,100100001040210,102014001441210,100013224103322,100000004100140,101031221000201],
+        142210002102201: [102011114002011,102031401100332,102144201402040,100014201021012,110000214214420,112010112000311,110030441223002,103010400120230,103002044010020,110100122212220],
+        241241223132410: [200224331000220,101231031400202,102022000213102,102001304002000,110231402124034,102000444004121,100400100013010,102311214030014,102200000203210,100401002201241],
+        1000044010221033: [110212022124220,100003100410042,102130124000000,102010421413322,110240301111040,102113131343200,111210044101201,111100402200230,101020321002002,111123014100000],
+        111010014402113: [103100010212020,102102011401410,101340141003001,101014424010103,102311410222022,111400220030034,102032101130000,102120404000401,114100142310322,112000112001400],
+        104020343140401: [103000104004220,101002244004011,101442024042013,111020114400020,101010340331320,103031100142002,100241131003241,110000040420100,100201401010000,111244100002012],
+        100134211040222: [100003021033300,100011011020440,102110020202330,100001010014420,101011001103200,114001214100103,101200004040021,114023314013200,102040104000040,114022120040112],
+        240320131230401: [102041310200042,101000304014100,110301030010140,104100002101431,110221000111302,114101420030202,114421242204443,110100222001100,110302204433321,101010001002000],
+        1020211320230012: [101100011102402,100001114303001,103100214000130,100002020122000,103001031403201,112110032304211,114040410020022,110033020003012,110000400030340,122333020133040],
+        110021231112100: [102103222002012,102100244002003,100033010002203,112000101110002,110023000020110,102000200200132,110040240001222,100000404312040,100040004101142,110202112120001],
+        1100210221210332: [111120002211010,103122000100403,102023120241131,110014300041302,114241000002004,111232000010230,100424200020200,110321001330010,100000300100000,114220200214400],
+        101112220100020: [101300000310011,103122001440001,111024044110202,112402014024010,100103000420004,114232014000440,112420312022001,103141000210223,110003300143000,110001102001200],
+        312330042000110: [110122120100022,111100424100021,110111121011004,103001020104102,110200422113400,112000000223310,100002214210110,100011200201230,111001002201034,112024144002202],
+        1101014021230330: [102140304001042,100202201002113,112210124040040,110000121310000,100002101120040,100033021031202,112113414024020,111110400011022,103401121200201,100004340000011],
+        101044210011300: [110023410122402,111204200002001,103001111221030,111200020004203,104101201240100,100141101040300,102301112004021,110000011012202,100201230412211,101001040302400],
+        323043102012212: [102204001121032,100003121032014,114000030020101,100030024102010,100120120112100,112044414003133],
+        120230102210002: [100001000410312,100110130411200,114012112330402,114220402322030,100000311043143,100132021014301,100101034031000,110133021140410,112202222021041,110101200002340],
+        1000112011142020: [112431212020030,103100314000011,102202000231000,100401002200022,102003301120121,112002044000432,101100204000001,100422224100400,100000421032010,101010011121020],
+        241003200000211: [103114001441122,100422004320024,102420031111001,111000302230100,114044144020400,132202000104100,4000113102314022,114334222300122,114140002204140,1400100000042343],
+        100112411201011: [100002421031242,101212010301103,104000000010243,110441102112020,100122004323202,103040230104020,100011020140201,111220110000220,110300212000100,101114110330010],
+        301333020022004: [102041310200042,110301030010140,104100002101431,110221000111302,114101420030202,101010001002000,110022202130021,111330020002213,114011212320331,100002204310140],
+        1001001410014420: [110340200010100,100404304300114,103400021210032,101300000340142,100011314203210,112222424010200,100210001201240,112001102001220,101204404043201,114110210231202],
+        112224200123142: [100042304102210,112202000411103,112132434020310,101040100302002,100013030100002,103340114022112,100310034310200,101014014000004,114003022300020,102111210230204],
+        1004120311242040: [110340421234021,114122202343044,100140211021431,102110010204021,101001221110000,110402102210002,112230202030200,101434401010412,110012210031100,100131144000002],
+        120002030020000: [102001001130100,111204203012002,124020002020003,122222120003214,133332002141010,144000013213001,124010030100142,111032444402403,110103201001321,102311430211100],
+        1140044230000342: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,101110404021211,103110041442122,114210400000112,114042014102321],
+        102400320000212: [100120221021011,111242212222022,102022411100012,103220200100320,101030004004303,114000020034200,114010214032000,100010001040020,102014014004002,100004120012002],
+        100110120010004: [101012000300043,110422011240010,100010004101244,100432211002022,110100012142010,102011114001033,110030042003121,102120001340020,111023020021014,101010001002102],
+        112301043220100: [102231102020200,102120201140110,100331200141014,100200011002042,110224102230230,100120411200320,112401344040043],
+        1100120124003122: [114201010001201,100030024300201,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100,110012404201130,100021100412012],
+        210414002110123: [114010200011100,100102110412002,100000204214001,101142014202110,102310110213220,100012001042030,102000404000400,100013040404011,102004004004200,101002134011001],
+        341002431430012: [100020300200110,100042000200211,101004140304211,100021024100301,1101210010010223,100000241033100,101000124221041,100000134100120,101012010303400,1300102043130042],
+        212410220140021: [111410202221302,110002302101012,100111401011110,100114110411042,100223010432101,100002004340344,110100400031432,101041300300004,110204201213200,102141311343023],
+        104332030030410: [112010420232040,100032114202001,100220410101001,101023024210000,102140322001242,110000442001100,110201401201230,100100311044101,112013124020300,110000020440133],
+        1020042100021110: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        1400110440303012: [101101040010000,110021040023140,102004001131000,114002320024211,103031301240234,102121100212102,100114100000104,101300004220200,110020402120123,114320114030010],
+        120443021001140: [100024000110221,100110020031042,101301014221122,110422102110221,114220040000201,102102204022310,114130014001202,110010220103020,111004100022110,103030040121410],
+        241141200002401: [102001404012100,1010400230221020,102302200210010,102340120222440,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122],
+        1023001200413320: [110012220442042,100001114303001,100034204311021,101121024024120,110023100420044,103332211400441,103011131430040,110320204424100,114200112330011,112202114010130],
+        1013000031040302: [102101204000030,100011140101103,101400304020120,101003001021020,101420220300100,101001004002021,101012124213020,101004121020134,104102220014110,100040004100310],
+        123010001202014: [104100012102004,110021232000021,100401241014100,110301322104142,100001140000010,102003000212200,102420020204200,102000200222121,110033002000020,110343014421300],
+        1010001221112030: [110430430003002,104412212102010,114102024123030,110300011333202,110132020031210,101021404000220,100020200102220,110414012023214,100400100010101,114121200222010],
+        100002323233111: [101230002122040,111124004101012,101210241204043,104102040011120,114103220220104,102120004001310,102430121110340,102020121102120,112141104020201,101200111020111],
+        1400100300120011: [102322020212020,114413232320000,100100001040134,114441124140100,114000002330112,100020001030232,114422234140240,102341041104000,102000100221110,102341004020202],
+        130110334030001: [100440444301004,103304014020032,101221121020230,100232121210011,100004110000301,101310004223223,114113004120221,111210402244301,112022200234200,102100011341140],
+        1110010211201000: [112302112020021,112010032340022,114120304000212,100141410402200,114111202313213,101042041021001,100010031232443,101211414040000,100242024100000,100114020414244],
+        120241012104130: [100013304331301,112000022302210,114300014030130,112021204000310,114021140030012,110014240130030,110221412114120,100131241204104,110111242012201,112021224020432],
+        1032230001212043: [102401121113302,111201210000103,100101101010100,102321044112101,101203011023020,100021231020200,114201112322020,100042020102003,110324010400214,100141011023021],
+        100022113200002: [100101130423301,114000100020002,100040321020030,100400000010033,100400000013010,101322020313110,112020002002301,103224101400400,114020000010111,101000111001423],
+        120300104003221: [101400100302311,102141000230040,110030024202101,110100224200101,114000102300220,111011022203010,100001000100020,100132444234001,110103401303010,102042304000001],
+        1000010234100001: [102001231413224,103003024011120,102030024010020,111320000001004,101004204211203,110304000402222,110201002040204,110001141011223,110010402102122,101211220310040],
+        1030004024000002: [111020030040120,103030404010000,110021002130201,111302202204022,100120231204012,112003402002003,101023114001014,102012044013241,100002100122314,110012010122100],
+        1002211401030024: [1010400230221020,103034010121101,102302144110440,111300400002313,111101040014040,114021040010311,114140004123122,102143202000400,100002301021040,111020002202333],
+        120000210223020: [110020010134221,100004020411020,100300321000010,100000421021322,112331012023100,100021010100320,101001030303000,110031210000110,100431024301030,101222321204303],
+        102004122023040: [103000004002012,100002011042020,100301421002002,100202140000111,103022021431010,103200020111014,100240101000030,101003104212220,102120231343021,102302211002004],
+        101403010243020: [101021134011012,104120130021200,112421004012141,102011104010201,111100220022101,100021104201130,110030410040101,101300401002320,101110434020010,114330002300133],
+        100004132023101: [101321001000010,101010424210144,100130014300042,114034400040402,100010100102032,112023031130013,112010344023013,114002002300222,102104000210330,101401300301000],
+        210042234020000: [101142124022010,111200012220040,114130120222102,100402120031033,110244004430214,112022012301001,102101104000121,1000000230020301,100102411011142,112403004010231],
+        102021030310000: [111000022202402,110014032101430,104421312102244,114131014101010,102002301442023,102240214041033,114200322333401,103010021422042,101110000010122,100000001022401],
+        301042000003204: [101042104010000,114000122301411,102111002001230,111102010020434,110410000002004,111424002101030,100414231011020,114243204113000,103130004003141,102323210243022],
+        200102324420420: [101230002122040,101210241204043,104102040011120,111311120014011,100123011004113,100420001002101,102430121110340,102020121102120,112141104020201,102000024000002],
+        102012303100111: [102102341400400,100013114210003,103004210100021,110401400000302,101041424000304,110140000001113,110021232002011,114121044001401,110410310002012,102204120201122],
+        211201032040002: [110200140401144,100430200431021,114310100000110,112002020214003,114400022311400,110010220410220,114040010022000,101133104002112,110400320001110,112140044022100],
+        110012114000204: [104103101240204,100020341001100,110020110400102,110012112103040,100104204100000,114222204112403,102040011412033,102201230202444,100411134304010,103222001422300],
+        130411200214012: [101214440300301,111102214104403,100132004231230,102301024113440,100000030000001,101104120334002,114123234100223,100222024100230,110302302001423,112000042000001],
+        103423111232000: [101444024041143,103020001400040,101023020301100,110200332041001,114004020010203,102014001441210,100203030110000,101004200341000,103033034022011,114022304100241],
+        110410111032004: [110332424431130,110011414201101,114400104140001,111120442100320,114312112320302,110000121033240,110122114404243,103100024003112,111010242140140,101112121144002],
+        1411102124400020: [100222000004100,110002001222210,103122204002112,102120000202211,102112004101201,101103320301203,102011001102101,100402020013010,110003004212001,110310430012302],
+        300140010023311: [114122104140200,130031110003001,400124411000212,101204031214100,100002010410120,142201000002020,102242201301140,1321022130413330,1023031101004142,420023000041240],
+        1102110212114002: [101204334232020,114014224011404,110012302001040,112012002303014,100210421004302,112040201114201,102003101130231,102240200214023,100101200410420,102101024002102],
+        1430022100220030: [102041100200402,112100404000230,110400112021140,110112121002403,110122221240302,102241230200120,110201111200204,110400104222012,100000001034120,110000002131031],
+        101022400320104: [110214024430312,100011014100041,100212341003212,112013212032000,112010220224003,100200001001300,100012104313201,110212310000041,100040424310110,111301332200104],
+        1000003131413201: [101410211021400,100004214100234,103000011400001,110402410002000,102001011442200,100324200110130,100342120144000,102020001440011,100100031003220,100202114303000],
+        1010230110102001: [102010010222302,100400120020132,100121311023012,110020222000021,110003002121021,101003000321304,110030130030200,101101111042020,110010300431001,100021030111242],
+        1113140101032000: [102023211411003,102340200224222,103212000212121,100100011010220,100124011040300,114114414122002,114320110001030,103211014000111,112120340203021,101243010302200],
+        1020312402402124: [110020301220324,100222004320102,100041000010302,102020100243032,100031001020040,101110404021211,114042014102321,102112222001200,100021104100310,100104024300120],
+        1000204023341114: [103242420100012,103130311444100,101040004010012,111343012200000,102201430201310,102340040222321,110413402111101,100004101020200,102422000200303,101222220302400],
+        103430013010243: [114130012310000,102112432004423,102402124022000,100243120430140,112214431102032,102032204000102,110120032013303,102101230310000,101001030310014,103004041410020],
+        140001301003021: [110023401320200,102301224110000,110000312001020,110214110004122,102133211401043,102010214000003,114032204104044,103002010100104,100220310430010,102410110232000],
+        1040404030124340: [100104100022200,101120201100110,100102321001302,132100001222020,110244014240010,100142401012040,101320420300210,102100234022140,102200011100023,103021044011200],
+        1020232111010140: [100423004302232,110030220000310,100110034332223,101223100300200,102001034002201,101104401020410,102032031440302,100113004304010,101310311000124,111303214132004],
+        1211200234102112: [110021000410432,100042304102210,103202000110102,100013030100002,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,110124041140000],
+        210430101201321: [100400000020210,100032000002120,114011300040140,102313234112000,100424011014010,111101100020030,101010224210000,103003210141014,110240032042222,110200022124020],
+        1042032203340200: [103000011402201,110301232000100,110021141213001,100000244300040,102332001001302,110110234204100,102001021132022,114004310024404,110210134244100,102102032001300],
+        1121203101224200: [101101401204230,100300304101202,111220014133001,110301010010124,101311324220211,103200041202101,110213002020030,103132300122020,100103020010000,102220120230010],
+        1000214120001004: [103000004002012,100002011042020,100301421002002,100202140000111,103200020111014,100240101000030,101003104212220,102302211002004,114030310012122,100043021042120],
+        1102301203103310: [100032041021210,110004301222000,102040011121100,114310000001232,111322234130000,110104002010100,100030024303023,114142044120310,103100104000121,110024140142000],
+        1122110014210024: [102300100242401,102010004001300,111223042243230,101221121020302,100100221040404,110000124410003,112122034041020,100000030022004,101032341110042,110110121300321],
+        111312400002223: [100231024320200,101001221022240,112014020232401,110201200000412,112224040202200,100020120112303,102403004020021,100041404202111,140322200322441,103243214023020],
+        1004100022122420: [114404010003320,112000002000420,100013200412401,114030412303102,102200320200003,100430000030122,114300104032040,100100101040120,100014011034001,110143001120200],
+        140001310300200: [112004202302034,103300004021200,102122214131011,102100104000040,100023031000024,112120224040040,100020004101012,102402000201011,102311011000200,114200024110134],
+        1110200212002001: [102100441341013,111130224102101,114201000004122,102201024041200,101223301020130,103312401404300,102322020212020,114403304140021,100031131042030,101010134000004],
+        111102100202021: [114002114012041,102012111102321,100111214302000,100104104302020,102212010200043,102000000221201,114121024120120,112101230204411,101202134232021,100012334310110],
+        304024020001100: [102100321320100,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102310400240000,101201340300430,111320312222220,102210000201040],
+        114224120220113: [102000004002101,100422314300200,101403014020203,100123011004113,100420001002101,100042030120422,101134224001001,110020001224021,102321234111310,101004010323441],
+        1101020301403100: [103100314001030,114101004121020,100040301042132,114010040023411,102001010222103,101021104212100,102102241341004,100000101030412,103031000121000,102020300220201],
+        123212203101140: [104111102100000,101021004000000,110000102100212,110130042014110,114423100002212,100011401040040,111121012212042,100001020002400,110012102130100,111000230041031],
+        1004020020011032: [102030004002200,100040014210402,110014012001011,102202014030042,100100410401030,102000040222041,100400430022423,100201314104221,112323230202030,102303044033020],
+        121300041012021: [100010441032031,101231211020143,100022021024200,100024100201424,101012011001200,100003014211000,102012214003000,102142020212310,100102204301113,114100220004120],
+        111221000012204: [101421000300000,100231100410023,102020424011001,110210000123320,112130140200243,101043130321113,101120100020310,100400420013021,101212040300120,101000121141320],
+        210143112113133: [110111400400013,102101300210200,100041044100100,102041014011220,102301104110010,102320001000040,112300031103011,100100140024100,101420321010000,104100042101240],
+        1002014022024202: [111203024131300],
+        130000124021121: [111124004101012,104102040011120,114103220220104,102120004001310,102430121110340,101021204000200,102020121102120,112141104020201,101200111020111,110001200422320],
+        1033242102113400: [100002031120341,113020001020004,100003044210040,103243401401133,110012212132410,101210014200430,110014011320012,110400022122040,101111010020120,100223400002001],
+        114102140114442: [110000202003120,100130220400000,102120010200131,102312300220000,112221024002232,101142014202110,102310110213220,110020120041030,100013040404011,101020111140040],
+        134200101023110: [114020000030002,100201211003004,102014002000401,103103241421322,102221414000020,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        142342323300004: [100003011041040,103200141404212,114014010043112,114001112300222,100203141001002,111000312112404,101002301030040,102033001133411,114122440000024,103000020103121],
+        1110044101010300: [114010312242141,102401221402002,102102011342302,114000402330220,100000044203240,114304104031224,114223100000020,103143000120100,114100212201200,103001010120120],
+        324040400134020: [112024442000120,100024010200212,110200002122130,112002022302433,100010021042030],
+        212100120211310: [101204444040122,102114240204013,100011301043341,103001000120011,103121020222040,101102010301021,112223222033013,101002024003002,102011010232300,100002200202041],
+        103100100242202: [102343230224321,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,100001104301200,1001300002020110],
+        1030103000200410: [112001002002140,200003230020033,114101104124300,110040000440000,101140114004004,100402320010000,111104300010000,101040030302203,110131421320200,101201001012001],
+        1012100000112241: [100444212001030,132110011201141,134230121002024,100402310022042,200101033142340,100310001000200,103012001410200,100233001001411,103211024020021],
+        1211312202020100: [110000012103121,110212201200033,114010234012413,103114001404102,100400310020430,100011040023100,110001012001403,110120134222021,102214214042032,100021234211320],
+        1000001411012400: [103304001401001,101210104011110,113422210102022,114002014102000,110201021102400,100123110402022,100030300121000,101200001022000,110021102002003,111124004102400],
+        1401101140012203: [103201200111010,110430011311010,114102344121242,110012231322200,101022000320120,114003300023020,110003310021031,132202044122440,103224324020100,102102001000010],
+        100341020001013: [114400034122341,100001101023021,103020001400040,114002004033124,103030324000302,102101104000212,111120010020104,102002304010024,114022304100241,101000011111400],
+        1141201331100340: [102021400220100,102301040242220,110101312120110,101020041110102,102110031342220,101401414024002,113001042202101,112002002021204,102140111141440,101222131010322],
+        104310101024114: [101211002120221,114421404120314,100200120430120,111110232213021,114202244003043,111002042204201,102100144021210,114443002314112,102000121101120,112002200244001],
+        1000121214201210: [102340200224222,103212000212121,112002010220004,103211014000111,102000034013222,102030021100041,103210214042004,102311020240120,102110110210032,102202001113034],
+        100432030420010: [100114041040204,110100114220010,111220110002020,111040004110102,101022200320001,100040010400120,100030140002221,110404111001032,114140102320411,103022031411010],
+        241301122240320: [104110021244203,102224101113104,102103022002001,100312331004000,100142431013000,101000031001011,101010130321200,114004322330012,114202144102100,102102401412242],
+        1001220102031103: [114100012313002,102001011442200,101004202403121,100304320140012,100200034020100,101200100301000,110100000100000,114404240034104,100020001041202,110104000034043],
+        221110001000021: [111123010022304,112003001133011,110213002132000,103010000110210,114003014100103,111010132204402,112102204024002,100100424030003,101000131030120,100031000004222],
+        221014011010424: [101012000320221,112012002303014,102101204002343,100004340004131,102010031100000,100200411000410,111021220021002,100131201202420,100220111000200,102221014033000],
+        1023113120020310: [100402210013013,112032040234431,110010232004000,101020004000000,101004310324302,101010030302022,100120040400011,100214044220201,110410002020200,114321224032200],
+        110020000330402: [112233000410001,100021214200024,110102044223300,100230211001001,110402042222042,101001411000403,114014000010301,110102100000223,112121212311000,103004011410021],
+        1002412241210120: [110400112011100,100321004011041,110002342100014,110241024242442,110021312002040,111101042244210,110441010002400,112220001100200,114203104001000,114302200014241],
+        1010200202130120: [114004104100000,110402100100230,112303010200000,110001120042000,100200201002303,102000024012202,114200204000020,103111000211000,100003104300143,103024141414040],
+        1034102201042200: [110211010014110,110140402004020,110012102100200,103000104010221,101012104010033,103024014040010,112201421101233,110032114200240,111300432201011,101000201032022],
+        301412132130021: [110202004211120,110223224433004,110341010044330,102031144010424,100302420120212,111212114131222,102140001441301,102223400201104,102342120222031,102221010201113],
+        1010003001121012: [110041030411301,110001041213031,103301210142043,100002024200142,102411000200000,100400014321101,114100122342002,110033041200104,102000221442214,102402104022000],
+        132234204303001: [110400022010030,102130411411444,103103204000110,110202204213200,100441301014410,114142102344221,102404004001203,114001024010010,111212204420203,114230020000033],
+        1102000022023100: [110002212130403,101042411000122,112041402312040,103023021244000,100224210432130,101002024012004,100120204234213,112030022300112,102010204002000,102102004031113],
+        1030010401020022: [102224024011142,100101401040102,102322001000010,112240330200110,100114010023242,102014001100101,102100401400123,114010120044013,100032204102203,220310441312320],
+        1040221243020001: [111202114103220,103000121421121,114404302200120,110140011300020,303320304020413,111020012233400,1000313001212002,110013024421020,110001002010000,101043021021030],
+        242040330022142: [100003021033300,102110020202330,100001010014420,102101220214011,114001214100103,101200004040021,114023314013200,102040104000040,114022120040112,102311110240101],
+        1002041020223101: [114201010001201,100030024300201,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100,110012404201130,102311210240013],
+        1042211233322113: [103130311444100,111343012200000,102340040222321,110413402111101,100004101020200,102422000200303,101222220302400,100044201210002,100000234101201,102402040200201],
+        1422302220034312: [112000302030120],
+        1100012213200103: [112014002002044,100421200012012,101441201011100,100032321230000,102320000212000,110122240004011,114001204104041,101240020300231,111240120002010,111102212220414],
+        312122430021021: [111102010012102,111300030012334,110012000141104,140300020110000,100003301030120,103044004034040,102200301100040,102412140201410,102024110224001,100341231000131],
+        100100001423312: [112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422,101002024000400,102202031002304],
+        240122101002004: [100232121210011,112022200234200,110043132100300,102220120203200,100002004201122,110132031134031,1220302241034202,100240200430040,114110342312140,1202111000310100],
+        100300221400004: [110001230044420,102100111413102,102201110210331,100012010200202,114330000002220,102000401130003,102000211410100,114004312330002,100110110020203,102110214004404],
+        1044101301024431: [102010104000124,102424000230222,102102100210000,100002420121000,102001301320420,110202012033100,112000001132100,102213214030121,100004401020202,102002001442400],
+        130101000320304: [100212424322433,111142000011122,103020201401020,102000401132401,114022020042232,100200410434002,110002022130324,100221124121143,100414300433033,102040001032100],
+        100024402024202: [110000212000300,100000010202003,102400001110102,120413040002400,101221001202021,112020102001020,110000401310201,110001004413010,102001030240003,100040331020102],
+        1400001000201000: [100003224334120,100404224300012,110204130004030,110003200132101,110202120003032,100322004314021,102022010220223,100404000020012,102343301100440,110110440020002],
+        1001300331002023: [102010040210212,140230300211231,100030010000110],
+        1000400210410031: [101400001011042,100002011020211,100100110010010,111110002213142,100002131030310,111102214100400,103220201402330,114020010040100,102100002004041,102321000221140],
+        113333000102303: [114402404141241,100200400430003,110212022133311,101041210311410,110022004211030,101210021021243,100140024230240,112230240412241,110000204203220,102214000210013],
+        112002142001021: [100000020004101,110011232100412,100220040142222,110232002101410,110020120040121,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300],
+        1001040042401010: [112401024044240,114203400000000,114014124030001,110021401213103,112102004020111,114000010042420,114102010210000,100400332201021,100042021022002,100100004300002],
+        1004220004021402: [100043104240004,110002034200042,100001240100033,114100304002030,102100001340122,111000200040314,101014001001410,112030010234104,103414101212410,100123021223100],
+        123112032002242: [114002200000421,110240301111040,101020321002002,114030004104220,114200000003241,100104004301000,102301041000014,112142011101404,100210004221341,102230410202021],
+        1020100200221242: [101133001104410,102113110210240,100341130142101,102100300210100,1100000411441420,102440100200000,1002203010011112,402001100011120,100020321030202,402202000003002],
+        1004021010330222: [104103201240410,100300204010001,100011320043322,102204100232030,110110012110224,100200011220231,101004410311320,100200310110000,102002122014040,103112010212244],
+        1420112222101032: [103240411403020,101020030332430,101022004214304,100020101031131,101010000323030,101001414212120,103310220113140,114200202330330,103101101440200,102114104001041],
+        131320310024001: [114033300040100,100000000412112,102330040242220,102310400240000,111320312222220,101241100301411,102002140220202,103000101414111,100001000012021,102304001004200],
+        1114011144102002: [101020204002030,103100030100010,101400004022100,114031212300211,102013110201200,114023010024000,102042321440100,114000204101231,102300121004222,100000400412200],
+        1023002000202412: [112000112000031,100142104100403,114202204113222,101244001000204,100340000140032,112024000213011,103013024002104,111000004400110],
+        1121130004304101: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1011224200200000: [102101004000411,101200210300413,103210021401223,100323140143012,100004411033203,100002211032042,103202211423100,110241042102233,114101000003304,100100314102200],
+        1023004101000202: [114222004004201,110400323041022,1134000004202341,101140334001111,1012321211130014,103224040221400],
+        100300203122004: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,112020012002031],
+        112014030121410: [100120011004032,101100400333023,100303111202002,101003201030041,112314322001102,100421320432102,110202201303021,103031010100133],
+        110112010031201: [114112432204002,110412001240302,102044001440122,102400304042142,100110004103103,103230304022210,101004204000013,102023120204401,111120032214004,100012204310100],
+        134040004240130: [110001022000001,110002012000400,100021004310222,110020422131120,100001000100000,110202222043022,110313312021120,100220214333200,110330234422000,110243000001123],
+        1042024202201024: [100240000032004,102000000210211,111010204401023,101200010300001,102211300204221,100301004321221,101220200040320,110440100030213,114402412200144,100031200001240],
+        1034212044240011: [112102202040000,114100002204212,102003000212104,102030204000041,102110021341014,114320100002004,100210120430200,110203221112042,102110001401222,111201300013403],
+        124300300221202: [110224044242243,111124010022000,110413402111101,114313302330131,114223040021400,114220334110000,114420004143002,114310000212010,102141322000030,120310230422021],
+        1034202041042044: [102020314012030,102322020212020,102020224000000,101242101020042,100031131042030,102421010200213,114021040001000,114110000002010,102301141002223,114000002330112],
+        122001021422131: [103204214040130,100142010410011,102041410242244,102323201000412,102212434110001,112102314020000,114010002304030,101300040310000,100012124101001,102110021023034],
+        1414000200320300: [100310014310311,100400000031312,100400010013000,114110024003013,114142102344042,114114040001042,100000030003111,103002004001434,114200000001000,114031122210003],
+        1000302102201001: [101122104200222,102130104030203,110220032110210,100040114102013,101000004000014,101100024022142,110140004200421,100010204313001,100000000004000,110024022200410],
+        1202334024124233: [100121230031032,112000431120410,100122200012014,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,102313204114304,100013200100011],
+        1101014103403301: [114300022300010,102011424013030,100420014301302,102201102000000,103012220110230,100120421004010,102012021101230,112220430200204,103121404002104,100040424301120],
+        1000030402214111: [111022412140224,100212034221414,100121301023030,100020224310403,100020424102200,101121401110420,100200001211010,100221044022102,102414000204201,100102004220432],
+        102202141021001: [103120400210000,110234012243001,110000214202000,114223212320410,101004020312432,100302114311412,112214114012021,102220311111011,101200204234130,102410004040302],
+        302000112020002: [110240301111040,114200000003241,103103404004112,100110120023012,101042044010040,112021014022022,112002322032030,101040401030013,111300002204430,102202144022220],
+        1010310001322100: [110200000113011,102101001340020,110002202130110,102032114021101,102110210230401,101040040322202,101422244020101,102142120224022,102104100233030,101210010304011],
+        1421020201234204: [103111010102100,110230024213001,100403312201120,102220030200111,100411221010100,100421001011020,101022401000022,100000414100213,102300011003010,110000321010110],
+        1012212002012302: [114003212210013,110302012103114,103023101400002,110010120440200,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234,102043221012112],
+        102142440100142: [102232120200100,112000142000331,112100302012200,100022341030311,102010100223003,102101001341304,111004314403022,100402100022022,100040210100004,112042002002400],
+        143113013210042: [102430401401200,101401000302120,100000020413120,114430014144403,101343421000022,114021424032110,100023024342204,112020002300103,102012021102214,110102200030440],
+        1001020304000241: [100021400101221,102241341113010,102300020241001,114100124100413,101001114012114,101141400302200,100002044101122,103342424024214,100100021040420,112002242001002],
+        103410100000040: [110424002020032,112002021120230,100032344310121,100302230142111,110010110002202,101412010300340,100102244234110,102020341130000,110102020012000,110102220020204],
+        130210004211201: [114020202300000,102020010221120,100104211041401,100010400101020,101220021023030,102001001100042,102000020221210,100020131031104,102121040220201,114014102300002],
+        1423300020022040: [110020231214220,100002000000200,101040200321020,114224000000010,112413012012020,102010104011031,112004142303000,102044421103004,100004100020020,112212000202012],
+        102010110320040: [101232314010241,100301300121100,110042400130000,103020124010320,100021300101201,110230022122031,104101201240100,110000011012202,112102112301130,101244324043222],
+        1041013411400020: [110230030014304,101421211012113,102000121122221,101222200301320,110002012103110,114112244000201,110020210040142,101000034004034,100204141000201,100121004300112],
+        203000421043300: [100030001020201,100242141004122,101302401003202,100004004102002,100011114300334,112020201120340,102303004110022,100110201042101,110134201140010,100000001020344],
+        1022220114241420: [110120200032000,114132242201400,100033000122213,102140011140002,110110402012311,100041200201020,101422000302424,102204024011121,101101430332010,101012100320111],
+        1013201020121320: [101230111024130,1112100200412130,1320100232411004,1000104021012332,1020024112001010,1000343442023043,120100010104132,111401004420001,423203002400042,100141040401001],
+        1101000211211030: [112112014020002,100004414100021,102113101342120,100004340100020,100002141021000,100013001030230,102212204012004,100042001024000,103101004000424,100100421020012],
+        110104042210201: [100031034311401,100023210021210,102100104000203,102031011441221,110200101200402,102021201410011,114103020221100,103211014030010,100034124101023,102400004021004],
+        1001310440104414: [101001044211204,102100010233022,102120400212001,114313022302101,103001324000110,100002014200021,102300401001010,103212320212011,114000030014400,111120034400000],
+        1400112300142210: [103030411422014,103043334040203,110422201312402,102120131401230,110200302024000,110210020104031,113130020101411,102041210224224,112200030203124,102004020224404],
+        110120400100030: [114011322300320,102042321133010,114011142210000,102200411122001,100200011200124,100201301002301,103233224022102,101200004042014,112120100220010],
+        1102000001241003: [100003031030034,101001044211204,100031034311401,100023210021210,102100104000203,100000140100020,100002014200021,103211014030010,111010024402022,110000030411013],
+        1122204010000404: [101200400041032,101041310301004,102232110201100,103001224014142,110000000143124,114431224113420,114033012202420,111211002241330,102012000213011,112040004000012],
+        100100004302220: [102210224012020,114313302321311,102212300202110,102210304013310,112101020200032,112002002030004,111103214104101,101220000302410,100004210412101,100024414212001],
+        1102230110140202: [111201312241430,101011114210004,100000040410034,100010030122310,100003314100400,114002410041201,114200044004232,111212412220144,100002111231143,100102104102133],
+        131132004102000: [111130112100210,102202200240222,110131044200121,100100004102234,110223332120231,100001024301322,114013044102010,114220114140122,110200210110130,100011201220003],
+        1032110022310110: [110002004410202,102103114000024,101101410010023,112041002002124,140343100002103,400200234320200,101041200320322,110200320000000,100001424102041,100100021040230],
+        1101133022102010: [1010400230221020,103034010121101,102302200210010,114140004123122,102143202000400,100002301021040,101321311004010,102411201112404,102110241342210,114122302311011],
+        233002011044010: [100012230204000,101101200311102,112401402023020,103142104001331,100200204123011,102012024040044,103031120143010,110020211221100,100000010004223,100101130101111],
+        1400004134041232: [102304130242220,110234010110023,114020400022001,100020034302021,103001001424322,102002221100222,100124030401241,102101044001201,114123100221401,101411301011220],
+        120213400311020: [110020000440124,100122211044424,111120442100320,114312112320302,100020230104020,100212324104022,100230000410021,112102020234420,110120241324003,103100024003112],
+        1044340110002001: [110120101220000,101040014002010,112001001133213,103112400210001,102000144014000,124204212002003,102400041402003,102311101002242,102110210210004,100000100412410],
+        1100324202220103: [110120102041110,114002242304240,102100111341030,110213131203122,112114004043430,100002334340000,110010432000001,102111044004101,100121101023404,103310324030320],
+        1041100120012210: [102121221343020,101010101022202,112104424022201,100013211002142,1302314034023041,1300034431310021,1001010233020100,102210104000000,112012200120020,111023100040110],
+        1130320044004240: [114002014104121,100011200400003,100110110031302,101000000323002,100022114104012,102022000222343,103204140100110,100102401041104,101210010302032,100200004031013],
+        100122000400104: [102202000201220,102203011120021,100401140034220,102103122004211,103022230124332,101242004043300,102102131340404,101010334004200,103003040102120,102420041111041],
+        1031303034032022: [110310422121022,103000004012011,112121310200022,111020104110040,111001304121002,101034404001420,104032001243110,101022024000120,103410110130122,111010312141210],
+        330004004001000: [100121230031032,112000431120410,100122200012014,102120400212001,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,102313204114304],
+        122113420031031: [103120224003023,100020410124020,103123241213321,110131142010001,102100204000022,114142312342002,110000104203121,100312200422101,101200001020200,100031001031042],
+        102401100002212: [102041020220100,102023031321010,102220020201230,114041124101040,114004202300322,101401424024210,114003104100012,114010214013020,100112404231200,102303021004001],
+        1103003300403121: [124010311303140,111001202231001,202220202402001,110101201010021,101200134041120,110214302104400,111024304401122],
+        130210321031400: [110402001342101],
+        120311101100000: [100010101043200,100231024320200,101001221022240,112014020232401,110201222120421,101000011020103,114121202312210,110201200000412,112224040202200,100020120112303],
+        1034020324300201: [102104004021010,112033000244420,104132001240113,111221000010010,114302044003120,100001104310020,102000100240000,100202234032222,101024034001210,114400220000013],
+        1140123020100130: [103100304000100,110100012141120,101034204000304,100140040401300,100221020410000,110101211201003,102021421442001,102220044000002,111002100002201,110301002000101],
+        1021102003320000: [110202032123210,111122004100020,110412244220110,102411314024401,114001002300430,110101230100001,104102130014402,110314042102142,110411130100013,110000022003412],
+        1103414201201101: [103020031403100,114000044020204,103202430100244,102302331003300,102320000221020,110142020400012,103131420221204,102120141343312,100400201010114,101420111104213],
+        101223144024303: [101100004002101,102121130221024,100031404344111,102034001100100,101400004040120,103030034003020,101144010014213,114022234031002,110034201323201,101204020300122],
+        1210223202123040: [102130411411444,103103204000110,110000400030340,100441301014410,114142102344221,102404004001203,114001024010010,101322100311212,100041110411010,114200100000143],
+        1024012000130001: [100022211042104,100100204230423,100423202201102,103131000120022,110004021102300,100130001021040,103000034040110,103100214000400,114200122301402,114221310212004],
+        120442410320200: [114034220041220,102100422004010,100024004210111,102002100222202,103200234030122,101001100320224,114021004100002,102200001122202,102140020210040,102100320220140],
+        1124041200314222: [100020114300013,102210010211020,103244411403100,112022104004013,100221001000220,102203114032020,110340004423020,112032302300201,100213204101112,100023020020241],
+        1121402000014003: [101023211102101,102022001101234,114220102332012,102000304001202,101233100300011,100001314100400,112101201102130,101004040320002,101000201144300,102322144032100],
+        1231114011014204: [100222000144103,101240000310400,114022002211402,110211000004002,114101402200030,100000034200300,114200022322000,103133001441320,110320400111012,112212111100021],
+        1042110233401322: [102424204043100,112022334022101,100300211000020,101410401010030,103240001403000,102202204040220,102103100310300,112002014000112,114020200031000,101010231002004],
+        100432020002400: [110430430003002,110013112004021,111012104400010,100432200033101,100100004100200,101021404000220,103120140210020,102143211343014,100112000410320,114420230000240],
+        121300223333102: [100003101003001,100012400101400,114301120000030,112004000214201,102221002020200,114104004120020,100020224101141,103100201420104,102300104020420,102001101132230],
+        1011111020142310: [103003400122221,110040431301211],
+        1120103330040201: [100022100100000,110100000010002,112020204004003,100122120411101,100200000011304,101411440301101,100122404230023,101001034001034,102204111110031,110240100000322],
+        130243024001004: [102100010233022,102120400212001,114313022302101,114021002302020,102313204114304,112100102300200,103001324000110,111201424100200,100002014200021,103212320212011],
+        1001000224021010: [110002022002032,110000242002021,102023301101100,110042130002002,110211114244021,101010000324423,100402022201021,101004201142324,110402332010103,111111110022110],
+        1100104101042241: [103300344012201,100011200201400,100201104224131,100002100204114,102203001300000,102101004001020],
+        100043300024121: [102020314012030,102020224000000,100212024121000,102304110220101,102301141002223,112014010202200,100000000410010,102001024012440,103201000102140,114220100000331],
+        120000000002403: [102100321320100,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102310400240000,101201340300430,111320312222220,102210000201040],
+        1001002200013042: [102042031102112,102102031403230,100041140201301,103021004022022,112122334022424,100102101041221,103011100120201,102002030240400,102300004110122,114000202300004],
+        1440402030031002: [110024021040134,110301001232000,110000310134014,114000012334010,102001201443121,100200024301301,100202421000201,102400204022024,102002101410204,102111002004022],
+        140040200312101: [110203022120020,104121030021030,110004320001413,114303000000120,100402200020301,102132204003422,100200144304301,100203321001203,110000210041101,100010304102110],
+        221001304220012: [114103004142211,102021122110400,101212120302000,100000401002221,122300200130321,130312421011034,130221000032423,141221430000144,140140230202204,102000134002210],
+        1004101230202300: [110410041242140,102433100201040,110000000040042,101213110301210,102204414041020,100102024232212,114002102301122,110200002121202,114020112202104,114102122200241],
+        122102201010000: [101132101110121,103223201411202,112001001132010,110221412114120,100041411223021,102010004010033,100220111003420,110100400123120,111102300012024,100002301020132],
+        1001303202443012: [101410021100102,100110004101000,100040020201004,110402402020010,112421302011301,102000034000000,112400200201000,112100020204342,101212310301011,110402030400142],
+        222001221001300: [114034220041220,102100422004010,100024004210111,102002100222202,103343010113030,103200234030122,101001100320224,102200001122202,102140020210040,102100320220140],
+        114044040101102: [110000000003200,111202004100121,101041204222101,100024024211001,114031000012100,102110001342114,110200000004322,114342044032200,111110020000001,111203012221030],
+        1001001144003003: [111020030040120,110002000134011,101122040304410,103344200113430,114101104102004,100302121000100,111302202204022,112003402002003,102000104003032,111011402203004],
+        113002002002324: [100130041013100,103120111442002,110022002100101,110433424221403,101310010340104,103001001220244,114124404003211,110014440412204,101410004022002,102243102002020],
+        1102000002011131: [102133011413110,114022424102243,103111420110210,102022400203211,102131201401041,101230020303000,101214240300041,114203000002040,101410104044024,102102230210023],
+        130030000124041: [103000004002012,102110030200120,100301421002002,100202140000111,114001032300011,100240101000030,101003104212220,102302211002004,114030310012122,100043021042120],
+        111004444200020: [100101011010340,111111000014001,100021320123031,100020001011422,100014041042003,101023321000020,114033400011210,102010221132220,103100204000400,114020000022214],
+        102100221104023: [100040201012040,114100222310230,114131002342130,110002022003101,110224130002014,100403122201202,102303304020122,100310210142030,114132012200110,103011011410312],
+        101400320200002: [110042220002210,110410200100200,102113340210000,110011401011100,102221200204022,103021030102410,110430314220010,100004014300341,114100212211004,112001402002232],
+        321200424241222: [101300124221002,103311100112220,102112002004120,114400004141104,102142234000020,114402044140023,100314420140013,101401204040200,102132004004123,100040021031201],
+        210200123011100: [100312331004000,103301244010210,100101031041022,100000240003101,102100010213413,100032224101400,100041234101100,101021410320100,102301000241011,103001220100000],
+        101430402100011: [102211230244321,112121214040022,100004004100120,100041014210020,114204120210000,114110030002020,100000030100102,101012400320002,112002100233204,100002131000002],
+        1000000040224432: [101233110040000,100001214100401,100200220110004,103102200210402,110400031000210,100010134202001,110010120020100,114020034010120,102001201130140,100000204310440],
+        110032000232122: [114113014000010,101200210302201,102340101000041,111201222220201,100021014100123,102040020220202,114140204123004,114330004003002,100102001040033,112032020220030],
+        222021202020000: [102133404134022,1302221400222330,130000220021033,1120023242400240,131114110030130,113000343131000,410120000124111,431000021231320,413200300004130,101310000020110],
+        100130102030100: [110000001324024,101020000300112,103100314001030,101020111001331,100002020410020,101000001111200,114010040023411,102012220241003,102110001342011,111120214102000],
+        231143404140242: [112024232302040,100040131021101,102040234002003,102000011410132,102321230240434,114020100042040,102020304012040,102144012001120,102101111341032,100001001002330],
+        1033430430043024: [114004102300332,102020010200114,102003101131002,100010400101020,102011320233100,102240044042003,102120104000203,100010220021024,101024301002430,102003231440340],
+        220104401200000: [101012131000024,102110141410402,101044001032114,100001111032112],
+        114121103010221: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1123021040432001: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,112003100241220,102204304000304,100301104104210],
+        1101300200023110: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        120021012210000: [102201000240040,101141104002200,103320300114001,100101000010002,110240302100000,100033411000232,103021100002140,111024112200320,113110032411002,110002004410314],
+        1040020000010410: [110040102001121,110310304430141,110301120404342,102113304130002,114032024012040,112000210210301,102012124012120,103002041402004,100000120201232,100031341030021],
+        112004220004101: [114223204100010,102100104000040,112132434020310,112120224040040,100020004101012,102402000201011,102311011000200,111114200024112,114200024110134,100000020202030],
+        100400013001021: [110441140102024,101004120224442,100413311002132,100320421001431,110210301200101,111131102210013,110400241240242,101001024210000,102210101121104,110023102103200],
+        1030002211310101: [110201201211024,100422314300200,102141410230020,110020001224021,101021204000200,110003302000101,111122222240232,102340004011311,111134002210042,100013014300034],
+        1142001133130112: [100422000031421,110302040102004,101402114042420,102220021120430,111341300012200,100102000010243,112410034040040,111302304130401,100024334203210,103031410122401],
+        322000432011220: [114023002202030,100032024201210,100013401040442,144442110010421,103012134011120,100031030004303,130013324120310,100000010413400,100101132014001,100402230022321],
+        1040010142002310: [101020024001041,100200201000001,112224232044014,103032004012111,100001404100110,110131022014120,112000002000110,101322221001300,114421204140122,101424044043122],
+        1013040200402020: [102101004000411,114221312340014,102434121112224,100311204312442,100001024100241,103000020100131,101211204201231,111130412210000,100011300412123,102000004001141],
+        1430400024011230: [100003211020020,111000240044102,100000101040120,102300000220000,102323320240010,100011200100023,100010044213301,100330204322010,100122124300402,103031114000000],
+        1030012410100210: [110200220113023,103001114040201,111200042221400,104104033101401,102001004003320],
+        1004040010200004: [112211122030420,102100012000020,101031201001231,102000010202042,103012240110400,112013012301132,110202421203200,111004410022000,102221241110321,102101320312141],
+        101340211301001: [100410300030201,100132130421010,100212001012200,102041231120304,101020121032010,112100222300030,101302314220212,112013100212044,111130220024001,1000122140130010],
+        202222000440000: [101133114022040,110210004434230,111100132241003,110100000020000,101134414020201,100002004302011,111424224422011,102301340200323,101000004210142,101340020341021],
+        1000124124122331: [110013312204132],
+        120030000221000: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        1440432433001022: [110001022000001,110023342101220,100021004310222,110020422131120,100001000100000,112220322030220,110202222043022,110313312021120,100220214333200,110330234422000],
+        123401430210120: [102142012001000,100000000014401,112023210242031,110243320110010,100022120412101,101002014013300,102100030222104,102120111021022,100400100022040,102303000242000],
+        110021201324010: [110000002100440,102330031000000,102221410200012,100000204312321,110213401202110,110300121220201,100400440012042,112410022010031,114034424104042,102213224110010],
+        1000130423410130: [110110011340130,100210304330211,111121210031101,101041010324010,102104210214401,100011230101432,100032024240322,103202224024200,114400044140001,114120010000040],
+        122110440133402: [100023324302420,111121004103434,103111201422013,100212024121000,100001001033200,111121024400002,102001024012440,100033200000420,114010112330000,101304004232410],
+        221210410134122: [110432001311002,100124004301020,101010011002124,100311010140302,111102004104401,103040104031010,103010014041201,110000224214210,110120100020012,102102030210224],
+        102021110400021: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,103040020122332,100000024100000,102200130202201,110012101102100,102102304001200],
+        1100033000021100: [100022214203010,110310011234031,110123111300000,102001010240202,100003040002042,100020031041304,102120004000101,102020002000420,110100302010110,101220100303222],
+        1030101231024400: [100031300002022,110210022120040,103002044002032,100101020402424,102201112000001,114211040011201,100020100423404,110001222202031,110403411244003,103000100114041],
+        1140142023012210: [100143114233104,110400210100340,114200204000420,100410130034202,100112004034240,101410000304110,100204220431100,101011121032013,103024140100113,100131114030200],
+        1002143002023200: [110140240121100,100420320432032,102200301120200,102021440221244,100300200142443,114110104002002,101004010300340,110210104242110,110413342122004,111030420024000],
+        1002103001404101: [101013004000130,114014024101301,100130014030031,112010140202000,110010112030003,102001020220240,111310002200011,103402204002011,101042021121310,103030124044100],
+        1123222240024412: [100122004300410,112400202020003,102000224000011,101212040303123,100030300124130,100001100013110,103122000211420,100032301041204,100410304320220,112030022303101],
+        1000201004100001: [100114234102203,114400112311040,100231124320130,103040424010400,114203004113000,101141111100022,100000404100021,101332011001000,102103000310202,100123001012001],
+        103202034314424: [101221020040220,102212000200124,100103104302044,101041030320401,102141212000200,101203121020430,100030010102102,102020004000014,100000211023014,114144014122041],
+        110110003101000: [101240220300022,103011431401300,114102224000201,100022021041122,100013011020311,114021004100210,101040421033204,103130011441212,100020001041231,102100001400000],
+        100201021044221: [102424204043100,100113220020101,100300211000020,114310200002400,103211220100010,101202201021310,103044004010022,114130020222342,112301032022414,102103100310300],
+        100020022000421: [110201201211024,110123004401121,100040341020133,111101344104210,102203031121210,100410220030300,101110020013040,102032124001120,101021204000200,103313021402013],
+        222004321004201: [102021100220120,101222041041012,114030234020304,114413200000230,114010024020443,100110300414001,111302002221301,121000033324102,100200203313422,112024201004140],
+        1041114000211240: [114240012324120,102014140200013,101232001021020,101022011003022,101240101000020,100003101003001,102313100240202,101024001032321,102020010212020,100022014300002],
+        120010100222114: [101010034002013,110001111011031,110021304203102,110400120400000,100203011004130,100114104000040,112401000200040,110010411100002,101201030303200,110101021201003],
+        141103220011200: [111003204111140,110200421002003,102101142002021,100403304320200,110200024432011,212240000101000,100210020430111,102110211120323,100233031002400,100000000400201],
+        1141420030040144: [100040341020101,102121011402000,110223000122030,110004010020200,100010111030014,100100121220014,100130204323304,101004111020023,102011302002212,114040100041010],
+        111202434242220: [110121100004131,102320000221020,110142020400012,100142011022211,114230344103210,103114211441300,100004104241121,103123200222442,101303414220001,100131000400012],
+        222011114102012: [112010300240033,114003234102244,102112434004041,112430202020210,101412044042002],
+        102101402011210: [104232210210303,141111210002414,102000444004121,122013001001000,110002211101112,111300212011230,100401002201241,111022032202320,102100124003112,111000020023200],
+        132311000000031: [100243401002310,100004000100101,114230014000002,114130104001000,101004000304012,100022210410130,114034424104042,112043001120130,114021214100300,112204111102324],
+        130020114003021: [101400004022210,102031021441200,102301324112020,102140202001100,114404020002102,112102002010300,102111421342401,114013222204012,100011401030000,101240201014311],
+        1140201020114021: [103001021432214,101002234002002,102214021120301,100404310020100,102103202002232,102300004112403,102100001001000,111320410010210,114300110003140,102130011411114],
+        322000120201002: [102142004001013,101213240301002,100140200410200,101033040342010,110010000403030,100000224340000,100024020103104,110402101344233,114000212214022,114241224112000],
+        1140213002004213: [114020000030002,102430401401200,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        102441420010012: [112133102012033,112014200224221,102142120202202],
+        1004040021000310: [111011304114002,100000021023020,100100220423210,100231020112302,110013410002100,102000111441024,102001014002221,101110204004210,114240000000041,110004010004010],
+        130014000323000: [111120030010031,100040204313012,102102002002242,110431012224002,101230331020012,102123402001200,100004244210201,114220320210120,102420124024204,101002030300111],
+        1101331000204240: [112224111100141,110113314221413,100040134340044,112004310224204,110422201312402,110302011332024,110200302024000,110210020104031,110240411110010,110001000142403],
+        1010003001321011: [111240220002100,110030344201413,101001014001021,110100001014311,100103224301304,114000100020200,102102100231000,114040202330200,100410331002222,100032204311200],
+        1040420003042020: [100032041021210,110004301222000,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,110104002010100,102042204000300,114142044120310],
+        1110422101320111: [110322022102000,100032201233122,110310004424040,110101020124104,110211142020210,101222244040110,112400124013132,102013421320121,100001144314023,100201020431003],
+        101430122140014: [104441021202022],
+        1030122120020202: [110220100000102,102100321320100,114042102330002,102102011414242,100041004100221,102310030240210,100000000412112,110000010033022,102210000201040,110110122210000],
+        200120020304033: [101201104041401,101402011014002,114410012310230,101423011010400,102141100210112,114130200001000,100022224312021,102122421340210,101011104014011,102031134010020],
+        1021400330110023: [100041000411231,100004004100120,114204120210000,114110030002020,101012400320002,112002100233204,103303001400240,101201000300222,101200200301000,100000004214021],
+        1100004223202210: [100400130013111,114101034001001,101002330300101,102100004023000],
+        100242034400003: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,114040204014042,101010111033143,100021221024312,101221031020331,114301120000200],
+        222000021300204: [100024000110221,102340221000300,100110020031042,110422102110221,100402002201002,114130014001202,110010220103020,101011014002032,111004100022110,101002201140040],
+        1030010441100031: [100422004320024,102420031111001,111000022200230,102300011002030,114044144020400,132202000104100,4000113102314022,1002001000001021,113120400001003,1400100000042343],
+        1010000113002104: [140420100400012,132110011201141,122012440110401,103211024020021,102010021101114],
+        102041402032001: [100020400410010,102103441142340,101211210304010,102100001004041,100000414104102,100001020044101,410310420012412,441000221120012,101000020100020,110002011202022],
+        1200200024003120: [110222020012300,100432200033101,101230004040022,114244120001041,101021020324310,102120111142201,110010011212411,110102322040111,103230010114302,110010220000210],
+        1100000443200001: [100032041021210,110004301222000,114310000001232,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,110104002010100,102042204000300],
+        1200124421020013: [112000001121121,114101222204110,100244340430210,110010104412000,102204424030220,112401002021204,110002112102110,111003410011000,100200201001120,100400100022002],
+        1024231012020003: [102112201020000,112220102043102,103042000110130,100231200100003,103224224022200,111404320001120,100123010402022,111222212223204,110320000110021,103014004000102],
+        1414000100020040: [101030310322400,112100134020020,101211411020304,102132200312222,102003124002023,102230320201000,101042201140102,101000320320031,100201000440110,112432002023000],
+        1020140142020211: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,112021004003303,110331012224112,114100222310230,101002200301130,100011120000004],
+        104000211010004: [102302440220001,100104400403240,100020111221020,110010122102321,110002322101200,102220124000003,101020201003002,100230300001042,100311334020020,112400022020023],
+        1100143000102000: [100000101040120,102323320240010,101022344002202,102112101020021,114313044003041,114024222212420,102410000230114,114201234002300,102303320221102,102120104131410],
+        122100200040131: [102141242001000,100121124234400,113000110124020,104144130014121,100130040002001,112203042030000,110114012012120,114224420001001,100120044031042,101400021103310],
+        1111010024431002: [102412004000132,101233341022410,103013314020203,110120211001001,100300400142001,100000120121031,114211324100004,102002000222021,110201030143012,101124211221020],
+        1220001020202200: [112312022021021,101200101021000,103000024014022,103122104002013,100040404102010,101020404210020,100121331044301,100001001021002,114200104001010,114040414014202],
+        120002412412012: [102111024000402,114321002320001,103220011411101,102311120222404,114020404020132,101220111023331,114220014111304,114400202310013,101030301000221,103313200113023],
+        102100043000101: [112240102020420,101002020301320,101024301001431,102200020203020,114220020213122,114201122324130,103003230103011,110020002002100,114440320000003,111040414402121],
+        1004010322144031: [111111202220201,100100001040040,101320320300220,112022102342404,100020024314033,102212341122000,100032101030101,100430200420000,112004414002210,100020441001221],
+        1042102002210000: [110232002101410,110331400400440,100424331001120,111040300024044,114021112203114,114000004110202,111020232200302,103124000104424,114411120001020,100021020414340],
+        1030400112042001: [102100201440001,110400011311001,103300120141130,102110004000221,110040002132020,111144202220301,114224204100310,100000000120200,101434031010012,102304011004310],
+        1002120204002020: [110000002100440,110203120112002,102330031000000,102221410200012,110422010000200,103112021442033,110213401202110,102300104113403,100400440012042,110030231214100],
+        1432143000023104: [110042112120300,103120031442112,101003101032341,100004121002021,110223100100433,101002310320000,111120022212034,100001244311023,100003000000440,110301200013443],
+        101103220201313: [114200004002011,114120320224032,100001221000324,102300434110242,114030012303012,110202024403000,100300104101111,114213202341241,110002120020011,110021012204100],
+        104102042310320: [110301442021010,110001332103022,100104004300024,112041000220020,111304202202230,110000002001040,100430440030020,100100124301211,100110004102340,101234021200040],
+        201031330012004: [100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010,100004001000211,114230112330402],
+        100031010300000: [110020000440124,100122211044424,103432211210302,111120442100320,112201401104040,114312112320302,100020230104020,114110412311002,100212324104022,100230000410021],
+        100141002033100: [110212022124220,100003100410042,100222034340301,101440044041401,111210012243010,102130124000000,102010421413322,102114020210302,100001100100040,102113131343200],
+        121010401221010: [114400034122341,112021201120101,101000104002203,100000121024021,102101104000212,111120010020104,101000011111400,100020004212223,112030021111302,112101002304200],
+        1001203000031110: [114100300222100,101110111104231,101030110300001,100004101233003,110012002000010,100021220000430,101120030332424,114330102320220,110110422011432,102143230310120],
+        100103120242031: [112131014040114,110000202000043,101012120300424,110322020011332,110304000102141,110021104411410,114323102321122,103100000110030,103014231241000,103100421241010],
+        1010000400010000: [114300020001420,114133230000102,101021120323020,102234010200304,100001021030011,102200100204220,103200110102141,100021030100001,102203301003030,102334201001100],
+        1000001200132004: [101220014012231,100104024303320,114422004110130,112210132031001,102012030213014,114021114023402,100210004343102,110031200023240,101000140310132,114242312322020],
+        1202012002010210: [100020331001310,100402010022123,112040411110201,103320130140000,103120300211022,102201012022300,110141031320010,103202111411203,112131442302432,110013041300140],
+        120020010110010: [100000131221101,110001010443143,100002020004101,101020324011210,113430000101010,100110101022034,110122320000230,114300220013421,102023021120102,111030040020222],
+        100140330120400: [100011211042100,110421001213004,114210010004202,110110211240001,110300410010340,102010004003021,102000121101004,112034122000441,100000010000021,102031020222014],
+        1004200023014104: [100002104302320,101023424210024,110031024200343,100110411011010,100021244103133,111230424101321,103102400211002,104110202100102,100113040414312,103000030101020],
+        203030200201120: [101000041142321,110430002112002,114312022300401,114000320000040,103000111421112,100110001000423,111000000041000,110211010101001,100403132200002,110042002122001],
+        101241202100004: [103301244010210,100041234101100,103001220100000,102401024020221,111231012242301,114444004140210,114114100214000,101104320012044,100000120120001,114210224102122],
+        111010310114321: [102422114040010,101204400304011,102020004001311,114103212312012,102002034010400,102020030220401,114231212342200,100020011043020,112022200202104,100040211031313],
+        1000430000424100: [100034011042140,111202114103220,103000121421121,100200241001404,110400302222204,110310011234001,111020012233400,110013024421020,110001002010000,112201302024400],
+        140310203002140: [101020414010211,101120204002140,101142004000232,101020024002022,110120011002420,112002112002220,100012304300004,101011421140423,100400320013200,102041314012004],
+        1040040200104102: [111131224100212,102010104000341,114120100223000,100404010020000,101240000302141,1204002112200213,110010302002100,102101201121000,101100001111040,110031222130200],
+        100012002010000: [110001422030011,102144314002302,114200112340002,102343014022001,100211000430431,101213240301002,102240320200212,100140200410200,100020020120200,110210001214000],
+        110132013420040: [102111000202241,103232220103211,103202404031100,110043132100220,102022004010004,101201114044200,100402002200010,112234224002101,110040304210001,101002104042030],
+        1000020414030102: [100002014200331,111020032203301,101000210303342,101440400302320,101012220323021,103000121424330,102111021022024,101012204221200,100300114310112,111100020020010],
+        1000020100000131: [102100321320100,114040102210432,100034004211240,102330040242220,102140121410131,101201340300430,101241100301411,102002140220202,103000101414111,102113111343110],
+        1000200221201210: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        111033202401014: [101213114040141,102210101002412,111140100011101,103220120212134,111103314101000,100012011022000,114140104122430,101100010302233,102100402004002,102000111102000],
+        200110003102100: [110120144200000,114022412330004,101200221022044,100103104302044,101041030320401,110241112020204,100002004104004,103130021444021,102100104002224,102100224000210],
+        220030102121210: [110000002100440,102330031000000,110422010000200,103112021442033,100000204312321,110213401202110,110300121220201,100400440012042,110030231214100,112410022010031],
+        1000122414010222: [100100331000022,114222040214020,102032000223300,101000441140230,111300214121201,100234124120220,102204004040300,102202021303043,110132124400400,114112014003202],
+        1042041012104000: [103130021444021,101400004022210,102031021441200,102312301104422,100000411002023,102303200241200,100022021041122,101200121022000,114300234001100,102202004013101],
+        1004200403121111: [100130320031042,103110021442200,100042001020203,112221200410000,112023032000020,114023224010002,110020320412002,100010330101003,100002241200002,100013014202033],
+        1103000224014244: [100002020100002,102110410200214,103102000100210,114140004123401,100230041210111,102201010200001,100042001024000,114142200031221,102012400223014,103233140101001],
+        110203023132110: [110041030411301,110001041213031,103301210142043,100002024200142,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002],
+        1001021200001012: [101011004212201,110032022002020,100214230430124,103031234000122,102044021101411,101100104002023,101042001021012,103230011412301,100102001000000,103400104003420],
+        112040032301204: [102330004110200,100000004134002,102220014033403,111202404440010,110100331001102,101020031001112,112422020201002,100100001202011,114104030222003,102320241000010],
+        211020420204001: [110301011234204,114211102321011,102110221412210,103330421400224,102000200201422,102412004022002,100032204200023,100023211030203,102104301004310,102003014001002],
+        111023100130310: [100114004100001,102012030213014,102003320200411,102002024000132,112440114040203,100401001011010,103001204002010,100340114211043,100033001220020,114233002340141],
+        1110013403420040: [102120010200131,102312300220000,102022000220004,110020120041030,103001220104301,102004004004200,112010004020300,102201001120441,103012000121000,100240204101020],
+        120300301041010: [111112002210022,103222004002001,102024021130010,112012010230002],
+        121110220221411: [110213100122010,101212101023221,110213001300231,112120222020002,102130100222100,110200204432001,102020411123201,103024041421002,102200034042002,102030004010204],
+        141201013131204: [103112010213010,101212000301013,111400002102112,100034100124302,1320102201231021,101010120320311,101201101001302,100000211020034,100020301020200,112201011040200],
+        1141320221124410: [132040114102000,100134200001402,110000012011021,100102204232003,111024004412100,132220204100102,101032103444021,111314020011311,101020021121012,103103214000212],
+        134403004204110: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,100400001001300],
+        131000000024121: [100301224310100,103002104012101,103220130211414,100012324202240,112101102012030,110003410100312,114000022300301,114000000021100,142100040004101,101030340343012],
+        1404322032320021: [144131233204044,120130001004000,101001131032132,110400010031401,102220211120002,114112002313010,114014010033321,101400104042212,103441112000230,100010030100022],
+        112240042330120: [100212201000030,110020122101104,104130030010110,100001134302201,100000010411400,100000140413200,121010220004000,114042004020130,111120112103420,101002304210122],
+        1402040020000013: [100022001030013,102100300210133,102100031340024,102012100222101,102233114003301,114401200002300,111000320303042,142014000003120,121010010000004,144400100020120],
+        1000104421120012: [100021300101110,103010301402112,103134021420204,110201031111320,102024044012212,101012144004034,101011024001430,140012010401001,102011204000211,102002431120001],
+        101324212100210: [104120011242011,114300000000002,110020002104100,110210014220001,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102,114032234033303],
+        1012000103004031: [101000021010022,100022310120003,112004031122404,114341322301120,100040234212230,102210214110002,100020204103212,100000100104142,100200024301424,100101344302232],
+        110031110000101: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,103303000112122,102100014132110,100021304103002],
+        1140200100100424: [114110000002430,111220014133002,112111010201220,114013422300032,111304104130300,100131414303044,110100134403210,110101101120302,100103004232134,103234200101200],
+        1140040023010000: [100010030100011,110301120404342,114032024012040,112000210210301,102012124012120,103002041402004,102103030210003,114010112332112,114121304121000,102221024044110],
+        131202102303031: [130310130330100,200224331000220,101231031400202,120412000041110,110231402124034,102000444004121,100400100013010,100401002201241,103441004000230,112412130204022],
+        1141004132323413: [100124004301020,112042012000041,100020034311000,101010011002124,102331201001312,111102004104401,103010014041201,101100401102142,102212004110012,101011420301002],
+        1422011301000004: [101012324214020,100000041041202,100000004214210,114230000000202,100120010020214,122202200013331,102110211441000,100402110020100,112000320221241,102100120311400],
+        1040342130222022: [100130011012003,110200000104021,100000020000020,103013010120103,110010024201241,101412304021202,102100021000120,110211124242220,102013001130300,100103234102402],
+        112210302401020: [110300221220031,110201220000032,100021214313034,114300200000110,102011224010041,102000021133001,103032234010002,102301434110030,122011001202102,102100301400242],
+        1211322041232002: [110113314221413,112004310224204,102304420211002,110403042110030,100032424312011,114112132313033,102204010204023,100220000432400,103011024000103,110100104220021],
+        1041100033004324: [101221020011201,112310132020030,102031100200300,114102134122020,103122011241020,100011101011002,103010034004303,102101440201242,112002110240403,112214410201300],
+        1040022141202022: [114031000022030,102014002000401,103103241421322,102104304023201,103310300140324,100002224244002,114310200002400,103211220100010,101202201021310,100021404301132],
+        1041121002301104: [112230122030224,100110130000123,102030000221134,100210304340400,102201032021231,100010020003310,101042204010110,111200332222140,111201314412204,102000200204141],
+        311002012043100: [100001200100232,102014000220330,111000042230334,110011000112024,101024304211100,104134400010204,113021021010030,101013214002010,100111011200111,110000122030202],
+        1001331303210041: [100003034314200,103300040140032,100002301040000,100002120010042,110020302100200,110042002002040,101403240303041,100002101231220,102040424014311,110411000101240],
+        1003240040420201: [102422114040010,102020004001311,111201210000103,100101101010100,102321044112101,100022024100041,114231212342200,100020011043020,100021231020200,114201112322020],
+        220421130000000: [100102110412002,100000204214001,102013024000211,114021004011100,102140140310001,100402022200102,111010302203001,102110111023103,114100102341011,110032020111024],
+        1100101424021021: [101000024010001,103204214002340,111101222101212,101214134040140,111002304411031,112404322020241,102001310224010,114000224102000,100112034103110,100203200030344],
+        1410200010010004: [112202402043330,100000224200100,112030112000014,111243044441200,112123120220000,112100104042330,112011020224211,103123304023003,110400140001004,110000312130002],
+        130002220230300: [102001404012100,102340120222440,114223204100010,111041202200140,102100104000040,100023014313010,112132434020310,101040100302002,100020004101012,102402000201011],
+        104000202400124: [100232121210011,112022200234200,110043132100300,112230000412212,102220120203200,100002004201122,110132031134031,102022140202012,1220302241034202,100240200430040],
+        1420021002114341: [110022000023010,102410141403032,114221002303200,101004104002142,102101210234111,103110220120102,102303100241021,100100021010323,102221000202231,102330301001210],
+        1022420232012024: [102203301123001,100000001030003,114030314123101,114442222312000,101001001030440,114000024014200,101002104002034,112203120410003,112100024022001,100000404201010],
+        1000303304320420: [111443032100000,100010314103002,100240240430022,110310321232001,103221100112240,112000000211220,102323131000021,101020024210020,102000110221011,100000024300300],
+        132304132200000: [110000311220202,102104004001013,101422101012041,100110034034002,100240441002203,110242301110320,110203002032124,100031130423104,110000112002042,101124004002042],
+        120004001023023: [103201300110101,110204002121413,102144020210132,110420040000002,101020011031033,102120001144202,110003040140004,100210030001420,110021041310010,100030001220222],
+        123001231420004: [101004100331003,112131222010010,103001011400102,102000011102134,100002121032011,114122224003201,112034022311032,111001420021111,111100214400041,112020102002024],
+        1214020002302024: [102402224000010,101110101110020,110130001120000,103112004000401,101020221030424,112000020242400,100000300000301,114102022310302,101032210301000,103011304042031],
+        1024204110123001: [102010021321412,101003110303011,102400204001110,110210300000100,103000024040000,114000214100213,102101210200200,114010130043021,111003302140220,110000142001210],
+        1101041214020210: [114002002300004,110100201140241,102020111324200,100042204102400,101044400300030,101024024002120,110203002102023,103442121212103,110214300000010,114021142300012],
+        130330034114221: [110102114204323,114021140030020,103124000104424,100100201043042,110302012103034,110130201011011,101000304212200,110001020120322,102312034020114,102331001000120],
+        131402002312030: [100430014323000,100212101003134,103030014000020,102402201110020,102022411100012,100020024100324,100001210102104,101230011020020,114000020034200,114010214032000],
+        221122012030020: [100031300002022,110210022120040,110000021221134,103002044002032,100101020402424,102201112000001,114211040011201,100020100423404,110403411244003,112030200222220],
+        1041304021421031: [101221422120021,103001024002110,100231114320100,100001000002210,100400320033201,110011402100202,100004130002301,101210300302302,110100012120201,102020131413423],
+        121020431124002: [110220420000100,103132204001001,110032234211211,114410010001200,100400022200200,103024400110044,111301032200412,110100120120001,103120101240000,111041120040000],
+        131430242240300: [114012012330203,102100020211003,100000214102101,111222000012010,100000004100411,102413124042401,100100104102000,111204302220322,103021024022122,101000220311120],
+        101000112143010: [110000102100303,110001020440110,100044021020010,100404202201012,110400300000102,101002244002110,100144221000002,112120102013001,100230104224024,100200004102020],
+        1010411230303322: [114400034122341,101444024041143,103020001400040,110200332041001,114004020010203,114002004033124,103030324000302,100203030110000,103204321414213,101004200341000],
+        1200300041104031: [114400022321400,100011101222101,114304212302401,110021324200010,100000014201221,110200030001040,102312021101141,101010001022001,100020111222204,103101201242022],
+        120000140100223: [102240221000001,112202412030001,100010000101004,112410140230303,114210142321120,403221301412211,100040201022210,114013022304300,102434044043420,102122014134004],
+        1102320302100420: [110040022130003,100030430422242,101120014204000,110014300001402,100100014230110,110201004241002,101000131142230,112001204023241,100104044230000,114022024012213],
+        1114043000110300: [110441140102024,114100200002120,101004120224442,110310020040401,104120221240413,100413311002132,100002024303323,100320421001431,110210301200101,100202024123224],
+        204104320213021: [101004120224442,100413311002132,100320421001431,101233021020010,110210301200101,111131102210013,110400241240242,101001024210000,102000324010303,114002020042033],
+        141014003400220: [111102004100101,102021100220101,100230120001003,114000040010421,112042110220004,100000214240410,100433201004014,102301102004413,102003000220111,102010100204023],
+        1012223100414200: [112142301101040,101100000330120,101214440300301,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440,100033230420102],
+        122101010421400: [101304020313003,114300140000220,102001004011002,100003441020101,110410442220020,114000012210030,111310022200240,102301044113020,100010220001020,100100011000040],
+        1101211002242100: [110200000113011,102101001340020,110002202130110,102032114021101,102110210230401,101040040322202,101422244020101,102142120224022,102104100233030,101210010304011],
+        224000010120441: [100004211221210,110403221000002,101201304200320,114022042302201,103310101401010,102404042001400,100020200104120,100101140102400,114122000000312,110310312103010],
+        131331044101012: [111102004100101,102140014001101,102021100220101,100230120001003,114000040010421,112042110220004,100000214240410,100433201004014,102301102004413,102003000220111],
+        100212023330020: [111022010020231],
+        1044011000001442: [112020104001300,101400110300032,110032412204130,100101004300200,111032414402324,102424040202123,101120244000002,102110024001402,104240102023211,101103344001200],
+        320030132101142: [114401200000003,100241001003002,111310004122000,101221000312044,102030300224002,112010022000304,110323142102300,104124002103241,101002211110002,112020402000012],
+        101100201200030: [100021304300200,110321031234422,100020020102201,102023001440404,101023014004000,100020010101201,110412042010210,100100214102200,102103000233434,110124411120222],
+        1100321212232104: [1440100023013130,401210002011000,1014200301032410,1001102321230101,1103013112041021,110200024240110,110431004224201,400014401213001,121000110000222,103000001421223],
+        133443304212300: [100020121020300,100002201032401,100240010430203,103432001210300,112440134041000,114300100002210,100210240013000,110401214242400,112320142024331,101044214042221],
+        1012021200200101: [100021204100204,110211020000002,103002034034022,111230214102412,111433044442220,101000004013020,101013320300001,110041341300041,111022120023311,114110420031102],
+        1011034222001011: [103111001422000,111244302220204,100042100102211,102110030200120,101114000332010,112112211102024,114001032300011,100142044103021,114004014011110,101100010012423],
+        103124122412300: [102000004002101,100422314300200,101403014020203,100402004300002,100042030120422,101134224001001,102321234111310,112100000200031,110003032000041,103300234023033],
+        1034002000100214: [110003000042343,103001224014142,102304000241010,110011000043131,100004220412332,114102400001020,110220201301140,100022221044012,110312300010200,103214210103210],
+        101340000102440: [100003000100222,114002114102311,101104201112142,114001020022140,112000000241003,100010411222302,101223004013001,103100420210020,101100140332421,103300001403202],
+        1110430022000012: [110232022123020,100002004303100,110130010102101,100010240101221,111000122201420,102000041101100,100042004301301,100012021031014,100000201032010,100404000020000],
+        144020003231311: [110020402002300,100000004102242,102311011001213,102000020223021,112024101112213,112003112000011,100010000013012,102140004030412,103000304003210,102010100223430],
+        1430101000322123: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        1124240400140003: [101101004003402],
+        220133002430202: [110202210102120,114001004100003,100041014102004,110320022101120,102131421000411,101412030302001,102222021124112,114000040031021,102400001110113,100404201012020],
+        142302003130020: [141401003011030,103120200123001,100301314104023,100001140421202,114400420000041,110044002001100,110024222100202,100040014202402,100012004101100,114142014003220],
+        110004222301024: [114102312344021,110011212133431,100012340404402,103400104001202,111000022140011,100021011231420,114012014101002,103020400122301,103110120123010,100402400022001],
+        1002332222012001: [110323002022000,114000024021000,112410402020100,100100031021211,110001321324002,110003422130430,111212024130030,102200040232103,110010001320030,111234102220023],
+        211211012002000: [102302200210010,103100221440010,114003344011001,100021101000000,101014201030204,101203001010111,100031201030102,114201104114111,101041001003300,114012444020220],
+        130121221100121: [102403001342000,100102431021300,110200212041001,100033211230014,100001211040232,100100024234021,112000321112201,104122102100220,112034300240022,102213204040044],
+        222320411422040: [101302134233230,103220011411101,100000130010033,101030404212000,114220014111304,101030301000221,102003111413120,100020001042002,114200122340300,102013024002300],
+        110003024002002: [101200101021000,101430004040203,103000024014022,103122104002013,100040404102010,101020404210020,100001001021002,114200104001010,114040414014202,100000024301031],
+        144233123220212: [102111040210242,110004202003210,100424220032043,102021004001004,100131414303044,100000221030033,110101101120302,100040201030342,112000012000010,101012201030310],
+        100144142023312: [102402024000034,103012024004312,102214020242110,101140320330114,114234004000210,112120020230024,100000204100304],
+        1401112120113103: [103101014000001,112430102422123,102110000230003,114123142314300,110401222110010,101012131000114,133111102100143,100004101032211,103001010120400,112201012032000],
+        1200012024440220: [110112102211042,114314300012000,103004000112020,114200022300033,101400220303133,101420010300310,114112320020021,112142012302100,104100001240034,102120210322300],
+        1112013310203113: [101210331023020,101011211002010,104110411304420,100222100412022,103200004024040,102140002000412,110043001201204,103420334000103,100010214302012,101201324232020],
+        342020223401220: [103100130122100,102340011104001,112300002022101,100430101012411,112013212002212,100202301000000,103411014002010,132000110000001,101000000300110,103000204004020],
+        120120200103000: [100002100100210,102420424042020,102200401111200,102000430221040,100100000422320,100102020411200,102100012002000,114221030000011,114200302341234,103002110100200],
+        200421114302210: [110102114204323,111120002100412,110302012103034,110001110001202,101000304212200,102113100230021,102030100221011,100420321001400,102303401004200,114000304031102],
+        240404121042414: [103134014000340,104103100010141,111101222240010,100040210411102,102010000221204,100110004102034,102040140220220,114010400014304,114300132321233,110000140032001],
+        302200144024114: [101220014012231,100104024303320,101010311003410,112210132031001,102010310213001,114021114023402,100210004343102,103422430124013,114242312322020,101000140310132],
+        1121404401211212: [114120014120230,110000100422111,114010314101200,101001201110100,102341014010003,100310111001140,101000030321400,102400014020400,114322134002204,100002320104400],
+        132040041010323: [102000020223013,102310111001210,102100121341102,100301024310020,100130010101430,103112000210401,102113121401222,103020111400003,112011041110422,111230014100320],
+        101103442222004: [114030110041300,100010400022200,102300001002144,102302444110110,103001000142003,110310004424232,112013102004422,100400220013232,110010002000100,100402012200112],
+        103001402200022: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        1000022202013000: [114113104123200,101210210300031,110002021121023,102300040221403,102201100200430,100114021040000,100021020412110,114201204111002,114011022211140,103000210120000],
+        103410102203120: [100434000032200,110004020020022,114032412303041,114322024034312,102040010200101,102200434012013,112000301122111,102100201400122,102013120200110,102020130212402],
+        1011244210020400: [102120300202121,102134111410122,112204022020043,112110112300112,100410124102101,100222300434012,103003040112031,100002300000243,100120021200321,114001012304000],
+        1020402102024013: [102031000211000,102100000214320,114211132343224,111200044424130,102331214112200,112003102000220,103014330110310,103131211240031,102241010230310,111001010020044],
+        1121404022003104: [102403004042342,111122004101222,114020040013100,114000222213021,100000020401302,111001100020413,111301204111233],
+        1004422020010020: [110030004200002,112031110240010,100100414230101,110134022013042,100001000000200,101034401033340],
+        1011412400400102: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        110321300002433: [100003211020020,111000240044102,100000101040120,102300000220000,102323320240010,100011200100023,100010044213301,100330204322010,102111211401000,100122124300402],
+        1223421020002121: [100001141020100,114220044111204,114000234011323,100020104312001,100000100000104,101121121101124,103102124002001,101003200320102,103312304020314,110110001000304],
+        113214012040101: [101010241003223,102000020220000,101100300302102,100003044100101,102034221103124,114012402332300,100014030200221,103030201434002,110204314402021,103121004002210],
+        102012011001200: [101221020040220,100103104302044,102020004000014,100000211023014,100201111002224,114242410001010,114202044111100,102013420220240,114212100211223,102102044001132],
+        112002310310000: [102411111400020,103002100100400,100022110021010,100000014100240,100122044230200,303020114301043,100100030200200,102202144030212,103031204010122,132044134324300],
+        1401100100301010: [100200104321000,110000110410110,103220030101023,401300041114001,112032302000220,112003000230001,102004301444000,111133030010200,102103231340304,114000044101422],
+        211202310000000: [103140211443110,112200224002440,100030001020201,101302401003202,114320100002004,100012200201130,110203221112042,110002114410102,114330100000020,100204220000112],
+        1100220021000203: [114033300040100,100313030142202,112021201120101,100001000012021,102010231120312,102043030202102,102300014110023,101021110322104,114420302320210,102103422004103],
+        110020000104402: [110201100100220,110033322001424,104100202101022,100041230102210,101131141042121,110012012004102,101320244221142,110340310102020,110102431303010,110424014243001],
+        1000220043212100: [102334004110232,110311331003000,112200102024122,101020240300003,103000034003300,112300032000100,112021334001000,101000100322140,114010010002314,102321040213311],
+        110213202022200: [120200102001400,102001034010113,1300102201211020,101313330340001,1112301032024000],
+        100142100320400: [100004402212111,110214202044002,111003002230111,111111000020303,111000214410000,100120101204130,111414402100001,112141002310411,111120140012242,110101241000202],
+        210020140240103: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,114100222310230,114131002342130,110002022003101,100403122201202,100100220403100],
+        120013402303143: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132,103142111441040,110104002010100],
+        1020011101210000: [104244002023000,120133001040211,111320124130040,114012412200022,110000110000231,100142041012023,110000000411120,110302100010342,101301030313022,111440222100012],
+        113201442210121: [101003040320032,102002420220000,100110314300212,110022302102330,112032314000320,111012024112012,112101204022303,102002300240004,101042304001201,114001002300131],
+        100102120012432: [100312331004000,103301244010210,100101031041022,100000240003101,103001220100000,114124420032020,112012012002100,102314001000244,114100000031020,103242004031022],
+        114132400024302: [112102024020402,102102010214442,102101211410144,102010214000120,102010111102410,101000110322242,102404110230202,100010020101222,101222104010140,102120400200312],
+        120314241010120: [110012010410000,114004000023341,114021044100401,110201402120213,101022040300420,100041011221411,102110010203021,100310004100403,101000000300302,100010301034103],
+        300020040221203: [120133001040211,112200431102021,111320124130040,110042234410000,110000110000231,100142041012023,102030200222404,110000000411120,111440222100012,100420111002101],
+        1024304020010121: [100240000032004,102000000210211,111010204401023,103142444002002,101200010300001,102211300204221,100301004321221,100020000410313,101220200040320,110301111301101],
+        100243021121232: [104110021244203,102224101113104,102103022002001,102102224000012,102100102001032,100142431013000,101000031001011,101010130321200,114004322330012,114202144102100],
+        1130024101421004: [140203123020300,102010011011210,114010230023434,144203403221310,102013131134030,100110003330122,103312010110013,141000201412111,110004030120020,100332121000004],
+        120001022414041: [100101101020002,402104002030100,100010044110040,102113034020402,110141200002120,100020004101340,110100111221402,100104100414031,103202320101211,112000212001200],
+        120030020023201: [102010244010000,114430412322343,100000430014301,114423002314000,114010134021022,114102224104002,100040240003341,114422404110312,102403144000120,110102211300112],
+        1114101000210042: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1000000210200002: [100422040021304,111111000014001,100021320123031,100014041042003,100002010413410,101433010300204,102114321401000,100002414201103,110324444424432,100122234300420],
+        120000200102214: [102231130213210,102000402041014,100043324210140,100023024211011,100003201021001,110002021121023,102201100200430,100022010411004,114121300224141,103112011421222],
+        222400021410223: [101011100300202,101000030310000,112202230200300,110001040112100,103132001240124,111040000020020,101224424043100,113000132200300,101042100313010,102031320200104],
+        1140024013020004: [101000141031222,102000421131000,114404020003022,100421242201010,110200200001000,114023024101231,101410114043204,114241202320300,112431402022004,131202034021212],
+        1203100020210011: [103242420100012,101400004022112,100100210000011,102200000200201,103110020210000,100022141030334,103200211410311,102100404021014,102303001102431,111441004421100],
+        1011432344432402: [102310324112030,100410130030232,103220101421001,121110020100002,100002104204000,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100],
+        103220021012001: [102010114022011,114002200000421,101020321002002,114302210010001,114030004104220,100104004301000,102443211401140,102301041000014,112142011101404,100001111201214],
+        122224100040443: [102110140224010,100103240011013,100020210101002,100042420003120,101020120322020,103130004003141,100024321020243,110112410431040,100100031002000,103000244010320],
+        1041023033141201: [100400002201113,102420424042020,102111024000402,102001011100100,114402104142102,102311120222404,100100000422320,102100012002000,101320224220103,114400202310013],
+        110201000401012: [101011000322203,114421102322111,110241022112013,102110010230101,114423004144120,112001102000201,103014044010100,101012200340110,100210331000030,102242004042400],
+        1210210410110322: [102300001002440,112101120201010,101000224223002,112240000413000,102012011412102,101040201112304,112422342020141,101113004000203,100100301021212,100043124200131],
+        1000000010000112: [101203004040100,100142224230113,102104131122031,102320024020040,100021114102210,101100000320132,110402122111020,103040120000040,112010000211002,111041012143402],
+        1004310000212110: [114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,111403100030130,102022400211311,110030400004330,100401241014100,102324410243220],
+        1023102031400100: [110141010001110,104122011242020,110213401202210,111103310001234,100110441001000,102312000240002,101202124010000,102012104010301,114123014001020,100004004303030],
+        1030122204000210: [102400111402142,141030301403400,120402022102021,100000024100211,103224200113121,110140101300004,114400210002021,103103221421013,120020211120020,110230010010142],
+        1020322310430300: [100023324302420,103111201422013,100001001033200,103201000102140,100033200000420,114010112330000,110333034433002,102343044111203,103231001400100,111122030020244],
+        103100004000400: [111300232202103,110122120100022,102400100220000,100242444300104,110002202001202,110200422113400,110022300021012,112000000223310,100011200201230,111001002201034],
+        104000230200402: [100030220410304,101133040012001,114000102210140,114032400014212,100000300012003,103142211213001,103002040120124,110302102000120,103210000213424,112402114044002],
+        1104120010013212: [103324024030212,111022412140224,103030304021102,114110004121301,100222100402024,112002220220002,100121301023030,110000130020003,103002144001000,100014000022201],
+        1112004022112022: [110201021201020,101111120330403,100101321220213,100120034230102,100340011000110,222400011010100,101030010320010,111101010011204,101021300320314,101002120320124],
+        121241200402212: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        1010324010403033: [110033100114102,114330004030120,102410101111403,102310140211101,110030000021420,110001022121214,111120144101403,101021400304200,100024221230411,110230000002421],
+        110203200000220: [101220204040032,111003044110202,102230231120222,102330304110101,100430021011031,102330021103040,103303031404000,111330304131300,100002131020340,101202221022030],
+        1030241201030200: [102210100313100,114113014000010,101200210302201,100004420014012,102240210240022,111201222220201,100102001040033,112032020220030,100002324211100,111231042242020],
+        131102024010341: [110110132041402,103140240112020,100004411232040],
+        101204101201001: [102112200201012,102321104111003,111111004400103,112100022300110,101003010340102,100200410434002,114104002204400,102004221132241,100010000002102,100414300433033],
+        200202134410101: [110021000410432,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000,100010044101002],
+        1000020101003002: [110141201302122,100023001222000,101002124002220,102103012004030,114034000012210,101044004000132,114114004140010,101010241113102,114030142200400,114001124010240],
+        140422200100410: [110140300430002,100021300412300,114031112210241,100002430012110,112000312000120,100000211021200,103013000110110,102420244023112,114322402322100,114400244140102],
+        102013204020100: [103223014033210,110001311210334,111403414421302,100002001211230,220321332020001,114012002212100,114203110001031,100002220001240,110100014401214,110440112110241],
+        100201101020304: [110210221300113,110304014433122,110200004243223,102000010200200,100002330412031,100033400410104,110210001310230,114020042302142,100010144303000,102142231143322],
+        100100424100021: [102131104023111,102420130230104,103000004010400,100000004310002,101021014224121,100012114210011,111301000000031,111200304131014,103020200123211,100000340120221],
+        131000114120111: [111200200000232,111410210001002,100101001011114,114220104000102,114000332302320,102100221341001,100011301000021,114310214033042,100100001040210,114102104121201],
+        100100000020020: [103140211443110,100030001020201,100242141004122,101302401003202,100004004102002,112020201120340,100204220000112,103210200100000,100000001020344,100042330122240],
+        1040034200120002: [101010304211002,124123100342003,122430211012021,102130104020040,101010004034210,122420404200443,144040423311121,121120220012120],
+        1110201222030321: [100012400101400,111242212222022,100020100100300,101242000300000,102000014002101,114102404120000,102004021442313,100121211012110,102221220204211,102130044134200],
+        1001112122000000: [110304044431200,114200134110042,104104112101440,102103131122203,102100101140030,112120012011020,114322000010200,114230144114000,100033044210014,112221114014010],
+        142311002100014: [103324024030212,102102012003220,103030304021102,114110004121301,102030420223110,112002220220002,110000130020003,110303022022010,103120321442020,101444321101021],
+        132401210141240: [101011100210312,110434314221324,110321011232112,100400040013423,110021112200120,110011312231302,100400410013040,110110302214004,112402344022203,103002140104010],
+        112030010214044: [110011411102000,100022001022231,102314032000332,102300001100200,110420020000202,102023024010033,100001144201220,114240010000411,111212204101240,103210031410020],
+        111203000012000: [112224111100141,111102214104403,100132004231230,100000030000001,110021340020022,101010001000320,110210020104031,101003204000300,100130334030100,112130334042201],
+        300022201200100: [101012324214020,100000041041202,100000004214210,100120010020214,103411120100301,102110211441000,100402110020100,112000320221241,102100120311400,100103301022000],
+        1402030133033134: [100010234114300,110010024201241,103032221421243,110200000403003,103210030110012,100112224000220,110440020030202],
+        1013121002202202: [101302134233230,100000130010033,114102224000201,102312301104422,100022021041122,100013011020311,100120041020012,102012204000242,114000200042311,114300234001100],
+        122203011312043: [102420101111121,101222041041012,100032124210042,103222000100010,100100000021020,131213314114102,110020000000320,114010024020443,111302002221301,120300012041400],
+        1422200011020100: [102300324010203,102040011121100,114310000001232,111322234130000,110104002010100,100030024303023,102042204000300,100001134100120,110301232000100,110303401230040],
+        1144343013304412: [101203102121344,114001024011334,112022411112104,102142002031221,102312144114200,101420211014000,100001214100201,120012102310332,100344224100402,102200204001120],
+        1240200203011201: [100002000004200,103040000100120,102030324002210,112023102304030,102301030241010,100022001043023,114221004110220,100114100032200,100203104320000,101230321023001],
+        131020140201201: [114021302304042,101032014010201,102120214000032,110040020021001,114222104103200,111000024400222,112140311100413,110042322001120,103013101222000,111001404112030],
+        1102230011004120: [100020004313034,101400120320033,110430030000041,102020004000301,114114204001401,101042214000121,100014300000200,101031101024100,112000210242204,102201022000411],
+        1022233204221200: [103311011404143,101011010320431,103041414001042,100021220010031,100000014211030,102441324022342,101041301000020,103220000104122,100220121003120,102040124010141],
+        1002004102010310: [1010400230221020,103034010121101,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122,100002301021040,111020002202333,100013040100000],
+        1021412003303320: [102142221342202,103043404000202,102420000202033,100020101020404,100002411021201,102110010210330,100012020410400,102122111402420,100031404302400,101301014220002],
+        130200041002100: [110120144200000,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,114113000004012,102140114004004],
+        102420123010001: [100113444000011,101101400332443,121402220120031,114020224121142,122220022201102,101241421010222,110203022121202,100243210430220,101023114000013,103022300110404],
+        1140000000120112: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        1040220000302042: [103211200100400,102112231020231,100022004300020,102030304001101,114201204111002,112010122302144,100000114103021,101310000310240,100120244301401,100002230010314],
+        1410110222222002: [110104112010103,111102004100101,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421,112042110220004],
+        111000440320142: [102242201000222,103000004011102,101410044020102,101000011032120,114004202210130,101220000302410,100004210412101,102102042002001,101210321023022,102110444130000],
+        102020300100013: [111210044131101,102220000202044,114032002303014,101242421020211,100000004212021,103110314000100,100000001224221,112301111130031,111013102200342,111204200002001],
+        322030211033030: [110201100100220,110033322001424,104100202101022,100041230102210,101131141042121,110012012004102,101320244221142,110340310102020,110102431303010,110424014243001],
+        104320010330101: [100004204302330,102341014010003,100011421002120,114140320223200,101000030321400,114132202312102,102211401113441,101100220330020,101014324010000,100004400100414],
+        100300332042200: [100041100103433,114104310000002,110211030011400,102100011413420,112404000202310,100400000020403,110233220002030,103020010100321,110140004200100,103402000120002],
+        1000101000040003: [114202200000200,103000021411202,102101004030220,102003001132213,114120014000103,111432000004311],
+        1100300422413040: [103242420100012,110002320424340,103130311444100,114102134122020,101040004010012,100100210000011,114004030023211,111343012200000,102201430201310,111100404100043],
+        102203044000000: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1120023242400240,1321002023100013],
+        1110004402104400: [101011220324041,101300000310200,114220110001121,100031004311400,110020011223233,110013000002041,102220004001014,100043000201333,102141302001013,100401302200302],
+        114100000112102: [100121230031032,112000431120410,103042024040104,102304104110001,100104211044110,101342300314204,114241222321321,114021002302020,114013124030022,100013200100011],
+        130122031422000: [100002100100210,102420424042020,100010001032223,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200],
+        132140100012020: [102142221342202,102420000202033,101012400343401,100020101020404,100002411021201,102110010210330,100012020410400,111111102240001,102122111402420,102001041100103],
+        1140000033000122: [110140044401202,101300124221002,102112002004120,114400004141104,102142234000020,100314420140013,101401204040200,102030001103000,100040021031201,103030100142040],
+        1040110200023114: [101020000323002,101424211100010,112112014020004,100221020410001,114314004030042,100111001020220,110321132002134,102203010232102,100411000433012,100210024221001],
+        1001011344031040: [100440444301004,101221121020230,100232121210011,100004110000301,101310004223223,111210402244301,112022200234200,110043132100300,102100011341140,1120022020242320],
+        1043001223203202: [100010400022200,102300001002144,102302444110110,103001000142003,110310004424232,100402012200112],
+        1044142043330300: [110104112010103,111102004100101,100122004300410,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231],
+        103011000000020: [103140044032100,110322100104010,100031314241140,114100004121121,114110004002200,100040214102023,103033044023040,102403101400210,102301000241011,102100330231011],
+        113010102200100: [102142221342202,102001200221011,102420000202033,100020101020404,101000004010012,103024000103302,102244221114031,100012020410400,111111102240001,102122111402420],
+        1123220200040111: [102030410223003,102032022000041,101020220323012,114002420040210,100000104100124,103021104011000,110222122042312,100143110421000,102210100242220,101010200304240],
+        1220102211104000: [100021104340400,100003000410404,100230404343341,102002301442023,102403001400101,112000134002211,100000001020020,101221022120042,101230210302110,112121001100010],
+        104000400020313: [100111211021233,110100201140241,112001022300000,100203210003004,100042204102400,112120124020214,111304442220340,110003001024303,110032001122110,101000044001103],
+        1004010231003430: [110001112031124,100200001003212,110001210004013,111012114400321,110012042001440,102114001122300],
+        112320040110030: [100402130020211,114021200013041,102103034000310,102232014002212,102101030210403,143304200441210,102110111401120,100401024302230,110022001300202,101103000333012],
+        241110022000010: [103220011411101,114220014111304,114032234033303,101030301000221,102302331003300,102003111413120,114200122340300,114201022330011,114020420030200,114143024003322],
+        130410121210112: [112102202040000,103140211443110,102110021341014,114320100002004,110203221112042,102110001401222,112023000234400,100120004230204,104200401300100,114204004003310],
+        1001010212024102: [100140201011204,104010100010424,103010014013304,102103030201001,101203104200224,100010221031023,100140000024021,101223024200014,112240404012020,102000220204011],
+        1410001430021313: [112002140242302,100022140001044,102402000203231,102110411023111,100221101000314,102234024041024,110013100422233,110002241042041,101213412120001,100112014233000],
+        1030000200312200: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1103040030102440],
+        240022400321101: [102141212000200,101203121020430,114144014122041,100022001040322,100000130010033,110020030024004,102112204131410,102324000240024,103020014040000,102312301104422],
+        1012301004020402: [110130321300301,102240200242002,101000411030013,102110312004000,103012004020122,101322310313010,100000000410101,114403020000214,101014020310002,101040024002322],
+        1022204000010001: [100002001013012,111220032224301,103400104001342,111001212200200,100000331201012,111210214440200],
+        1102434402040110: [100010014200143,114020040031020,101111120013000,112022204004310,110320122100410,100103000002102,110400122022003,100242000430042,101014320300311,114223434000010],
+        1441012331410144: [100000334212011,114204302320422,103130140210221,100020000102421,112000040243410,114000004102342,102020021412100,100010420001220,112120210202111,101000024000230],
+        1410431040011110: [102401121113302,111201210000103,100101101010100,101320040302031,114010102300010,102321044112101,102000014002000,101034014011332,114011102210402,101203011023020],
+        110022022004132: [103003114000120,114402004141433,100042401022030,102040420220132,100003244104241,100021044101011,103010104002213,100002221040232,114014434010210,102111001410032],
+        1100010040010234: [110020014212242,100204104102120,101134220330310,114202414004000,103202444020203,114321310010234,111043200020202,102300131002024,102203414001022,112022110220022],
+        100100031023010: [100221424320111,100021101021200,103240321400010,102010134012140,101204211020322,100011411040002,101002114000002,102414000203000,114010000020004,101220220040040],
+        103030430212110: [101023124002002,102121211340110,112203044010404,100020020102201,102111400210040,102000134003010,102140140230002,110100024400410,100001111040010,100002121020203],
+        1120120000224044: [110103101201203,101422244020101,102142120224022,100002021021020,102104100233030,101210010304011,110001000000020,100012210001220,111022004124100,111242322242000],
+        1041030000000401: [101040014000130,103303404020012,102010200213332,100434121014201,100210001002120,101000004211110,101000021141201,114140024000003,102010014010000,110034420441200],
+        200041200304021: [103100021440001,100120100032121,110000201324002,101200400331110,111201022200100,102100100210100,100002244341113,101000141033304,101011034001210,112400002300002],
+        124033440132420: [110102401201204,103020200141000,102414034040100,100212030414010,100412200002013,101200020303202,102020041321410,111340300010010,114120420223002,102013224003020],
+        210201221130031: [102123220230210,112301312020123,100111304300020,101110004021320,100002021033103,102201230200104,103013404041301,102022010244000,101021101001111,101012211020220],
+        1030100404001000: [104232210210303,141111210002414,102000444004121,122013001001000,110002211101112,100400100013010,111300212011230,100401002201241,111022032202320,102100124003112],
+        110220333400030: [100032041021210,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,114142044120310,110220410000040,101030004010034,102201411100212],
+        1002102020000000: [102434010203000,112100134020004,102001014000312,100421300020002,100003320120242,100100031200121,103232220100413,113400320100001,110204201314400,111021024111304],
+        1000102011012413: [100013230100000,1320100232411004,100121120102303,412310220104121,114100222340120,132011000122003,110230010002303,103002020001300,423203002400042,1302321010020120],
+        1102100214231432: [110021000410432,101010010320112,100021111043012,110124041140000,103300021402104,100010044101002,100001000100403,100020124100010,100301020140000,102102024000001],
+        1100004324203103: [101040040300223,114234004000210,103000200112220,100100001040410],
+        202324002000110: [103030324000302,101340000342212,102002304010024,102040120220003,102120211022402,112220132033122,101201004010204,102310100201021,1234032021030300,100011000420231],
+        1022300000020022: [102033021130021,102001241410312,100000121042240,102101201403410,114444012310100,102330021000131,110400240002411,114432422322332,102000320222120,100422101002110],
+        1100340020222310: [110202004211120,110223224433004,110341010044330,102031144010424,111212114131222,102140001441301,102342120222031,102221010201113,111012030022123,110031424214112],
+        110130322010021: [101133114022040,110210004434230,111100132241003,110100000020000,101134414020201,114101042202201,111424224422011,102301340200323,101000004210142,101340020341021],
+        122243013240222: [100002100100210,102420424042020,102000430221040,100100000422320,100102020411200,102100012002000,114221030000011,103002110100200,101320224220103,101302131002410],
+        1431432211000132: [110100104404110,102110042001043,110200200400310,114100002204212,102003000212104,110000011301000,102000100220240,110013001200012,102030204000041,102341101101130],
+        110320020010144: [103000144000400,100110011002040,100140011002400,124001030020034,103214000212400,134312110020403,103130121241210,124002000123111,100041011030000,102010121122221],
+        1101110204000023: [102012214041011,102010214000220,110411344210012,100100014322200,101042134014101,111141022224102,103004030120101,112221404014110,101032011143223,100304431004012],
+        1020003000000432: [102212124010301,101001000224100,101100440120042,103312141403200,103032411100001,114020100040024,100020114210041,101411004021001,114213114003203,103214331421023],
+        1442032302202000: [102201041003000,100011100124001,102002321030001,102031101030023,111422210000120,110401221311002,103003041414310,110111100010001,111002100001220],
+        1022000101013020: [102030410223003,101020220323012,100000104100124,103021104011000,110222122042312,102210100242220,101010200304240,110102010022243,110020201012400,100140221000000],
+        220011110021310: [100042111220111,112220100202000,100042041220010,100403211010100,103240301400123,114102210214041,100021300103041,101010204000242,111334004121414,114101000213410],
+        1004123040223110: [102214100240020,100000001233441,102120044000240,112100012011413],
+        1401303100022304: [114003212210013,103023101400002,110010120440200,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234,102043221012112,1000023402103012],
+        302002023003010: [102044104002014,110200004243223,100033400410104,110210001310230,100010144303000,100102434300310,102142231143322,100421200001003,114024200040223,112020402001012],
+        110004403014034: [110001332120300,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011,102130000312121],
+        100000420112001: [102340200224222,103212000212121,100100011010220,112002010220004,103211014000111,102000034013222,102030021100041,103210214042004,102311020240120,102402200204112],
+        1000041420014213: [104100002100221,102000321102310,102134044134410,101202001022000,111300220000230,100133204300040,114110032343001,100110101040020,114012222301110,103120440104110],
+        1002303101202401: [101400004022100,114031212300211,102013110201200,114023010024000,102042321440100,102300121004222,103002020142122,101401101012402,112000230220102,100000410122022],
+        223140110321312: [102304030220001,102141124004222,102430201110000,114010200020312,102124002000102,112042422001032,100011004312001,100111200414020,114044414023030,114244014002020],
+        1022410320300101: [100104001041200,102012200202303,103222114034232,114122112202230,103221204032410,100010141222040,100004004102410,102104320200023,101104001101000,100020001030022],
+        1402232200001330: [114410024110002,102030410223003,102032022000041,100020000120134,114002420040210,111201122241213,102342022000024,114000222330121,100000104100124,103021104011000],
+        1000022002004201: [112000204001011,114004100011010,102030030202212,100022024100312,112003120214121,111300100011041,100030201041011,101001010310002,100001000400001,110031400432422],
+        1102213010202023: [101302134233230,101030404212000,100431000032001,100020001042002,100013011020311,102103331400000,100120041020012,102012204000242,114143024003322,114021444010222],
+        1140010030202200: [102301002004242,102013130223020,100131011001300,104100302102030,103200030110000,110102202013213,101003014210212,110000242104040,100210024300001,114000444100400],
+        132030111000412: [110401140004202,110040002034100,110044020020202,110301311303102,110201434430102,101002020342002,102110334020204,103200001420012,101201021021111,103210000112442],
+        1201233400000434: [114012020044224,103030411422014,111112204404021,110404122110112,102412044040011,110411004223302,100100241000020,113130020101411,110021002124000,112200030203124],
+        1032010214322202: [102431111110001,102323101101400,1003002030122040,101230330042220,1320124301012211],
+        1010022303400004: [103010010104000,101100400333023,100141004030100,104130442103041,112314322001102,110000144202030,101210121014010,110202201303021,103031010100133],
+        121021240030310: [114130012310000,102112432004423,100210201001001,100243120430140,103241131401223,112214431102032,100400120013011,102202141120400,102211241120212,103011001244001],
+        1002401010324142: [100113444000011,102100030230010,110020411000411,100000221040201,100100010101102,110010110023200,111020000010212,120031401224002,110024404203100,120000043000003],
+        1404000200300230: [110230231300100,102010424000101,100300121000420,100402431014100,100100001220400,101423100300002,103111300102020,112202012030100,110300011202224,100043300401302],
+        1410003310410302: [102101211411000,112032040234431,110010232004000,101020004000000,100102224033421,100120040400011,100400110020244,110410002020200,102021001411110,114222010213042],
+        1000022201011014: [100000200202012,114404010003320,112114324040000,100141011011032,100010021034000,103132004002020,100000241000002,100000401002031,102001204001021,114300104032040],
+        1001242040230020: [110011232100412,100220040142222,110020120040121,110000100022040,110200021210212,102401010202301,101040000301210,114240000001020,102130034023112,102204114114214],
+        130030101100110: [112133212011000,100041100103433,110211030011400,100000431230142,112404000202310,110041122001022,110233220002030,103402000120002,100112421221110,111020102204112],
+        210100402301011: [142020040041320,102124021023300,112444304040204,122022100000222,114200004110244,100003024211200,102102402003021,101210101010023,114422114140221,103210000103000],
+        110003033212032: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        1221010320140300: [114200034110031,114423002314000,114040002210432,100010040122204,103314044033003,114102224104002,102001420220112,114422404110312,102403144000120,101033041032041],
+        220241142300040: [114231404034301,101040231124131,111103304400110,100004011120201,103024020000203,100001011120001,104002232100303,100041020143410],
+        1031330320413214: [101010211001011,111220030010210,114042034104243,100004030411141,100412030034000,114000214012010,100030040000303,114010002240111,100012234200200,110302120012014],
+        120214202240112: [101042014003022,102210020240030,121401221221000,1300001101120141,110020000010044,110111044402003,112032041113001,1112010004112414,111043124112002,1200023010410200],
+        1140012420221010: [100002100100210,102420424042020,100010001032223,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200],
+        1001000210222421: [102100441341013,114201102342110,114101200210030,112011200240420,102040020220000,100104004100400,102002331440012,112100002302240,103312401404300,100004030101401],
+        1000100111033300: [112312122020210,110332000010101,110022331320122,110000030132210,114002004103231,100001004311313,101403030300132,102321021102143,103123204002120,101010011001214],
+        100023020020210: [110301222101110,100002024200142,110033041200104,100304011002220,100003200120102,101100031042003,104120110010402,114240032321200,101021120344004,101024420304241],
+        1002234040020300: [100200101000000,103110431441100,102100441341013,100011200121231,111201102224324,114040020021023,111230114102201,114201102342110,101400300300111,114430204112100],
+        140000100011001: [102011214000000,102110111410144,103023141400000,101001100300012,101041104222000,101203414013200,103002201220000,112000202310100,101030010322420,110001102102020],
+        1042210130010011: [102021001132040,102301004110004,110402420402001,110000112100402,110021021210300,110404000000012,102000101120123,110221022101104,110023100402320,100020311220412],
+        314111100411012: [102241041000242,110012232002103,112021324020001,111310120000011,102000024011022,110201111314000,111140222113002,103213224041010,110104040120242,114200114030134],
+        100410421200200: [100004001021111,101021004214202,100003000104203,102114320203000,101011001103200,114001112300001,101003104212220,102311110240101,114002002300302,100000304301120],
+        130104121003132: [104404322124241,102032031130301,114030234020304,102200124012000,114002120023020,114421000001111,121400013334402,114413200000230,100103201040210,144000213202010],
+        1010000221004003: [100442110030410,103040040000102,100000230401412,110213044200100,110134044242442,112210121100012,110221114214442,103011201241100,112102110203010,100220001210313],
+        142143240040301: [110300100100200,101000224003200,102110140224010,102020011103400,102021324003010,110222000000130,103010000100030,110220441210241,110120021324222,102002012010000],
+        302433002432021: [102214011111041,100002401040201,102113101342000,100212304243333,102300220241031,102302424110100,110000014211000,100121210402002,102312200240012,102212004030221],
+        111133120321403: [110041202001012,100002121031241,113202020210311,102102304002200],
+        1101003301300210: [100032421042201,100404412200031,100000001221100,103040224001431,110240242120033,100220201003103,100102020403042,110002202124024,102110014003412,100004101034200],
+        1102304042120420: [102220011110041,100010204102110,111303034134331,102010200221212,114023240040131,112020021110420,103000000120110,114310024002102,101122440332111,102122100210030],
+        213104002302241: [112142301101040,101000130320340,101121100332142,112401314040311,100110020031042,102011004013000,110422102110221,111200122222334,100220124221000,102301024113440],
+        1102300211200213: [102140020210421,102112401342040,100010031232011,110010002200040,100222101000100,101002111141200,101412010300340,102422224043400,114304104033020,102102020311224],
+        222124020411042: [114212104110100,102242201000222,100000104100102,102001040222000,111103214104101,102102042002001,112400420204232,101210321023022,102110444130000,110044222001040],
+        1010340300041333: [102312441104020,100013411224200,110012442200211,110003302000022,112100222300311,102231011100310,101142320332414,110114004221012],
+        200031023020211: [100002014200331,111020032203301,101000210303342,101440400302320,101012220323021,103000121424330,102111021022024,100300114310112,111100020020010,100202004324322],
+        1102202024020044: [102040431121110,101221020040220,114111100021420,102212000200124,100300310140241,100103104302044,102141212000200,101203121020430,100030010102102,110041004200044],
+        1000221300013104: [102000020223013,114040102301100,100020241043022,114413232320000,100100001040134,114441124140100,100002004130101,100301024310020,100130010101430,100020001030232],
+        310340012100320: [102000100202041,101021041001434,111200024131220,111203034440323,110320222000043,100112401020300,100100000400120,101001031031221,111200004424200,112000211131111],
+        133041110030432: [101440201100000,100003121040104,110013024201420,100112104300311,100002100021324,110233022230043,114000012210120,100030001042004,103002421401003,112101100420213],
+        112124222120002: [101112404231342,110011401011100,103021030102410,110430314220010,102423100202400,114100212211004,100020011230424,102000034004310,102241021112220,114002114102222],
+        113000121011001: [110240001202102,103200004030010,101002100340212,114200012321223,112000030210340,102100020214203,102201000203202,102302001000120,102111320321320,102010002000404],
+        200401012020122: [103233020100000,100120414231002,102011201320040,110400230404040,102000124010244,102202431120401,100303204101034,100000014310210,100022201044014,102212204021114],
+        1004310040031010: [101000024002230,101100020330020,101422021012014,111030222201023,111001200003214,102320010243201,103220000100301,101302204221000,110012020021204,101001420312100],
+        1000000122040203: [100013204331410,104123000021013,101024000321043,101000001031042,110000030020101,101410101102110,111300400001004,101000040321140,110000321211330,112203044010404],
+        1000000002310000: [101010201030113,102401004043011,114012012300010,102223134010120,103020440120000,102232004040004,100241224311010,103000200122014,111302120011012,102013220201100],
+        1040220010100400: [102101211411000,100102224033421,100120040400011,100400110020244,100124021201021,114011120010030,102310100243242,101240404044020,100200044121414,100411201002420],
+        1421413320421301: [101011400320030,114000004022410,102410012002102,101000134010220,112222032033421,112330302020202,112003042310200,102220001120020,100040000003122,112024140222012],
+        240422402100404: [101020024212042,100041204212120,100410110420202,112423424042102,100320431000002,411200101402221,100120214230002,103204200103440,100210004104001,101410201111300],
+        1002201010032044: [102100104000040,112132434020310,100000144104100,114200024110134,103340114022112,101014014000004,114001000010010,102110021341000,112440220203204,100100104102141],
+        224003110224044: [101210010304011,112300212023031,114144004124200,102000121122000,110011424414202,110000214202000,100040011023003,100123031023104,114223212320410,100302114311412],
+        110233020243242: [110214202044002,100041311024000,111003002230111,111202220001030,112100024020200,120120044004103,103040221410110,111001120001220,111120140012242,110130432212100],
+        211201004430001: [100212424322433,110202212230010,103020201401020,102000401132401,114022020042232,110400204221003,101100111144300,101112041101020,102142101343402,101200001010111],
+        1422032101002320: [111113202211020,101013004000130,112004030241132,111203034440323,100232004221200,110344041332022,100201000011432,101042144010200,100011031001031,101000214213100],
+        1204224112141011: [110120144200000,114022412330004,102343230224321,101200221022044,110241112020204,100002004104004,102100224000210,114201104111034,102310140240012,100014204201000],
+        1011100020240001: [110001100140240,102230114040102,100244204311004,112001002030133,100240203220201,110200114241402,112020201122220,102000100240000,100010201023140,114000020043211],
+        1012241001010021: [114211010000210,100003040101420,101440004020212,110100201000100,100001024102310,100000004210012,110202102231202,102112000204313,111111024404430,100224120001302],
+        1000222343220004: [100022021024200,102002301410122,102142020212310,114100220004120,103010420140201,100022401001413,100101104303303,103304004023413,100022201043312,102002410201020],
+        1022200022201030: [102233404040001,111220244103011,114103204100320,100020021022433,102000044000420,114400000004004,114202002320114,101003401032000,101020011031332,100032114210020],
+        1003140120011010: [101221020040220,100103104302044,102020004000014,100000211023014,100201111002224,114242410001010,114202044111100,102013420220240,114212100211223,102102044001132],
+        1022040020020303: [100042100102211,100300041001121,102110030200120,101240004011021,100120014100010,102303030241010,114001112300001,102202144110114,101013220320021,103002020142122],
+        121030201021201: [112113214020100,102010202004402,111130312211003,101001010300404,103340004020422,102420221112201,101224044041002,102211430202033,100010344310042,101031321022412],
+        240103001022000: [100233220003022,100040104202411,100040204313012,102101002002010,102200000201240,103200001423140,110431012224002,102123402001200,120103342024110,114220320210120],
+        242322430033202: [100020214301001,102022024000100,100040001230110,103010100143010,101022030320100,114111220030210,102030004000400,100021020201421,112402122023323,103034201424002],
+        1000010302120013: [100002221021122,102122111412001,100031430104201,102030100200300,100000020002303,110004031201142,110032230410440,100200014301133,101440220333000,111303102204110],
+        1111200020001300: [110212012114431,100001140020000,100012101223021,110013030020121,100121104300201,101220330300003,110132000024420,100011014130012,103103144000200,101003131002404],
+        120213302000302: [110130102010010,110100030123401,101000011000041,110001010030000,104100302102030,110102202013213,110000242104040,100003110022310,102220314013103,100022000200002],
+        111321043004100: [100032041021210,110001041213031,102300324010203,110414300030001,100030020011022,102040011121100,111202012222402,111322234130000,102040041320010,102402104022000],
+        1021000300402040: [100303101202010,100201244032040,112012000212410,112000102000300,110104101002000,102000034013010,112010102001040,110030202101140,103012100122324,111202030012240],
+        101024012430110: [110102224201130,103301201402204,102401121113302,100021020124002,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010,114042014014024],
+        102211043020114: [102120031140142,101010224000130,101000414002041,102322004112023,100222044100141,100020140002030,102134144003010,102010420220104,103022301400010,111240240000201],
+        130010310333012: [102320130240202,110140042002031,111001024132202,110223102022103,110010132030102,110120100000300,111013244111024],
+        1130301021023100: [102021400220100,102301040242220,101020041110102,101401414024002,112002002021204,102140111141440,102202102021204,102200121300410,100400002201023,112200322042040],
+        1000012043200222: [100341320422234,110110132041402,110020422002214,112034310220200,111022124400200,103140240112020,101404114023200,101040214002020,113200210100211],
+        110123031100101: [102121221343020,101400010303002,112104424022201,100013211002142,130030220200012,112200110000221,1300034431310021,144020001004041,1001010233020100,102210104000000],
+        101323202030112: [102100022003140,102102211021113,111400024404023,110020122000043,101004001030002,100210120430000,100010004100021,111240124130104,110012211001003,111103242111211],
+        121001310402023: [101010010320112,100021111043012,110124041140000,103300021402104,100001000100403,100020124100010,100301020140000,102102024000001,114003104032034,103214430100103],
+        110001411212010: [100020220420321,100120004300002,101000310140030,110302010102310],
+        243100400000122: [114000042302220,102000021101201,102141300232324,101024401112120,110140141201202,102341100242122,100400002201120,200030234030020,112020311120102,110000000000000],
+        1000322000000011: [111101220012213,102330230243214,102202020204012,112104230232110,103343430113420,103023421431022,100043404304122,101230134011232,114013134031222,102204001121032],
+        1000402100302214: [110100104404110,102110042001043,110200200400310,114100002204212,102003000212104,110000011301000,102000100220240,110013001200012,102030204000041,102110021341014],
+        1010020123402103: [102403001342000,100400020033040,100102431021300,110200212041001,110021224200431,111210224410302,104110100014103,112310402020014,100033211230014,100001211040232],
+        103104002232210: [101214104041040,110104231221040,102012204010044,103101000100022,100020141044111,114200000002420,101024420304241,110401440001204,110204310112224,100042110122000],
+        1000143101402202: [101012131000024,102120221022200,102110141410402,101044001032114,114221104114000,100001111032112,100400212200322,112400004020421,103221021412001],
+        111020203013314: [100400220013224,110402021310312,112201000410000,110401101112014,110014400040200,101033234000033,111414014420011,100102224030230,114323000003430,100000111020230],
+        142224011000001: [114004102300332,102020010200114,114103244123211,102240044042003,102331010240100,102003231440340,100341231202001,100100020021020,114023102300012,101000000321010],
+        143141122114011: [110231202040203,103014224004000,110024404201041,101040001230002,111200010014132],
+        111004103010112: [100030220422042,103442424001120,103101001210223,102210324032234,102220001100011,102202421300101,101013001024140,112000234001001,101040030320010,102100041140211],
+        332402034330404: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1421124420041003: [110300120403013,110131002010202,110140044401202,101120101100112,102000300200231,100002030410210,102231031123103,100221321000021,102010320232020,101043314210310],
+        110202413200020: [103242420100012,110224044242243,101400004022112,101040004010012,100100210000011,102200000200201,110020402004210,103110020210000,114004030023211,102201430201310],
+        1040121123202000: [100200104321000,110000110410110,101021000341001,112032302000220,102004301444000,111133030010200,102103231340304,114000044101422,102020204002424,100003044240120],
+        101001202100021: [111014202144002,103222100100201,102101034000000,114004000044132,100131401022011,101000000312200,110022124200220,100010321020020,100122430422300,110011002100202],
+        221334220100442: [110010022130210,102000124012341,102321101000300,102010020210100,100000404210104,103100104000130,102104211400330,101130024000302,100210310002000,111303024130204],
+        1041002103101211: [103004420100020,102220032001000],
+        222000111000200: [111333104124202,101004120224442,103102000121300,114000320043340,111100030030120,100320421001431,100024004304130,101233021020010,111100400022041,110320002020403],
+        100043121004014: [102020200223310,103043404000202,101001400301113,100002120200101,102014111102023,102432114041004,101301014220002,112410300200001,100021201020001,100112240020023],
+        112101400003100: [114020014110120,102142030224211,101000034000220,114102140221100,110000121300012,102112411342231,101033100302011,111122004100320,110034004420011,100202140430130],
+        1000023022010021: [110200411140130,102301002004242,100131011001300,104100302102030,103200030110000,110102202013213,110021404214210,101003014210212,100210024300001,100000200003102],
+        1003202110244000: [110020001310000,110214024430312,100011014100041,100310201003000,110412121110214,100212341003212,110142300120000,112013212032000,112010220224003,112001040231401],
+        1100012401200032: [101222321200012,103103240104001,102123040212103,100204104322122,100041301021020,100102001301220,100020011020010,114130000220023,102314224010213,112113012010000],
+        201141100111002: [111121100010021,110310034424102,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202,110043400012000,100010020101222],
+        220204431033020: [100243401002310,100004000100101,114230014000002,114130104001000,101004000304012,100022210410130,114034424104042,112043001120130,114021214100300,112204111102324],
+        1111021122201211: [112003001123403,100200004300314,101101424003234,110034022104420,102101210314100,112013001120433,102240001121213,102200000240110,112221030222111,101010404210042],
+        1011010232142210: [100200011002200,100211041001012,114002102301240,112001112002104,112200000201104,100234124120220,110030010120002,111003212230033,103400130120100,111020404402004],
+        100140423230102: [110012140020202,100003421041001,102010212000134,100000300100343,102110021341422,114241022332104,101403020334021,102002000224104,101200201010041,101212430302203],
+        1032301032221042: [102000004002101,110202000000310,110000010120043,100422314300200,101403014020203,102141410230020,100042030120422,101134224001001,110020001224021,112100000200031],
+        240000400333000: [100002100100210,103020031403100,102200401111200,102000430221040,114003104031111,114000044020204,100102020411200,114221030000011,114200302341234,103002110100200],
+        1012001220400002: [114034030020130,100000301031020,102422310203100,114224200210241,101010244002013,102343001000312,100001200102200,1001233110104110,102100201341123,101101030330100],
+        1433033010002414: [102110000203003,114002010040032,100400012201120,101204014010434,102020022000021,102000114010020,102102000312101,111043144410240,100020101030012,111222032223120],
+        101142112000021: [103122020213112,100104010021241,114101100211240,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,100022301000112],
+        1101131010041040: [112000431120410,101342300314204,114104200220022,100021221021201,110001244204302,102010244010000,103003204011330,114200034110031,114423002314000,114010134021022],
+        100401020211000: [110020301320101,114013212300032,100014030122001,114001034010131,100340204310400,110302220011010,110401041140300,112143002312100,103000121403344,103310041402103],
+        102104410120034: [100000021040000,103120304002002,101000011111001,111231434104200,110222400112201,104100021240122,100033300410212,102110042004000,102201000200211,101100321120001],
+        1001310000104421: [100004001021111,101021004214202,103022021431010,100003000104203,102101220214011,102114320203000,114001112300001,101003104212220,102120231343021,102311110240101],
+        221000313224300: [100030324200410,101000001111200,102300404024300,102113200210140,100040041020102,114200020003431,114041002212302,101002200343110,100212024322044,100140004102001],
+        201000010033001: [101204334232020,112012002303014,100004340004131,100210421004302,100200411000410,102003101130231,102240200214023,111021220021002,102101024002102,101023011142204],
+        1001220422432203: [102000034011002,103204000110000,100001014340021,114203202330210,102103001340022,112032000211000,100002110000131,114100102202223,102331221102213,110021204411214],
+        101003121003132: [110332424431130,110011414201101,114400104140001,111120442100320,114312112320302,110000121033240,110122114404243,103100024003112,111010242140140,101112121144002],
+        1020204211302421: [111400124420002,101033124000402,102401000201121,111013232200403,100112044024030,102214104010210,101202024231020,102201100240444,100012001020330,101013411000000],
+        140111020022000: [100440031001120,102203004042010,114203042330220,100020001041410,102032012000101,102102231400111,114014112302234,101004201001232,112102102302000,102141231343401],
+        1031202210413240: [114003014100103,102010420200220,102033001100221,100210144220030,100001410012241,101003004000010,110000042000440,112001132340013,111002130041004,111122402242000],
+        1010021211301100: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        130230002001121: [101233110040000,100001214100401,102422221110121,110123104200100,100200220110004,110422120034403,103102200210402,114001102211300,110400031000210,100010134202001],
+        102441000440213: [100442024301200,411231400122100,100400414321103,101024000322432,110302030412400,100110020000040,102132204131302,100010100000320,110020034203040,102014031440442],
+        103224100021030: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,110100034200300,100401201010220,102100204000234,100211120140002,102043221012112],
+        102330411203011: [102340421000001,102040410243001,101031122400122,114342304031011,111430442210202,102143341004201,100202210000020,102101101400002,103304110111122,102103114022230],
+        222312020302324: [100120201020014,112433322023300,103202404032404,103331140112102,103121211441140,102230201124100,112102330202300,100400202200330,101403200300001,102011224000020],
+        202003000303201: [100000004100202,101024004002101,110120041200201],
+        1022340400110004: [114024312202242,100020001011422,101023321000020,100110411200024,114020000022214,111240020000201,101012230312200,100442041001211,102004131410330,111120024404002],
+        1034112100120120: [110003000042343,103001224014142,102304000241010,110011000043131,100004220412332,114102400001020,110220201301140,100022221044012,110312300010200,103214210103210],
+        103123020001212: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,114040204014042,100040401020413,112414334044310,114001010044120,101010111033143],
+        1222000304210221: [102231130213210,102000402041014,100043324210140,114113104123200,100023024211011,101210210300031,100003201021001,110002021121023,102300040221403,102201100200430],
+        110040202310000: [100004001021111,100003021033300,101021004214202,102110020202330,100001010014420,100003000104203,102101220214011,102114320203000,114001214100103,114001112300001],
+        1002430204000011: [100002414210010,100021014100124,101020104000001,103013200120113,101313004232122,100142221042020,102012200200030,103210011421102,114202124000200,112041432030144],
+        130133022034003: [100030420000100,100400030013203,111200314440011,100421320030200,103210400102031,114240042320132,110410330000000,114100042343200,101223240301022,100200044121001],
+        130221220211110: [110232022123020,100002004303100,103140044032100,100010240101221,102100010213413,101024011034002,102000041101100,100032224101400,100042004301301,100012021031014],
+        1041003423011011: [100042320001030,110024001010110,100100014300230,100001004300242,111120044100110,114240314000100,101002411030000,102002324011002,102400001113002,102413001402023],
+        140220200202201: [1010400230221020,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122,100002301021040,111020002202333,100013040100000,102011314000200],
+        1101310120000003: [103102041440324,112110032304211,112200431102021,111320124130040,110042234410000,102424111401024,102030200222404,110010042000123,114040340020333,101100240320232],
+        220012401200004: [111000222232122,100102204231301,114021140020102,112201104011200,110003101312402,102014002000001,110341024422102,110024120430323,111012400013240,100003240003001],
+        100410000204202: [100121230031032,112000431120410,103042024040104,102304104110001,100104211044110,101342300314204,114241222321321,114013124030022,100013200100011,114104200220022],
+        124112142003300: [111304340002030,110102000401214,100100111044040,102024102020000,102224241110003,100023101001004,102001014013004,114022100010000,114321004030021,103210210100210],
+        100222000201141: [111220202240410,110114002004014,100010114200031,101224110303300,110003020001402,110100200402003,114001000010302,101020031112040,100020134200102,100211114340130],
+        1112112104001010: [100030324200410,114202244112111,102110202001010,114420200000104,114041002212302,100043200102020,103332044032320,103102210210321,102420030231021,114040002300000],
+        1001024020110042: [100321004011041,110002342100014,100301300121100,111101042244210,110124002040002,110023410122402,110042400130000,111200020004203,104101201240100,110000011012202],
+        222000000111030: [104110021244203,100200004301323,110010030440201,110041002130210,110020004414024,102103022002001,102102224000012,102100102001032,100142431013000,101000031001011],
+        301201321412114: [110241024242442,110444010032242,100001041031013,110300112023012,110224200113042,101000020301410,114000102210200,101041001032310,103103210111220,103100100100104],
+        1001401204010041: [102001200221011,114201004110120,100412114304000,102021014012210,101000004010012,102244221114031,103030104000102,112400000200011,114201024112001,111101400011011],
+        122000221134002: [100032041021210,110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,102000221442214,102040041320010],
+        1140040230300420: [112213000200301,100003224334120,100404224300012,110204130004030,110003200132101,110202120003032,100322004314021,102022010220223,100404000020012,102343301100440],
+        1020124302410002: [100031120101224,114122220031004,112040200233002,114022214031210,103234100101221,100010111040104,103103311424020,1132202011200221,101030010320024,102303020211000],
+        300131400102132: [102033124002102,112410202021300,110000201301004,110002040021102,100000001032140,100110221000310,100030401031400,110031001010032,112220100201030,110002212132131],
+        1031013004111344: [110111001300044,111000002202324,111211010001300,103210001422303,100101141042243,100101100022012,102020440242023,114201004004000,100220010002421,111210240010100],
+        321212313310000: [102110000210300,131402001003121,104220041321240,114420000001024,103300031403210,100022131043110,103422421110341,102040300202332,102100100230142,110030140000021],
+        1031114101021312: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,111112204404021],
+        1000100321030402: [102000200220320,102021030221122,101322410300004,102241210201000,114040222301101,102140110210424,114101004100000,101010221002100,100311121002020,101303104220020],
+        100032110021202: [111101232220021,112100200202204,101022201033321,102001031103412,110033000020122,100230001202112,103100301242013,102004002040221,112001010223002,100200100000040],
+        211431213023002: [100103301002044,110020102102000,111130202220102,100404200013100,100040104331012,101114024200021,102240041122001,110310112002442,100200320000121,101144411020100],
+        1420000231002131: [103332104032020,112431212020030],
+        1001400221103411: [100041000010302,112004202302034,100010044300003,111321314133000,101131024020440,103014004012401,101000134220400,102000401100000,114030202300100,112024021130010],
+        1002203313010142: [102142221342202,102001200221011,103043404000202,102420000202033,100020101020404,100002411021201,101000004010012,102110010210330,103024000103302,100012020410400],
+        1110400202040013: [110014002132100,101042104010000,104122202100000,110410000002004,111424002101030,100414231011020,103100304000131,100312021000201,114121110030203,100001122210110],
+        1403112231441022: [102302211100230,110211100000033,102002104004011,102102104002322,101020110321041,102014401132322,114030304031042,103130321244400,101400221012300,102031001100042],
+        1110114001102022: [114132202312102,100021110200330,110322110010000,103302034020140,103214104034020,100400000013010,110222201200000,110302400012002,100103004000123,101230234011000],
+        112014020230002: [100130434232013,100000100421200,112201200202200,114331000001140,110310130104000,100220020432312,101403314001202,110002001300010,102040200212002,101312001001330],
+        1002402303020200: [100200004301323,110010030440201,110041002130210,110020004414024,100031220121003,101100001102230,100031314241140,114302102300200,111042012220110,101222121020001],
+        1034011130110130: [111410202221302,110002302101012,100111401011110,102000034004310,100114110411042,100004004104022,100223010432101,100002004340344,100030314201020,100100044032000],
+        122140210310004: [110020301220324,102020100243032,100031001020040,100104001041200,102012200202303,103222114034232,101110404021211,103110041442122,114210400000112,114042014102321],
+        1141420000042402: [100131424302300,102104004021010,112033000244420,104132001240113,114302044003120,100001104310020,110014210424201,100202234032222,114400220000013,101422404040210],
+        332113304304234: [101400004022112,103110020210000,100022141030334,103200211410311,102100404021014,102303001102431,111441004421100,102000200223003,112030222004121,100141334301022],
+        1202100101401313: [100210014322020,114010224101022,100230410112111,100030131042200,101203004042010,114221000210214,102343022000042,1144030041011004,103400004000422,210202104001103],
+        112010020010301: [102022004012201,111130210020000,100000024210130,102034221103124,100014030200221,100020134212021,112001120220130,102102230203330,114100224120003,101001104003130],
+        1002004221333411: [114343002322014,100022314100104,102130314131401,110200002031302,100013024312024,102002020243020,114002002300201,102040021121030,100311314310000,101002134210440],
+        241120022010303: [100021311233000,110020200420132,103111104030033,104100031240003,102023021100022,102300024110101,111010204111010,111200302222011,100113144300434,100010010004402],
+        1020402011024131: [111002012204241,110004202003210,111021400040242,100000221030033,110201304240304,100034404303122,101012400340400,100020330410000,114001030042240,101203004042401],
+        1021134110410030: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,100103104302044,102141212000200,102042000222002],
+        1002040143040001: [111423000022420,140102120200000,110400444243022,110131001002021,203201100012000,122001000320022,121104330112000],
+        102224413020102: [114201204111222,100104001041200,103300004021200,102122214131011,100023031000024,114210400000112,103230134011412,100012004101221,114122112202230,102021021101204],
+        100003004002122: [100102134031030,110233000100021,103011041410132,100112104301200,100021242211014,110211104432213,101110040002210,101001210201440,111401304441341],
+        132200004340203: [100041200010000,111114212112100,111000002202324,104132100011024,111211010001300,100113434301241,114030020020301,111014014401303,103210001422303,100100000022131],
+        1133221102100310: [102141040210012,1101341442120200,103110004004103,114110012310040,422202004012314,111000000001024,110101112142230,1022020301440012,400020112402100,114300410001304],
+        122401000020030: [102000024011300,101011210300000,101002221140440,102040021424212,112400020200104,100100001010020,101000000322000,100102021220030,112002022034002,110200140401144],
+        1431100000100123: [100010424101430,114000224101044,102110022001111,101020301114001,102102300210103,103024011431131,101011324001431,102320200224120,100030014210012,114100300000120],
+        1100000310014203: [100201114323042,102102011341002,102141024001000,114222144114122,103001000102220,102021010243000,121100311033233,111110202240200,100002000412000,110103400121140],
+        1100100104010032: [112241020202432,103341411403412,114100130002210,100100001013001,112401002022010,103000214012340,100004204101200,102400134001010,102001004014032,101321040311120],
+        242110023420010: [110010302000004,100014014203233,111422100034314,100102001013034,100001014100021,102030414003000,101342020314000,102112104004041,101020041110132,102422101111002],
+        130000201201002: [114104032211214,102410400233132,114200004110121,114012004033222,101000321001401,110102210400043,110004004200130,102200200240031,102101114021130,112122000202103],
+        1100400310031200: [114000222211300,102130040230200,114030034013200,102303214031001,100001010101032,102212241110430,101124314020402,114432002322240,110130402140002,101402104020302],
+        1003200131132322: [102133404134022,1302221400222330,130000220021033,131114110030130,113000343131000,410120000124111,413200300004130,114223013001001,101310000020110,100103222310200],
+        102110032002304: [102301344113012,114010200020312,112144220201011,100002131020410,101001020322010,114112244122013,100111200414020,102443421400110,114044414023030,101030001030220],
+        1022141210111220: [100121230031032,103300344012201,100122200012014,103042024040104,114021002302020,102313204114304,100013200100011,112100102300200,111201424100200,112130011100011],
+        1100100220010122: [110202012100020,102120231343224,111342020011220,100314114322101,103100034001310,111222102243400,100001221021031,101322221001021,114031010010210,100010001032003],
+        140021410010010: [110011414240022,102100104000040,112132434020310,100000144104100,112120224040040,103301410110110,102124031023100,100204104320231,114002104020100,102311011000200],
+        1000021220012121: [102032031130301,100013401040442,102410234024100,103012134011120,110412412010034,100101132014001,102102024222122,144012013212122,111204203012002,122300240121010],
+        1403201000102401: [101421100301230,102130124130100,102022020204430,103214021400010,114003422304142,100012401020212,110100022010014,102000324011143,111110420014032,100003131040012],
+        1012000230000340: [110220100000102,114042102330002,100014001041000,204020131034103,114113404003030,102310030240210,102200400234000,103001324012043,102110222004041,100102240020100],
+        1001242011302204: [114010200011100,100102110412002,100000204214001,102022000220004,102310110213220,100012001042030,102000404000400,100013040404011,102004004004200,101002134011001],
+        101041110002034: [111104102242110,100002200410230,100044010200300,102000021444112,100003010413400,103334120114003,100130204300200,110112131124012,102330104110220,101012224211030],
+        1120014221202210: [103200021112201,102100200234203,103221021411102,110001214200042,112002242001000,100021111211003,103204020102102,112010204003014,101032240320040,112001302302020],
+        240222400400110: [110000002100100,102022114004241,100200001000210,103230041400313,420011043004003,100012010410000,102302201102102,110222100022402,102004220201101,101210304043113],
+        141300220000012: [101230002122040,110100041200400,101210241204043,104102040011120,111311120014011,100123011004113,100420001002101,101134224001001,102321234111310,102020121102120],
+        111104440033432: [102124404001102,110032021010202,102202001300111,111221100003110,100401442201310,111000022230000,100400400022120,100212011212040,110100021302001,112042321111000],
+        1121004142000010: [100300041001121,101240004011021,100120014100010,102303030241010,102202144110114,103002020142122,100022101001140,101401101012402,101002244012322,100000410122022],
+        103211301011430: [101004200304221,102120214001422,101412300302220,110320002024021,114002044114140,101424011012000,110010444410200,102103101004410,102434111110111,100431000033004],
+        1421032030120000: [101222101202341,110301442021010,100010024302100,100000011020412,102022400210202,102003034011323,111300000001323,110000002001040,110101000121214,100440441010002],
+        103123320204204: [110301342021212,103330101403140,114102330211330,101021001140430,103000004001204,112124334023200,100000021232013,111344100003001,102141341340331,102132040202300],
+        100111222201202: [102100001001320,111431114420423],
+        1002000011024023: [114010034012014,103200031411100,100010004300024,100000324340102,114443200000122,114000102300102,114444124143021,102101000233100,103030024020041,110224104244000],
+        1100021440000202: [114201010001201,100030024300201,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100,110012404201130,102311210240013],
+        1010200102002042: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,101110404021211,103110041442122,114210400000112,114042014102321,103230134011412],
+        312000302200112: [103300034021000,102441324022342,101041301000020,100010014313003,103220114040342,112032000201314,114240004002100,103000111403340,103102110210113,112120404000342],
+        1011211122203013: [100202400434310,100000010002202,114410024140040,111221024440402,100021344104342,101011121032013,110000300444443,100203021000012,101001020321310,100221014121144],
+        1021223331003222: [102012300212321,112400202023020,104400100142023,1320142020103004,1320024233112412,100010230021300,102230004030112,402014100021201,1002022012411300,214021333002200],
+        130300011132214: [110100100101041,100420124100211,101040120320230,101220000040002,100422001002123,102314001101211,110140001300022,100212024232000,114202422323004,103120020221120],
+        1400001010013100: [100000241020300,111021030042411,110131011000142,102401010202301,100201134320102,110000302122001,110202012020000,110043414212400,111110004101041,102021410242110],
+        122101040014100: [110210221300113,110304014433122,110200004243223,102000010200200,100002330412031,114020042302142,113420011011140,102142231143322,110020122000000,112020402001012],
+        1020234000001000: [103100030100010,102013110201200,100042000102010,112000230220102,102013000202010,100200001210240,112010022302321,101040224003400,102304111101041,103204101402321],
+        1000310012004020: [112022420230003,114000044031200,102220204002000,112020411110200,100102011022214,101130000022041,100120110402020,101011030320023,100211004343003,112312002020000],
+        210020111331033: [112024442000120,100100320100331,100024010200212,110200002122130,112002022302433,100010021042030],
+        1001200302144433: [110322011230103,100023230123400,101020031114000,100021020100003,102340024021002,110112202001101,130100014120020,102000031101300,102142440202140,101021011140144],
+        1434431010142230: [111002100000102,114021010040140,110220130100010,110203022032320,101300004233220,100300110110043,114000102300040,102011011130000,110434102020102,112020040231003],
+        1100020142200241: [102010114022011,103340041403223,114002200000421,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,100001111201214,100024311220202],
+        1001020100031211: [110301442021010,110001332103022,100104004300024,112041000220020,111304202202230,110000002001040,100440441010002,110040310040200,100430440030020,100100124301211],
+        1012140202122000: [101000011030111,1300040101002020,1142022100220102,1212333103010100,100103211002030,1001002042020200],
+        1202200030021033: [100003211020020,111000240044102,100000101040120,102300000220000,102323320240010,100011200100023,100010044213301,100330204322010,102111211401000,100122124300402],
+        101410041124224: [110112320021204,114000000030300,110302130004200,102112100210100,110011111104432,111410004401301,102300044020403,101113231111221,110020131231003,110411032122430],
+        100143114302211: [104132212102200,104100042101431,101410241100300,102000114001011,102320031100120,110231011210112,100402420022220,100421010013100,102211414034011,102300300212011],
+        1121240102001110: [100000304340012,110404211211000,114120004000010,102404000230201,114011012210001,102212014011000,101301101004120,100000311024240,111040034111020,114140212320402],
+        120032110220044: [102240020200400,101210331023020,102101134004010,103240100102101,101011211002010,104110411304420,100222100412022,102140002000412,110043001201204,101201324232020],
+        1404011014011042: [110021104200001,110310020040401,110202204430020,110310002221402,110030002130201,102103320232241,100200000000210,110200222111020,110111001302000,110210304220000],
+        202020130110003: [100044301030400,111311402221430,111420230003130,100030100423022,112203301101120,111310000013103,101200000302112,100020001031123,100114010111402,102120124032210],
+        201301020200210: [100002021042230,102122220214101,114112012310000,100120210410001,114043402214302,100000001020340,100104210400100,102002200200004,112011041133212,110402031313432],
+        1124000010333132: [100001214301021,112222032444022,102012002340110,100000111104311,102001030200014,102132022121211,101002024003004,100040010002304,102200100234232,101020244222024],
+        1000123120204200: [100042304102210,112202000411103,101040100302002,100013030100002,101203001010111,100310034310200,114003022300020,100031201030102,114201104114111,101041001003300],
+        1010312311112214: [103112010213010,111400002102112,100034100124302,111112214101000,1320102201231021,112201011040200,101102312120003,100011221224211,1040000220110240,102221020200001],
+        1100030122222312: [110303120102044,102120012001031,100400004303004,110002022030224,110430320104000,100204011002001,110020221320103,110121111202231,110200000103403,100000104342200],
+        120203302122312: [111310220042301,112410434041401],
+        1441321210011004: [102342214020012,100220024324023,100214104301120,104130011240303,110010000403030,100120221224010,110402101344233,101001011001300,110000200000133,100112024032033],
+        104000302123421: [110401000034204,101002124040021,103021310002011,103010030100210,111203024411040,110422202110101,110003131322240,100112224231100,103020224043113,102030004010201],
+        1111113302204330: [102013014013202,101000021142220,102121020220022,110020222000021,100021004302213,100133004030124,102021022002100,114100100220411,100100030410113,111012020024130],
+        210033232000044: [103134014000340,101440004041120,100040210411102,101031214000041,100110004102034,114112020212203,114302020003041,102110014030002,114300132321233,110000140032001],
+        1021000000413120: [100000004102001,100201030430140,110203224240202,100004024100043,102330001104103,100200241000143,112004002314010,100241214220112,110033430011100,102300401100413],
+        1000002320240103: [110021104200001,100302141003012,102004441124110,100000301221024,101224322120022,114100200002120,110310020040401,110200010014000,110202204430020,104120221240413],
+        1024110020330200: [110331400400440,114021140030020,111040300024044,114021112203114,103124000104424,100100201043042,102011011341100,110130201011011,103220000100002,102010010223000],
+        120413001003011: [102424204043100,100113220020101,100300211000020,101410401010030,103210241422022,103240001403000,110020124200230,100042034202031,102103100310300,102012014002001],
+        1103200132421324: [112213000200301,100003224334120,110204130004030,110202120003032,100322004314021,102343301100440,102410434000220,110110440020002,101101000330302,102020214010123],
+        100011004110200: [101230002122040,110100041200400,101210241204043,111311120014011,100123011004113,100420001002101,110201134243240,102321234111310,101004010323441,102000024000002],
+        111020032003204: [100021204100204,110211020000002,103002034034022,111230214102412,111433044442220,100113410410320,111201442222420,101000004013020,114012000022010,114222440003300],
+        142110200030101: [102301004011202,102000201100400,110034120023130,100110010410230,112121040200102,103000101240211,110100004223144,100134044003303,110220010010120,100020311230000],
+        111212000241041: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1002030001214342: [110022002120332,111110230014001,100301101000021,110020140044140,100000301031020,102100104000244,100221000031141,100420031002301,101311010340421,100011301024003],
+        102042301201101: [102010202004402,111130312211003,100141214304000,101001010300404,103340004020422,102410220200004,101224044041002,102103214000210,100320114314042,100040400401001],
+        101220410201134: [101301014221122,114220040000201,102102204022310,100404400013222,110012130410040,100104101200201,111040100020010,112201010203210,100000214310412,103042320101230],
+        1000121020140020: [100003021033300,100142010410011,102110020202330,100001010014420,102041410242244,102101220214011,114001214100103,101200004040021,102323201000412,112102314020000],
+        131231200410101: [102334004110232,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,114124002341030,110302322102041,101300004231010,103122214003002],
+        304410114003421: [102001231413224,103003024011120,110304000402222,110001141011223,101211220310040,114210010004202,100020041020122,111132244101222,100114234304200,100000220002002],
+        1022000020300033: [110001030120020,102233034000002,112130004021000,213002142300033,111212024101031,100222240004231,102112314002011,100030034100004,102241414034000,102223001303020],
+        1100002202412323: [100012400101400,111242212222022,102022411100012,100020100100300,100001210102104,101401140300101,101242000300000,101030004004303,114102404120000,102004021442313],
+        131220420004123: [101232314010241,100301300121100,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,100414004300100,112102232300222,102200000201120],
+        1020200240302400: [111020030040120,114301022320021,103344200113430,114101104102004,102440024022132,112100102012303,112003402002003,303020404011031,110432112113300,102012044013241],
+        1020412223013431: [110002342100014,100301300121100,111101042244210,110124002040002,110023410122402,110042400130000,111200020004203,104101201240100,110000011012202,101001040302400],
+        1440032123021120: [102231130213210,100043324210140,114113104123200,100023024211011,100003201021001,110002021121023,102300040221403,102201100200430,100114021040000,114121300224141],
+        1002100401302020: [111330004130112,110000042002101,110010240442010,100003020422102,100120214231002,102001210221210,100042011210421,103020024001001,102314140212003,100003014204122],
+        110200000021104: [112113214020100,103300344012201,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,101001010300404,100201104224131,103340004020422],
+        221000130210110: [100020120021020,103001101422010,102100411121420,110110200000021,101324104210010,111001400043101,110444020400110,100002210000012,110400110001013,100013014310022],
+        1001002313402301: [101240421023020,102110200202220,111031014133130,101020401034001,110103402012010,102440214020040,110004124203400,114010100001220,112022102000012,111000430020000],
+        201010021240440: [100023011001021,100122204230331,100010020003124],
+        130200020232002: [114202130211223,110110242112211,100033114200011,102201130200131,110100111221242,111110100010302,114020202201002,112002024004122,100410040030230,112120110200240],
+        240041203020200: [101002200301130,100004431210220,103401034002022,100113211221220,102204000232030,101004004000320,100011344201241,111111002111301,103110404002224,110400130400001],
+        1114000002330402: [101000224223002,112010012000201,112240000413000,101040201112304,100100301021212,111011024411424,100000101223200,103001404042022,101000231002312,113001320141134],
+        100212132201001: [102010114022011,103340041403223,114002200000421,101020321002002,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,102301041000014],
+        112111240000140: [100023421041402,101010224000130,101144134001102,100210020410010,101000414002041,114034422302101,110421104242000,102322004112023,102112404030400,100020140002030],
+        122220212021024: [112241020202432,110443000000102,102430100200123,100100001013001,112401002022010,100004204101200,102001004014032,100403001011201,102002001442000,101002024002423],
+        124040202022100: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102122412001012,102311120222404,114020404020132],
+        1400014000001312: [100013304331301,112000022302210,101132101110121,100002441034002,112001001132010,110221412114120,100131241204104,110111242012201,100041411223021,101220024232404],
+        102040442400304: [110141010001110,104122011242020,110213401202210,111103310001234,100110441001000,102312000240002,101202124010000,102012104010301,114123014001020,100004004303030],
+        201021122032220: [100214121000000,100002244244011,102011041100210,114323000000130,100424104302020,101013234000010,103210014003000,101220441204300,102011112000100,114120134101111],
+        230002034010432: [102430140202114,101414014042200,102120001411020,100124144230110,100040100003000,121443142030222,102040011100303,112020322003421,110304022101121,142001100014020],
+        100120242322132: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,100001021221000,114003134011032,100101234330123,110024000432310,102012101443110],
+        1002114030300320: [114034030020130,100000301031020,102422310203100,104134440011201,102311021104000,102104220213400,114224200210241,101010244002013,102343001000312,100001200102200],
+        102421001141212: [101242011000124,100202340430142,114420242311240,110141001301302,101200200300310,114011402303024,112124000203110,103330201404321,102104212003342,102020004000040],
+        120014211020422: [110100000124440,114233242330032,102012004002430,102020000204042,100241101003430,101001224000033,111020120042200,112012212310300,103000301221001,111020122111214],
+        110102220300102: [101021020331240,102131221410130,110031011310220,100020400003003],
+        204242212230220: [100222004320102,100110004103122,103020200141000,102414034040100,100022304302043,103031300144042,100120010421220,100000111034100,103132114002002,100412200002013],
+        200041240220100: [103000230120042,110111001300044,100101141042243,100101100022012,102001221100211,102100132000411,100220010002421,101240204233201,110320100402023,110220411214021],
+        1141300003000001: [102000001132113,100222004320102,100110004103122,103020200141000,103031300144042,100120010421220,100000201041300,100000111034100,114011200003102,103132114002002],
+        1101044004001200: [110100200030100,100000411231000,100023001222000,101002124002220,140300020110000,100003301030120,100101004230030,103044004034040,102300231000210,114034000012210],
+        111400020211110: [111130224102101,102322020212020,114403304140021,100031131042030,112201422040000,114413232320000,114024130031020,114022300011000,114441124140100,114000002330112],
+        1124411200202010: [103140114002241,102000301100100,101300414221100,102331201001140,102200230211200,114001042203020,112220022044223,102104411412302,103010210142002,102301010220021],
+        1240312210020202: [110441140102024,101004120224442,100413311002132,100320421001431,110210301200101,111131102210013,110400241240242,102210101121104,110023102103200,102400140230123],
+        1100203201112130: [102034011133220,111001004401004,102011001104040,101310340314200,102100101124222,101001001000001,100204421000010,100010111001330,100110041000011,110102320002010],
+        124101120211420: [110011011212100,101134030011000,112000244001222,103220211421421,110123230124040,101000014012442,131000001020102,100301311003043,110430014221230,112200412033030],
+        1040020120321030: [100222011211021,114031112210241,103201114030123,100002430012110,112000312000120,102120341340120,104134440011201,102311021104000,102104220213400,112021011112000],
+        1002304404022010: [101201111200422,103340404020014,110104101003002,101201101022211,110021201011130,102100004004440,100212001004102,100011414310123,100231224330202,110420432122312],
+        204000022400011: [103134014000340,104103100010141,101440004041120,111101222240010,100040210411102,101031214000041,100110004102034,114112020212203,102040140220220,114300132321233],
+        101120020032110: [100021330000403,102004420240202,101302040341100,110040000001400,112101400230241,102110424004111,114100020221400,112020102003000,101003010300000,101020014210000],
+        1010402034220214: [111102420023101,102102244000330,100203101000022,114114010021023,101000000320000,102310204033140,112301101134120,103022000112300,114220212340004,100004240120000],
+        132142224424211: [101043042401310,111212022200012,101113012101010,111412020003222,102022102010211,100021220002020,103010441402001,110302242202220,103021020002400,111121004402312],
+        1133124014424100: [102002104014022,102041324001010,100002101021040,111200112221320,100000331021022,101400314042120,102011200242200,114244100003024,102410101112322,111331440000120],
+        1142104430233101: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        120221110220221: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,100400001001300],
+        1002413221231220: [101130000023030,100200400000010,101221200010202,102100014031110,100040001022001,102421340201120,100002204300121,110004342121110,100100340412100,111430002210013],
+        1030230031400411: [114201010001201,100030024300201,101041404002420,102220310200014,100040300102020,102101011342100,100312131204422,100012230204000,110131214220303,110143101120300],
+        1013002311002010: [100423004302232,110030220000310,100110034332223,101223100300200,102001034002201,101104401020410,102032031440302,100113004304010,101310311000124,111303214132004],
+        224200010200220: [102331021100100,103223014033210,110201124221001,100002001211230,114410102321111,114101004121222,101100234021102,114121104101103,100043110000201,110400112210122],
+        1110100012011004: [112000202000231,112003120213024,111212024101414,114204304101001,111000200000302,112301132022231,110422234241202,101401241102000,100000324200100,112002144000010],
+        202121012000121: [102400111402142,100010000002400,141030301403400,100000024100211,103224200113121,110140101300004,120020211120020,110230010010142,112003000230111,102031111324402],
+        1000103100411424: [101400220300033,100012021032040,100012021040320,102130224023220,102100401143124,100010001030140,102110101410144,114142204121324,112102421102022,111320134133110],
+        1001412201332002: [104400301202200,100030010000110],
+        1412201020041112: [101032104014144,102120214004010,100022041030000,100402020024213,102142140313104,110410020403024,112412300200103,103023141400000,102443011400041,101001100300012],
+        1201000121400404: [112004202302034,103300004021200,102122214131011,100023031000024,114210400000112,103230134011412,102021021101204,100231020102202,101000134220400,101410020300143],
+        323234033120000: [102010130231400,101000041031301,101010311003410,100020424214024,103422430124013,103214400131240],
+        1010120203003020: [101142400332243,110002001321022,102302004110032,101401204021230,103100010101002,102041201123423,102121014020030,101010221020404,110002034410423,102100220214002],
+        1100413031100310: [100321004011041,110002342100014,100301300121100,111101042244210,110124002040002,110023410122402,104132420010010,110042400130000,100114111014300,101001040302400],
+        1121101000401320: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1022013143100000: [102402024000034,103012024004312,102214020242110,100400212200322,101140320330114,103221021412001,100000204100304],
+        1110300004201222: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,103140124002022,101042421021120,114013204013220,102000100221400,114241204001213],
+        1242030100001103: [100010104331200,110100121224222,110002142120000,102011011321024,110100100030303,100043100103044,110121202010001,110020001300130,101120020304200,111242302220133],
+        120010202000102: [110340014422102,100231004220242,101202010301321,100021210200200,102304024110004,100400102040013,120020430310100,143112400002321,112301043200001,103040110122010],
+        100021140440004: [110000001324024,103100314001030,114101004121020,100040301042132,114010040023411,102001010222103,103300024014002,101021104212100,100000101030412,103031000121000],
+        1042102220010314: [102000020223013,114040102301100,102310111001210,100020241043022,114413232320000,100100001040134,102100121341102,114000214031012,100002004130101,100301024310020],
+        1110230020120320: [110103004402010,114010102301042,101100101114012,100210004104200,110210004220432,103201201204221,103100014001341,111243122210304,110403400034011,110000012031000],
+        1010300040002400: [110330400010040,100101231004020,111000100012002,114102024123030,111102010012102,110013112004021,100143040411011,102404404004104,114002202302000,100034000000002],
+        1044432423241010: [102400111402142,100010000002400,141030301403400,100000024100211,103224200113121,110140101300004,103103221421013,120020211120020,110230010010142,112003000230111],
+        1100200011104310: [114000242200010,110000440420040,100004100410134,102011201412140,114000300014032,100041121022141,102100100220230,110400032220312,103334010111101,102010200223020],
+        1010403000012130: [112233000410001,100021214200024,110102044223300,101022114002010,110402042222042,101013404000212,102121430200100,101001411000403,100123020002000,112121212311000],
+        1102002000204044: [110001022000001,110023342101220,100021004310222,110020422131120,100001000100000,112220322030220,110202222043022,110313312021120,102223400201104,102342120222031],
+        131130200220211: [103100221440010,114003344011001,100021101000000,102140000212141,101014201030204,101203001010111,100031201030102,101041001003300,100001100411302,114012444020220],
+        103221021101110: [102401021402212,114400044140001,114120204000410,100000001020000,100031011042040,104312001303013,101403014021204,111224022220121,102022001100203,112000224000141],
+        132200120000013: [102000220220104,114202044111100,100030004102002,103110114000220,103200021402002,114001200041204,114020114010322,102030401014002,101232444041012,100000020102121],
+        132030014424412: [100440031001120,100020001041410,103220011420242,102032012000101,114014112302234,112102102302000,102141231343401,101231104200000,102112011401424,111242110002213],
+        104040232200100: [102224101113104,100312331004000,103301244010210,114202144102100,100040310123023,103001220100000,112012012002100,114231200211200,102314001000244,114100000031020],
+        101202011120011: [102322014113341,101022104001221,110021422000000,112021004003303,101120030330110,110331012224112,101002200301130,100011120000004,110224130002014,102300030220022],
+        102011312440040: [110210134244100,102121041441000,114102022200000,110233010002020,111203034103022,102101304000012,114020202241323,110004402131000,101240024012131,100020114100404],
+        1022413300441010: [102000020223013,114040102301100,112121032014014,102310111001210,100020241043022,114413232320000,100100001040134,102100121341102,100002004130101,100301024310020],
+        103101430414310: [110302302001423,101010101022202,100013211002142,102211204000440,100200001001420,114141024004011,114140044002043,111030424400000,100031101031110,110202221212123],
+        1000100422231213: [114214340000030,100022214102211,102311204021000,102314244114310,100000224300120,102102004000100,114200002341010,100024211042404,112004440223402,101000000304012],
+        102130202031041: [100301300140011,100030031220122,102211104033011,103210000102210,111140000012120,101142444001020,110103010011301,101010404001431,103012204004212,101100044004000],
+        1004311100312100: [111211312220002,100001001033004,102014100241300,100001111022110,100000224300120,114200002341010,100410100001321,114101020000102,103030030142013,100000230122114],
+        1000000012202013: [101133001104410,102301001004020,100341130142101,114202424001100,102100300210100,1100000411441420,1002203010011112,402001100011120,100020321030202,402202000003002],
+        1120141011000314: [114000044020204,103044010120003,110142020400012,100142011022211,114230344103210,100030020104423,100000001021041,101000401032212,100004104241121,101303414220001],
+        1101120311023104: [110104112010103,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112203221102231,112400202020003],
+        140441202010331: [100024041022000,101000020303402,101011204212224,102230320231031,110002304200001,101040000321200,110004311221102,100001324100210,101021210320211,100400112201310],
+        111040410100314: [110011232100412,100220040142222,110232002101410,110020120040121,110200021210212,110131021240303,101040000301210,114240000001020,102130034023112,102204114114214],
+        310040300000113: [100301031002201,100000224311320,102120121212031,112000400223100,112022411112104,102022031324020,100211111003420,100344041000232,114310332300121,112322031101041],
+        1100241233220112: [103202004001120,100120204003012,1300022002310414],
+        130302420200021: [100030200102434,114100204101002,101101230010000,114103204100320,114100020033022,114020012300203,102112410222200,101141041022031,102002100000102,102000044000420],
+        132001404403001: [100024000110221,101000130320340,100110020031042,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,100211000412142],
+        124232100100022: [110202000002301,100021401041100,114020000011320,111020032203301,114002204011413,102010111411204,100021314202402,103040020122222,100031001030010,103433144040432],
+        133004121000421: [1010400230221020,103034010121101,102302200210010,102340120222440,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122,100002301021040],
+        1402123103101200: [101434020303202,110220134241400,112014002000221,101020030341241,111421002210211,111110022240013,100100301004010,114302202304141,100241124022420,114404200002303],
+        110040410040202: [110230231300100,102010424000101,100300121000420,100402431014100,100100001220400,110330200400021,102220324011110,101423100300002,103111300102020,112202012030100],
+        113200102232043: [102222111120010,103200224033413,110002220002220,102300440221022,102320110240231,112100140200020,100133001220421,100122204301312,101000000300323,102024001102302],
+        100023202232320: [100000220100001,100122230031414,210303212040010,114222042332003,100000014200104,114011120024030,100101121010100,103002011240201,102440024021100,110110420034120],
+        1111032110212102: [103100214000130,100002244244011,114323000000130,114040410020022,110033020003012,110023100420044,102102121341231,103210014003000,101220441204300,100014101021022],
+        1020002322133043: [110340014422102,101022400300001,102140004000100,103202130122102,100021000010213,100004101033223,100231004220242,112430010114123,130020100202200,120002101133400],
+        102310411200002: [101220111020012,100000214101311,102200230202120,114200020003000,102012014000404,111130204100040,112410202020240,100033131043244,103000024040413,100000034344404],
+        130110221101102: [103140211443110,100030001020201,101302401003202,114320100002004,110203221112042,100004004102002,114330100000020,100204220000112,103210200100000,100000001020344],
+        100020213340111: [100423201003400,102010041320010,114000230023300,100020104102410,100423110021010,100010301032022,203110200224013,104021120012202,101002010323401,104202101104231],
+        123020311240204: [110330400010040,100101231004020,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022,110020130044232],
+        1021100222040004: [102334021001211,114123420002142,100000001024010,101000304000400,101204031024110,111310000002001,100010300100204,103131004000400,102000000222333,101221004040204],
+        1422043004222012: [103242420100012,110224044242243,101400004022112,102200000200201,103110020210000,100022141030334,103200211410311,102100404021014,102303001102431,111441004421100],
+        1430040010410020: [114000000032100,110140102142200,100110034101010,114341024032221,100400444100202,102004000201030,112020401130100,103122301212000,101000141004421,102201020201203],
+        120114201000022: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        1003230011201240: [110100041200400,111311120014011,100420001002101,101134224001001,102321234111310,101004010323441,102043001021033,101210211022100,110421202110000,114230044144111],
+        1004104302020210: [114120304000212,101042041021001,100010031232443,101211414040000,112000022310414,112010030221031,110012000000201,100001114011131,100102001220101,101021004000020],
+        101000203000121: [110420200000430,102303044033020,100310000422013,100101144231140,102220111123300,100040001022100,100110311000421,100021420004400,100400010013210,100030424340022],
+        1021220430143000: [111123010022304,112003001133011,110213002132000,102022420220121,111010132204402,102401214020202,112102204024002,101000131030120,100001301214030,100101000403002],
+        1203010120120014: [100222011211021,114034030020130,114031112210241,102120341340120,102422310203100,104134440011201,102311021104000,102104220213400,112021011112000,114224200210241],
+        102202402300040: [100000101040120,102323320240010,101022344002202,102112101020021,114313044003041,100030141000000,102011101320031,102013000200442,114024222212420,114201234002300],
+        130340001031001: [102310000222133,114111000222110,112034040231012,114104310000002,102100011413420,100001001034141,112123102010143,102130201140012,100010204202202,112422320200210],
+        1421200201043101: [114020420040020,102103401140000],
+        1404022242211204: [111012344400410,124200301323001,102230430231000,101000031034024,132013121201314,102100010230140,122030001033422,111020324410032,123110100001324,101000324000302],
+        101411020202310: [110214024430312,100011014100041,100212341003212,112010220224003,100200001001300,100012104313201,110212310000041,100040424310110,111301332200104,102141424030044],
+        1120202100022021: [110003112130100,103000230120042,110111001300044,100101141042243,102020440242023,100220010002421,103222010114132,101240204233201,110220411214021,100110004332200],
+        132411000001041: [102021024000010,114032424122040,112011012004300,102000401120420,102020004001311,111201210000103,100101101010100,102321044112101,100022024100041,102004012043122],
+        200212000010200: [114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,100402431012022,111403100030130,102022400211311,110030400004330,100401241014100],
+        232120404214130: [102334021001211,114201104114111,100001100411302,101414214021020,114123420002142,100000001024010,101000304000400,100000014202111,114202104001212,100010300100204],
+        222202400430420: [103102101422031,101421100301230,102130124130100,102022020204430,103214021400010,100012401020212,110100022010014,102000324011143,111110420014032,102042231130200],
+        120310030200000: [102011121131022,111320010000021,100010214101101,102010202002040,102131300232014,110231202044211,103022001220121,110013122103220,112214100423320,100000320004100],
+        1002001240012200: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1103223420212310: [114010100020041,103102314001204,102010021320410,103222120102031,102121224004000,103100110211001,101002031032000,100012004103100,120014120001010,100401130022024],
+        1043132202104022: [100020214300031,111220030010210,114042034104243,110123111300000,100020031041304,100412030034000,110100302010110,103232114040140,114010002240111,100002220411002],
+        110420020014300: [114430324140000,103100010212020,110000440420040,100402200033000,100040001031332,100043404304202,102403100201234,102222121000433,101011000302004,100041121022141],
+        1113124100141410: [100023324302420,103111201422013,100212024121000,100001001033200,102001024012440,103201000102140,114010112330000,100033200000420,101304004232410,101330104221320],
+        110304311000201: [102431111110001,102013421100201,1003002030122040,1320124301012211,120204110000223,1110002442211200],
+        100010030110010: [102402201110020,100001024100241,102000230224024,102103120210312,100111124101112,100011120022122,102243200200400,102303031001200,100024100411020,112001010233001],
+        1004234000041422: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1031112024100002: [101010001000031,100021020104221,111120024101141,103201214021013,110310304430141,102113304130002,102000131131100,103124420221210,110201002043201,100011034302423],
+        1020120002011140: [102114340204022,1303043020124234,114403402311003,111143400421100,110221310000130,100223331020012,1013001120112020,1311314200100310,101042020300200],
+        112020313202420: [102203344011410,100021324100000,102103430210003,100012014300120,110100120400020,102414014022212,100032000101014,101430211012120,100204021000012,100032134101100],
+        230000220100214: [102442211414022,110104231221040,110401440001204,114400322311044,101021021002110,103224401422304,100401140033104,111231012220013,103214220100013,102411130201102],
+        1404101340311414: [100012230204000,110143101120300,101101200311102,112401402023020,103142104001331,100200204123011,102012024040044,103031120143010,100103401003022,100000010004223],
+        1121211121220043: [102041310200042,111333104124202,101000304014100,100040011023101,110301030010140,104100002101431,101123232010002,114421242204443,110100222001100,103102000121300],
+        1200200204310120: [101021120323020,100102101000203,114111200034310,100001021030011,100021030100001,103230040101112,100010041032043,102321021000142,102441311400421,112030004021010],
+        231242124121002: [110420020103322,112400204042221,110400431001201,100030101232000,103122404000100,101140030330020,110030242131210,110142214201120,103202411411014,103232211412010],
+        1003212121102021: [102442211414022,114400322311044,111231012220013,110022300420031,102340301000304,100101220101011,110000141123103,102011200242300,111121000014100,100411101001140],
+        124120122002042: [101012041102300,114020312240022,101030101032311,110103100400230,100420201011001,114100234000001,110222022042422,101042024011422,113000011000002,103140120112032],
+        122020101340442: [114002104014300,102000311102212,100130320031042,102010004040000,112433112020200,112301312020123,102000201101332,102231041120104,100111304300020,114132420004104],
+        100210004242020: [111312000000403,101212040011001,102312010211010,111011242233002,100000011041021,111110223004100,114313200211321,111321010040420,100120041224204,103004024040430],
+        1024032020210011: [102301004011202,102000201100400,102001301132000,110034120023130,102101004002000,100110010410230,112121040200102,103000101240211,114221040210200,100001320404030],
+        131001120002020: [110200400000020,100324140141402,110000112100402,100002204340200,110000410001034,111140000000000,110022002120332,111110230014001,100210200034304,110102111204210],
+        1240020221213240: [111431110000042,100302141003012,102004441124110,103303201400021,100000301221024,101224322120022,114100200002120,110310020040401,110200010014000,104120221240413],
+        1110110204200213: [100422211004214,102100000210002,102121010210004,114013214010111,100010004210020,112002100240200,100001404100110,110131022014120,101213110310042,112000002000110],
+        130224120311000: [101423400300400,103140114002241,100024011031110,102200230211200,102221002020200,103113211441220,100000000120040,102001140222341,100010320201332,100004200100401],
+        210400014012121: [110013202003320,101031241000010,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,100020010200022,110011300010031,110002401102404],
+        122003012201010: [111042000041011,112040232002301,100023124103021,102120411023000,102000000240101,102020040223423,102201110212212,101111201110101,100031030000000,102020214011010],
+        1000322104241421: [114002104014300,102000311102212,100130320031042,103110021442200,102010004040000,112433112020200,112301312020123,100042001020203,112221200410000,112023032000020],
+        120004010022330: [112112014020002,114101404004011,100004414100021,103020241402220,102023110212012,102132210233141,102113101342120,102130241400320,103210124000001,100004340100020],
+        1012214202111102: [114324100000120,101004301142000],
+        213241130122220: [101020000300112,102203344011410,100021324100000,100002020410020,102012220241003,111120214102000,103130020213032,101430211012120,100204021000012,103302140112020],
+        1101400342112001: [114033234032101,103001020120202,101000020302400,114200004110030,100101004301032,100030124212213,114210102320112,114234004112000,101000201034000,101032000312430],
+        1421240440043000: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1130014010430330: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,102020004000014,100000211023014,114144014122041,100201111002224,101410304041000],
+        121104244203004: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,103130021444021,102100104002224,102020004000014,100000211023014,114144014122041],
+        1022000400011001: [114430324140000,114000242200010,110000440420040,100402200033000,100040001031332,100043404304202,102011201412140,102403100201234,102222121000433,101011000302004],
+        1030222114123230: [112311011101001,100210201001001,101100001101401,110100124402042,111120402212201,100101021021114,100210010430242,101411001011011,110040212000010,114102124000200],
+        1112033100200400: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        302323002003120: [100134120420201,101234100301031,100010111020010,103021321243004,100400130020130,102201144002030,100340040040204,101321001002122,103002124032324,114200100210114],
+        1420231001032130: [114402404141241,100200400430003,110212022133311,101041210311410,110022004211030,110403010000304,101210021021243,100140024230240,112230240412241,110000204203220],
+        1000000200001104: [102121221343020,101010101022202,112104424022201,100013211002142,1302314034023041,102211204000440,111030424400000,114140044002043,133010044232231,100031101031110],
+        1014302220020110: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        1102010140134300: [111200200000232,100101001011114,101430004040203,102210314111120,100032300010000,114132302200001,100013004300240,102220024122101,112022140234004,100143440001301],
+        131000301010041: [101033011001100,103100020210002,101011010320431,100100004230402,102110304020201,102321401104012,103041414001042,110202420004101,100021220010031,100000200100141],
+        1020020212400020: [102300000211330,101011210314200,101211411020304,102314311100010,101000320320031,101040404012102,110042042002231,100400142200202,102110021342220,112002000222230],
+        202110244030013: [103301244010210,103001220100000,112012012002100,102314001000244,114100000031020,100003124211410,102401024020221,111231012242301,114444004140210,102220210203210],
+        1110431212111101: [1302314034023041,112012200120020,111041134000211,1124042220104011,133010044232231,1303040444403010,1100010110000012],
+        111412220002130: [114040002210432,100010040122204,102001420220112,101422214042012,111000302230320],
+        100423433212000: [110010334200041,110022004410312,100001024102001,102000401442010,321114010100340,102322101000200,101020041000102,102110100322014,110413131000201,112012002302100],
+        1001203222000011: [102000000200302,112204134010100,101001334211011,110001222134013,102021120200111,110442004241010,101400304022340,101232140302001,110020302131112,110101431000132],
+        101311221003141: [100021304300200,101024000321043,101023124002002,100020020102201,102111400210040,102023001440404,101023014004000,102140140230002,110412042010210,100001111040010],
+        1002031401231123: [112000211111200,112102032012332,102010110200012,100112034232204,100102401041104,102011302002010,103103134000123,100121301013301,101000424001012,114200000002120],
+        1004030022102013: [110230102122422,100013024201330,110222131200214,100000114332021,114000010020212,112002014003103,112120300420042,100100104100320,114201340002220,100221114121233],
+        1022021020020200: [102022004012201,114201104111034,111130210020000,111102042213043,100000024210130,102300104110002,100024000101404,102041320220204,100020134212021,101201004203204],
+        122303300001400: [100032304102001,100013000001010,101044024044020,110110121320433,110324201302001,121000140410003,111412332212200,110303202000004,112400132300000,114100102340042],
+        1100330240101014: [110202000002301,100021401041100,114020000011320,114002204011413,102010111411204,103040020122222,100031001030010,103433144040432,102310201001420,102420321400201],
+        1024002000220210: [111420012101422,110444144241024,114120030020202,110201002010420,101004020342000,100230410112111,114224012330022,102101124001310,110201002110202,100130001014110],
+        1040012120204001: [114020202300410,102140201343122,100121100402000,241220023100031,123010242104441,100000411233303,110204420000422,102030014012023,100141104230230,1000200011141014],
+        220430011210404: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1200300401420001: [114120430002002,100000100120300,114202244112111,100031021033010,114011404103142,100202121000302,114040002300000,102110230224231,102002430222010,112101040200013],
+        1022200300012222: [100110034332223,101223100300200,101100011201440,111303214132004,100001000100200,100003301003304,102201002022002,112000000220402,103001201221020,102042100221020],
+        1102024000211320: [102402024000034,103012024004312,102214020242110,114102224104002,114422404110312,101140320330114,101010010300020,102403144000120,112120020230024,100000204100304],
+        240120103310240: [110004020020022,114032412303041,114322024034312,100100244231020,102143432000102,102040010200101,102200434012013,112000301122111,114001110033210,102100201400122],
+        1221010200000200: [102304030220001,102222320200001,101100021101232,101010001000432,100134101022112,103310200110020,100020031030323,100001001032400,101011411002311,102101221414000],
+        204002010230203: [110100120400020,111120214102000,102113200210140,103130020213032,114030000030012,100000010202201,100111404302321,100012024210210,110200210102240,101040240320200],
+        1040101300002402: [110203022032320,103142021211011,313040122221220,102002240241140,102121030212020,114411024142133,103004201240410,100022024340200,114020110001011,101010330320400],
+        1110230402120404: [102403004042342,111122004101222,114020040013100,114000222213021,100000020401302],
+        112204012420204: [114212104110100,102242201000222,100000104100102,102001040222000,114004202210130,111103214104101,101220000302410,100004210412101,102102042002001,101210321023022],
+        110042014000222: [112004202302034,100010044300003,112120224040040,111321314133000,103301410110110,101131024020440,100231020102202,101011211003002,103014004012401,102000401100000],
+        242041312101210: [102143124001400,100011011020440,101002121000111,100033134104200,100000201024213,114003422304142,111001404112102,102010201122000,114011042300202,101400031014311],
+        1004002011241402: [100042320001030,110024001010110,100100014300230,102043104010014,100001004300242,111120044100110,102200201110443,114240314000100,101002411030000,102002324011002],
+        100203420211214: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,110200002031302,100013024312024,102002020243020,114002002300201,102040021121030],
+        1003310202401140: [110202012100020,102303010241010,111342020011220,100314114322101,114032104100141,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        1020022202100014: [112000022310414,112010030221031,101010001141222,100221414100030,110110210012111,112122004020414,102000220204011,103000000141102,103411404020440,100001124311011],
+        201012420101401: [114411202310423,100011041020300,101211024040010,100400200020134,110303202102200,102110010204021,111242020000400,112230202030200,110012104411212,101022324011422],
+        142411340002140: [101100230013304,102330420243012,114011024102042,102310100240232,114230200210013,101030320340141,110020312200022,111302222202200,114003304110004,114311102301101],
+        1001400040022014: [100022021024200,101012011001200,101222000300004,102142020212310,100102204301113,114100220004120,103234000104020,100100030024103,103010420140201,100022401001413],
+        201203111010202: [112413224040101,100220100110400,101200031020230,101024001034211,114001012300002,102121100232012,114102330210021,102140320310003,111001100020413,112203101100310],
+        1000301000024240: [110302302001423,101010101022202,112000042000001,100013211002142,110104000024100,103112000120002,102211204000440,100200001001420,103042021223102,111030424400000],
+        203040004000004: [110121100004131,102320000221020,110142020400012,100142011022211,114230344103210,103114211441300,100101020022402,114010100032104,102300121000004,114010212301121],
+        112020030001000: [100002104302320,103100121423010,110031024200343,100110411011010,100021244103133,100020104104422,114112012310000,104110202100102,100113040414312,114002340024001],
+        1402000222022000: [100041204212120,102113110210240,112423424042102,100320431000002,102100300210100,102440100200000,1302011220000002,100401430030420,1300302112030020,100140221202112],
+        1001102200311344: [110141104201032,101010401033011,103200000101342,110202202031122,100020140120213,100021000101421,103021110110030,110011042100122,112000000212221,110221402132200],
+        110412023400422: [101022014222024,102203344011410,102103430210003,100012014300120,110100120400020,102414014022212,100032000101014,101430211012120,111311002224001,114030000030012],
+        141030323100120: [114020202300410,102140201343122,100121100402000,241220023100031,123010242104441,100000411233303,101210001313401,110204420000422,102030014012023,100141104230230],
+        104100100000114: [100012110101000,101202101000104,102311330240430,101023101000220,100002104103221,102231104040121,111331324131300,102303101002031,100010024302421,101022400302010],
+        101231210201242: [101023020301100,110200332041001,114004020010203,114000332302320,102100221341001,100040004304002,100011301000021,100100001040210,102014001441210,100013224103322],
+        101040022413224: [103304001401001,101210104011110,113422210102022,100112134032123,110201021102400,100030300121000,101200001022000,110021102002003,111124004102400,114022400041320],
+        1030011204000340: [102210100313100,101200210302201,100004420014012,102240210240022,101040401032021,100102001040033,101242004043300,100002324211100,112100204041010,102024124011010],
+        122122101400020: [101400100302311,111040120022202,102141000230040,110412220102021,102002400430000,101001300340322,110030024202101,110100224200101,101210242120124,114000102300220],
+        313030240230000: [100112011020102,101021400320301,100404200020104,100122034231240,100200424301412,114140200220101,100020201024100,110202204244021,110101000014402,100202020433110],
+        231203144121112: [100101011010340,111111000014001,100021320123031,100020001011422,100014041042003,101023321000020,114033400011210,102010221132220,103100204000400,100110411200024],
+        102021300100220: [111201032220400,114203000004300,100022120412132,100000321031423,110322100104010,100031314241140,114043002302200,101222121020001,102120230230000,100032021041010],
+        1113100032001310: [110041240000013,110131122012210,100012044101230,111021212200430,100021214210112,112010034020230,103021004011210,103120204002200,102404121400201,100001004200022],
+        1103300304010114: [100010001030230,114130004122400,103313124020100,112440104040110,102221241110321,124301340333312,102302004110200,102200401112001,100140000410200,100022001042111],
+        1400412113243302: [102041100200402,110400112021140,110112121002403,110122221240302,102241230200120,110400104222012,103302024010240,100001001021311,103001330110202,101002041112004],
+        1021004121004222: [100111011011011,114014112300100,114030034013101,100000044204004,100002100412200,101013004001421,103000014011004,101020224210014,114202244101041,100122310020400],
+        100200442001424: [100121020402300,100240221021321,100031014310301,110322240004100,100110001041140,110044102101103,100000104014000],
+        1001133102420001: [102241041000242,110012232002103,112021324020001,111310120000011,102000024011022,110201111314000,111140222113002,103213224041010,110104040120242,114200114030134],
+        100042233100400: [101001040340004,101013004002011,101300011002044,101011324004222,114000322300011,100002314302420,114411312312124,102121010212140,101010404213432,102110411342400],
+        231002104101322: [100130011012003,110200000104021,103013010120103,101412304021202,101000421032002,102013001130300,100103234102402,112011400201204,100320224211200,104100000023040],
+        1123420200203230: [1040014000334201,100020110003100,101310000020110,102220000230020,410010200103023,1001024230020021,100212211003002,1003101100012001,110420001101321],
+        1114001214104222: [102100102001001,103113201442104,1001221041001000,112001000230014,114110302341103,100130210421420,110000302200313,134100011032002,110210010000010,1023200041003410],
+        1000022002104011: [101210004011003,101230044012202,110301001232000,114000012334010,114302200002200,102101320234011,110010204412200,102400204022024,114412402323000,112032200211220],
+        1100012020102200: [121021010114001,122100004114112,120003410003021],
+        1221011220140010: [110020301220324,103040020122332,102020100243032,102012200202303,101110404021211,103110041442122,114042014102321,112003110242131,102112222001200,100021104100310],
+        1020020030002142: [110122120100022,111100424100021,110111121011004,103001020104102,110200422113400,112000000223310,100002214210110,100011200201230,111001002201034,112024144002202],
+        100000244124401: [111000022202402,100430211011410,110010340040012,110014032101430,101000030321102,100000001022401,112312330200200,112020004000202,110002410410001,114221234002100],
+        110002300204100: [102021024000010,102300010242330,102000401120420,114011102210402,114300100000041,102222014011300,102101430203000,100100121010022,100002134204321,102114201120000],
+        130002304020112: [110102224201130,103301201402204,102401121113302,100021020124002,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010,114042014014024],
+        1221031012020100: [103041220111410,101100202130022,111220032224301,103400104001342,111001212200200,100000331201012,111210214440200],
+        130100014041020: [111120002211010,103122000100403,102023120241131,110014300041302,104103101240204,114241000002004,110020110400102,110321001330010,114220200214400,100400214321121],
+        201041133020121: [114444244144110,114201004110120,114033234032101,100412114304000,103001020120202,101004411032102,101000020302400,102021014012210,112400000200011,111101400011011],
+        1004010020204300: [102214204030204,101300000310011,103122001440001,111024044110202,112402014024010,101200100300130,100103000420004,112010040224120,101110104203101,102030214011002],
+        1110102011003114: [110400000002213,101031104002100,101101230331040,114132100210100,100400032200141],
+        221120302032122: [111240220002100,110030344201413,101001014001021,110100001014311,102304244110431,100011000201002,100103224301304,114000100020200,102100322001021,102102100231000],
+        1022143001400200: [101212101023221,100024321221031,102120244001000,100002411024300,110312202000104,102022201132402,102411234021314,100110304233020,110020000020113,112040002004021],
+        1022123131322310: [100002241040110,100021301212103,112222002030000,100020424302014,102110022001113,110001412102223,101013301021213,110420220002002,100124300031103,420244021031013],
+        1121203011214032: [114022444101022,102201311121101,114100044004101,114201044032410,102141202001332,110002302200340,103000401422033,110041002001221,102120010204040,112021010230212],
+        130103011103322: [101442104021041,102011030231024,100224030002340,101020004010000,102010320220302,100102011200030,101000010310021,101214001014410,114101124001020,101424410302410],
+        1100213030400403: [110100041200400,111311120014011,100123011004113,100420001002101,103102104000031,110201134243240,111100044100001,101004010323441,102000024000002,102012014000133],
+        1000403200032102: [110111222040014,102200004120034,102004204000422,102141002000040,103010000120000,102440234021012,110000011100204,103442014000100,102100021410210,100441021002110],
+        1124020022021011: [101004201002001,103112010213010,102121001410120,112200410200142,101212000301013,111400002102112,100034100124302,111112214101000,1320102201231021,100000040413022],
+        1000021310011100: [101020414010211,101120204002140,101142004000232,101410021100102,100110004101000,100040020201004,102000034000000,112400200201000,112002112002220,100012304300004],
+        124441120130024: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,112003100241220,102204304000304,100301104104210],
+        122111100000201: [110000101304203,110040020001022,101104020300301,110010022003021,100401241014100,102101004000011,101401001010021,110033002000020,101200200300020,100432200030004],
+        1430131234111200: [103132304003332,112040202003030],
+        1020100000000012: [101020000300112,100002020410020,101000001111200,102012220241003,111120214102000,100402120030401,102113200210140,103130020213032,101430211012120,102323204113210],
+        1104124230012120: [102010221411043,101020004011302,114212100023341,111200112221320,102011200242200,102300021103201,114244100003024,102410101112322,102121041340000,110010140011021],
+        300202110012044: [100032041021210,110004301222000,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,110104002010100,100030024303023,102042204000300],
+        120013042024010: [101101100330320,100000100000432,100400320020220,111220100000032,100121324230300,100121111000220,100113434000102,100020310023030,100033320410000,103001424002424],
+        131024402202004: [102003224011000,101113140334114,100101400000132,100030310422011,103041020101400,111300402200003,102111000310213,114100422320440,110022410120230,103010101241110],
+        1101322221340422: [111011030004021,101104020300301,100012101223021,101220330300003,110132000024420,100224204323201,102021301441201,103103144000200,101003131002404,100024040122220],
+        110221001211044: [110201400400024,112002242001002,102112220202010,102214104010210,110042042120021,112010120231202,101011101032340,101013411000000,102100001400004,102310111000301],
+        300020114102200: [103043210122022,110032020020001,110203300000121,110011244200121,101011241140401,110213440401023,101230034200024,102012001321001,100400302200312,100104221000433],
+        1402201110310012: [101041301000320,100210104322421,102401001110000,100022340021012,102002001133122,100204011000221,100040020103014,100000201032240,110240010100402,102100220230201],
+        303240400001141: [102003214013022,103342021400021,100102004300104,114212100023341,103004011400313,102010221443000,102300021103201,100010411023243,100124200020033,100033300410212],
+        1120132242032222: [100020310412200,111014124400030,110000200110230,101021344000412,101100101111040,111102200011210,110240312020042,100111424230014,111222400002132,101003011030002],
+        1000322100010040: [110200400000020,100324140141402,110203131211112,110021100023210,110000112100402,100002204340200,114103412201420,110000410001034,111140000000000,103102224034002],
+        122042200102340: [114112124140000,100100220423210,110044220021000,100231020112302,110122400401032,114310000004320,102440020200020,102001020222140,103122411441211,114102004002022],
+        111421010244441: [110002320424340,102031100200300,114010024010210,101040004010012,102023032000000,103000204003200,110020402004210,112300020200242,102120124004021,100021044343014],
+        1403410211104240: [102102031320011,100041140201301,103021004022022,102140041342420,102140021410400,103011100120201,100000120202410,102300004110122,102202334040220,101001100320224],
+        1020213431200213: [114000222211300,112023102003010,102130040230200,102000002041020,100320021000000,103013024041024,114021010022202,114030034013200,102303214031001,100001010101032],
+        1214231104032203: [100012110101000,110401410402040,100020211001002,112012000223204,102311330240430,110011222202100,100201424220320,100002104103221,100010024302421,100200204102022],
+        243313130032000: [101021134011012,110332202020000,104120130021200,112421004012141,102011104010201,111100220022101,100021104201130,102224410201003,110030021010001,110030410040101],
+        1002010010013212: [111121100010021,110310034424102,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241],
+        102232040101202: [112210010201431,103100024002220,103303000112122,112004012000011,114003100020203,100320104321221,104210021140401,100112101024230,102042030211303,101000400301224],
+        1002211034233112: [114101404004011,100004414100021,102101101140040,102000021444112,103100214001400,102121001343030,112410212020002,102132210233141,101012224211030,102102002004104],
+        1420024300031410: [110241142024233,101001421031220,112300421134001,112220322030220,110210301200101,102033124000111,111000034110311,103021004014220,102200001002100,100014100124121],
+        1023403020240010: [100024210002210,100000020121140,103000200111020,110241020002103,102023021100010,101424100304000,100010304340120,110020010120340,114004000022042,103003444010014],
+        100123012000102: [103000200111020,100100100412204,101424100304000,114004000022042,103003444010014,102002121104344,100322124212214,103121120114230,100012241220110,101034340314102],
+        100021400032130: [101110044200100,110414300030001,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,114142044120310,110220410000040,100012000022003],
+        101010003000020: [102000004010002,110400242014340,110000034210002,100101404302312,103020210102422,100012034201041,112431004011111,100200120302214,114202104110042,101040044003014],
+        1420103002032434: [102100201440001,110400011311001,103300120141130,102110004000221,111144202220301,114224204100310,101434031010012,102304011004310,103101410212231,102100144001112],
+        1130220001400230: [100042304102210,112202000411103,101040100302002,100013030100002,100310034310200,114003022300020,110124041140000,100010044101002,102111210230204,100111421040321],
+        1001201111101110: [102022000210010,111201240001232,100020301020413,110421202220142,100204314320400,104121410021020,100220004311122,101230130041001,101042034041342,110404034223424],
+        1122002030302200: [110000001324024,101020000300112,103100314001030,101020111001331,100002020410020,101000001111200,114010040023411,102300404024300,102110001342011,111120214102000],
+        101134001344323: [100020244100302,100002200412020,100102000423142,102000301100100,114410012310230,101320310311403,102024011413201,102122421340210,114001042203020,102010100203212],
+        322032241412310: [102301004011202,102000201100400,102031211121031,110034120023130,100110010410230,112121040200102,103000101240211,110022400001341,102301414024204,100134044003303],
+        144043021400012: [102101204000010,114230230000123,104121001242101,100014110201012,102200310201220,110300014422013,110020404412324,110040110420020,114444304140203,103100000100134],
+        130343401020033: [100223214121011,112024121130304,110004022000404,103020210101200,110010012102144,100413124100101,101020200301303,112000111120040,100402300022230,112203414012111],
+        104002321020022: [102010021131043],
+        122033311022040: [101100120330110,100000000014401,112212220223012,110243320110010,102100030222104,100102000002202,112012124000040,102032120223210,100000000001340,114000404011040],
+        124004232010012: [101042014003022,1300001101120141,110020000010044,110111044402003,1200023010410200,1112010004112414,111043124112002,110021011310043,112032041113001,1010030200302021],
+        1024030130141101: [114311204002010,110004221040341,103200204031212,102313114114000,114004102201202,100000101001431,101010014001032,102340140222011,101412020301000,101043024000300],
+        122041103100242: [112132400200233,101032041032203,100021304310000,100400022201011,114212040212001,101223021024002,112400204042130,102112044000344,100302200420024,103030421244130],
+        1120031002110024: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,114110200212210,112000120232022,102041220200010,100002320113100,112240200202201],
+        300303032042333: [103111001422000,111244302220204,100042100102211,100300041001121,102110030200120,101114000332010,112112211102024,114001032300011,100142044103021,101100010012423],
+        1104033032101002: [112004202302034,103300004021200,102122214131011,100023031000024,103230134011412,102311011000200,102021021101204,100231020102202,102122032000420,103014004012401],
+        222004402041021: [112004001122300,101301124222004,114010204101202,100041234101100,112204220200011,100230040410200,103210004031201,111231012242301,114114100214000,101104320012044],
+        100013220410202: [112232002034010,132002014101100,114002300020212,102112322004011,110324012020120,101022011002422,104122404043221,114002220042002,114422012324204,103342221403240],
+        212124202201001: [100003121032014,103222004002001,100003421042112,114240004110231,102024021130010,101244001000204,100030024102010,112012010230002],
+        1144100011030000: [112032040234431,101020004000000,101004310324302,100120040400011,100214044220201,100124021201021,100200044121414,100200111001432,101240404044020,100133001204314],
+        110301030033042: [110220301202400,110210024220020,100401424300314,103101001422002,100040120000031,102002104011244,114200142324000,102100041413022,111140122114101,100012000101100],
+        133200224411100: [110000204210130,100001130001003,103102104000031,110201134243240,100100100422103,110020134410001,111100044100001,102204004042041,102101002004300,102012014000133],
+        1003001020044132: [111120002211010,102023120241131,104103101240204,110020110400102,110110414402000,114220200214400,102331024110432,101100001100404,101014024010031,102010001104000],
+        1022000222203201: [103120031442112,100021001020000,100004121002021,111120022212034,100001244311023,100003000000440,102221021000100,112000042000013,110010002103002,100241214020120],
+        1414221100113001: [103230004000142,102011114000042,114110024003013,114142102344042,114114040001042,100000030003111,103002004001434,114200000001000,114031122210003,110000242003130],
+        1014412210100000: [100310014310311,100400000031312,103230004000142,100400010013000,102011114000042,114110024003013,114142102344042,114114040001042,100000030003111,103002004001434],
+        1024200410304000: [114031102200100,110003010010401,102330030243120,102100100210033,234131201024402,100002200014412,100000240122202,110040311213342,110010102234002,102003144000043],
+        1402021002012002: [110102224201130,103301201402204,102401121113302,100021020124002,111201210000103,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010],
+        122042320003241: [110020402002000,102042221101230,101033124000402,103310421404111,103000020120303,100123000422310,100112044024030,114100042311200,102201100240444,100103100414402],
+        1140012423030130: [102214011111041,100002401040201,100212304243333,102300220241031,102302424110100,110000014211000,100121210402002,102312200240012,102212004030221,111120014400422],
+        1422001011004402: [102110202001010,102100020211003,100043200102020,103332044032320,111222000012010,102101220231020,103321204022210,100000004100411,114022344022303,102302434113010],
+        1122030210010210: [100400000020210,114011300040140,110240032042222,110200022124020,102031001103304,100024110002203,100020134102010,112100222013224,111400204442102,110010102130001],
+        132000024114234: [100002230102232,112140422012414,114110012310040,101000200310040,402023203200200,422202004012314,1004020103113032,111000000001024,1320021222410120,110230020421020],
+        100210001413201: [100104341010424,103142210104020,112203001103411,100212024121000,100001001033200,100010001032200,100221110101420,102441030231300,100003220100000,114121024121404],
+        110010232003040: [111320012221132,102302144110440,100002320411400,114021002331014,100041004200042,100032024202240,102144002001240,102020224000000,101242101020042,102103021340120],
+        100010010010300: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        200110030001204: [114010034012014,103200031411100,100010004300024,110122400401032,114310000004320,100000324340102,114443200000122,102440020200020,114444124143021,114131032312020],
+        1430122020302442: [111000024110140,102230100201001,110000401221440,102410104040240,100020004210021,100003401002021,100001040020122,110104101220110,110112211000311,100000411002140],
+        102411221020002: [104100111240003,100010101020412,102203101113311,102100200221304,101011024001101,110142010120100,100103024102040,100122101040003,102100001341200,101421011104010],
+        100240334240044: [112000431120410,100031034311401,102304104110001,102000200200301,100104211044110,110200101200402,114241222321321,114013124030022,114104200220022,100021221021201],
+        1101433000021100: [101041301000320,100210104322421,110100001200142,100020001224324,100022340021012,110240010100402,100000021020414,102100220230201,102203041122004,102043024002020],
+        1010203120443101: [101001044012300,100112231020002,102023200221200,102240220230204],
+        1420020300020000: [103232004020011,100410300433104,102303214113000,102221130201324,101020130321310],
+        103044202432100: [112133102012033,110202041102300,102142120202202],
+        1040032000002410: [100321004011041,110002342100014,111101042244210,110124002040002,103110314000100,100000001224221,110023410122402,114302200014241,111204200002001,100002300411002],
+        1000342000030110: [100220100110400,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,114000222213021,114102330210021,100000020401302,102103214000210],
+        100222040400444: [111000010041300,112000002003301,100200221000243,102400044023410,110423034242000,111204000003031,100012004110024,102142000210040,102144241343120,110411422022030],
+        210200010400010: [101021102402231,101001100302312],
+        1013120130223202: [100030231000344,112311011101001,110100124402042,102120404134413,101100200330040,101003201002421,110040212000010,100100221040404,110211202030440,114440012312003],
+        222310134112122: [110212012114431,110202204430020,114002020044120,100021004302202,102103320232241,114102010220042,102021301441201,110000202100340,110201124211431,104103102103201],
+        1101112002114001: [102101320220430,110100010000102,111312000000403,110101001304100,102320014112013,102312010211010,100111120012323,100014044200222,101001000321032,100023100104410],
+        1031201131004202: [100400414321103,110302030412400,102132204131302,110020034203040,101420300301103,101010231112144,111000100003022,100113020400211,100022030414220,101210021032304],
+        110321100102101: [114110202312240,112201230410110,101000321001401,100001404130013,110202022120313,114100214120211,112132301100120,110201240003232,112122000202103,102421414021014],
+        101423010000213: [102400100230000,101100300302102,114120420223002,102302020212101,100030004104210,103030201434002,110232110004010,103021201430000,101002320322420,102220021110200],
+        1100402002222000: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        100022012023013: [102342214020012,100120221224010,112143020203014,103001300121022,102202100204301,102411200203000,114100400000241,111300004130403,110100000120100,111010002200020],
+        1104024211002303: [112230122030224,100110130000123,102030000221134,100210304340400,102201032021231,100010020003310,101042204010110,111200332222140,111201314412204,102000200204141],
+        112131303004122: [100422314300200,101403014020203,111311120014011,100123011004113,100420001002101,101134224001001,102321234111310,101004010323441,102000024000002,111122222240232],
+        1021200024202410: [110011414240022,112004202302034,102100104000040,100010044300003,114130210231020,112120224040040,103301410110110,112114324040000,102124031023100,100204104320231],
+        111120042002312: [100104341010424,100004004102410,101104001101000,103142210104020,114400240003003,112203001103411,101022001002030,102100200211012,101224020301202,114000212331142],
+        1142344121012040: [100100021043102,100010141222300,114302004001202,100100000011011,101240311010402,110020001210223,112131000201420,110230032120002,103010100110112,111014030043044],
+        1121040011142132: [101220014012231,114422004110130,112210132031001,114021114023402,100210004343102,103422430124013,101000140310132,100001311234020,114242312322020,102021221120401],
+        1020301140222010: [103220120212134,114200014001032,100344101004202,101040004222021,100001214210212,102020201413321,102112100224122,110041200410002,114314024030222,100023020410230],
+        102220031033001: [102314220240000,110231040000334,114210034112304,100014201221340,100004000004212,110213022123233,110313204431110,100230104321104,110211042120021,100042100003232],
+        1110123401200203: [100041000411231,102140040210040,114110030002020,102010031444104,114103200002100,102410010201202,102202244040132,103303001400240,102442004024220,101224231020422],
+        1102132032002100: [110212022124220,100003100410042,100222034340301,101440044041401,111210012243010,102130124000000,102010421413322,102114020210302,110240301111040,102113131343200],
+        1012100200222121: [100010014100021,110403241001010,100101334233020,103120110111300,103202420103102,103004330103000,102002424001223],
+        120211230201140: [100120001044242,102133311142032,114221124000010,110000104200031,111034114110001,113140302201200,114012020010302,110130222010001,103000101411020,114321442301040],
+        1020201011020001: [100012320001320,102000331120104,100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        122221101003012: [110310422104304,110010010001022,103100214000113,100002421021214,114300212300001,100223234100201,102020411100001,101130034000022,100120004230130,114000214011014],
+        1440230020230323: [102030000223410,111101312240400,100231124320130,114000010012243,100301314313133,101332011001000,103310401401023,101300130344001,114031020030012,102122024020030],
+        113013042013024: [100441204302021,100011320001003,100000221020200,100200000030010,100200010431000,100003421040000,101332004231001,103300004030100,101111100022114,110210010004301],
+        222010301434313: [103034031400131,114002114012041,103322000112244,111123412214002,114200220003001,100043121024120,100001011022100,100240110002411,103410000104330,100104104302020],
+        1201110020024112: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,112004021121002],
+        120021102312000: [112000042030034,111200002221022,120201012121032,103200021401030,230222010240012,112102121020220,130300100333301,100020120024010,100202400002411,101002100301011],
+        120102001000112: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        1011230100343010: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1122201201023130: [111101034100200,111131304104201,114003410040220,114021004101032,101024200342211,110332124420001,111010332204141,100000204310000,114104200000400,100011000410042],
+        211200224203241: [101001400301113,103101024004200,103024000103302,103300021402104,102102024000001,102202004011044,101012044004042,102020304000321,100021201020001,100112240020023],
+        1141200403200024: [102302144110440,111130224102101,114201000004122,100143034304100,102201024041200,101223301020130,100041004200042,102322020212020,102144002001240,114002134022331],
+        1013120020120421: [101020000323002,101041204000012,112112014020004,110000330024022,100221020410001,114314004030042,114311114034111,112042001120122,100111001020220,110321132002134],
+        300010410000000: [103000011402201,110301232000100,100000244300040,114004310024404,110210134244100,102102032001300,102121041441000,111430412213000,114102022200000,110233010002020],
+        100130043300011: [114042304100001,101211240301300,102210224012020,114313302321311,102212300202110,112101020200032,112002002030004,100024414212001,114203134112000,102000000221441],
+        214021300010204: [110022004410312,110400011243102,114100120223101,102000401442010,111020004400234,321114010100340,100121041041101,102322101000200,101020041000102,1042012320010021],
+        1110401002041240: [101021014002020,100443210030204,112130004043234,100220304100400,102102004000001,102400121110000,100024204204210,110013032003011,101240104011041,110000031021411],
+        1102230420104200: [103132001440132,100021231022220,111220244103011,112412000201003,114031442303000,101003401032000,114310324001300,100000120100310,100312104100112,101201301012401],
+        110131133221013: [100020201020032,103002221400000,103001010101001,111020142144200,101000231002001,101000211031021,102020001021010,111300022201241,101313201003110,110020001210102],
+        121113311220421: [110400000002213,101031104002100,114132100210100],
+        1040142200301340: [114000302331201,110021022103102],
+        202400402100130: [1342140400001210,1203210010100211,400114001102410,111011220004001,431232000323104,100221110031000,1040100003200241],
+        1110030011122340: [110033000022043,104412212102010,100432200033101,101230004040022,101021020324310,103140021211010,110132020031210,100020140121034,102340211000200,114420230000240],
+        1002012421414222: [100111011011011,100030040101021,114310102300021,102400124020001,100102224234101,102010321411140,102111131410342,100031120413224,101304004220404,114104214003030],
+        122034000041214: [103201411402002,110022000023010,114020302300110,111002100021022,102302120210122,114100032320203,100400300013000,112041210224114,101012000320441,114124414000000],
+        100042021311022: [102231130213210,114113104123200,100023024211011,101210210300031,110002021121023,102300040221403,102201100200430,100114021040000,114121300224141,102301100241002],
+        100314002002312: [110202012100020,110013202003320,101031241000010,102303010241010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310],
+        1101000011321130: [101021134011012,110332202020000,104120130021200,112421004012141,102011104010201,111100220022101,100021104201130,102224410201003,110030410040101,101300401002320],
+        1002334323010000: [110202012100020,102303010241010,102120231343224,111342020011220,100314114322101,102230130203001,103100034001310,102021401324232,111222102243400,101004410311232],
+        1020120110201301: [112413224040101,100220100110400,101200031020230,101024001034211,114001012300002,102121100232012,114102330210021,102140320310003,111001100020413,112203101100310],
+        1144002300012000: [112213000200301,100003224334120,100404224300012,110204130004030,110202120003032,100322004314021,102022010220223,100404000020012,102343301100440,102410434000220],
+        130044301014200: [111102420023101,102102244000330,102001004012322,100004001041301,102222131120032,100203101000022,110021130004103,101000021021110,101000000320000,100014011024000],
+        102010240442002: [100003204214320,110040331214411,102012120213222,110011042200200,101014214010014,110400014240224,110020120140140,101000221030024,112040024013124,103302200144000],
+        1000320022202241: [110202004211120,110341010044330,102031144010424,111021030042411,100302420120212,111212114131222,102140001441301,111012030022123,110031424214112,100001230120013],
+        114000410030404: [100023114341301,111000020010011,110101302141002,101000101000440,110114102004120,103212121402022,103330410111310,110201001200101,100102014001304,102022000202001],
+        322122213234114: [114003100030002,100110221221202,100122004230101,110042240021022,102101441123100,102032341100040,111004002230102,103012024012300,103030020110002,102234031103000],
+        112231010320133: [100142104100403,103222004002001,102024021130010,103200224020100,103013024002104,112012010230002],
+        100231001000204: [110220100000102,114042102330002,102102011414242,100041004100221,100014001041000,102310030240210,110000010033022,102210000201040,110110122210000,102200400234000],
+        110000010300102: [103212014020132,102102030214401,102021420233130,111130410020021,101022000302211,101232020300432,101132000302333,114020024010021,100044004210004,114020204024101],
+        240003001014401: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        1022032102241412: [100002100100320,102024401440202,103200210100110,103220301400000,100023014340130,102124231401212,114202024111304,111102222110021,100210000430203,110200102020212],
+        1012021310200010: [102010040210212,111120432100010,102012201103000,113223002430413,140230300211231,103010140000114,111113002242010,103122200123301,114021034100241,114231004000010],
+        223224002000100: [401000241000000,113330300000122,404402020103300,112140004002100,100120034020032],
+        120000022033114: [101200400041032,100001034102143,103001224014142,101201000311021,110110211200222,100104200411203,111112034400031,102042031440222,101012021030223,102304000241010],
+        1140002213020001: [100231114320100,100001000002210,100400320033201,110011402100202,101210300302302,110121112010004,102020131413423,100000220011133,114013012240011,100010104312120],
+        1010211412010211: [103104320211111,102000101120401,101031001010041,100300021202011,110400314221140,211111010203024,100020324210410,101400100300002,1040001441000231,100122401224222],
+        1000322321013021: [100003121032014,103222004002001,100003421042112,114240004110231,102024021130010,100030024102010,112012010230002],
+        100321420022020: [102113101341130,103202130130000,101222121020022,112431024044114,103134314000113,100130014030430,112300221134030,100000004230023,112024204000314,103010044002100],
+        1002220201011202: [103000104004220,101002244004011,101442024042013,101010340331320,111000024410303,103031100142002,100241131003241,100201401010000,110000040420100,101100424003101],
+        1214220004140230: [103000004012003,112303041103203,102020231440400,102144200210031,114030304122412,102121104130242,100112011040312,101013200321014,111000220020441,102102011400201],
+        1020323442100401: [100111011011011,100030040101021,114310102300021,102400124020001,100102224234101,102010321411140,102111131410342,100031120413224,101304004220404,114104214003030],
+        1002000144000023: [114001000020102,101020040300010,100213001000212,100040201012040,100002004212420,102121014002022,100141404233000,114100222310230,114131002342130,110002022003101],
+        1000210320000044: [114201232330041,142321203003111,103200344020420,401210002011000,404010201000410,1014200301032410,1103013112041021,102030001201100,110200024240110,110431004224201],
+        120001112030000: [100004221034100,100200200412034,101012114000304,102232024002401,101102120301114,102202141120400,103400014000012,110120224221100,110000041322002,103444024001001],
+        1121010201212010: [101040130301020,110044100443224,100000101223200,100402322200000,102211400212122,111404204423311,111132404421001,100114110003220,101203040300402,112400414021201],
+        143100243214031: [114404010003320,100013200412401,114030412303102,102200320200003,100430000030122,114300104032040,103201101402422,101040004210301,100100101040120,100014011034001],
+        1003020004044110: [102430231400211,110112012140003,112110220202020,102004021102101,112002012030102,112020021110112,102302004020001,112120302010202,100020010000104,112120020220421],
+        101112300222332: [110021220021121,100002120412400,103322424033024,100010130140100,102103201412111,100001214302342,102233204000002,112011011132021,101030240322011,112312011103030],
+        130001301114222: [112324002020202,100120221021011,111242212222022,102022411100012,100020100100300,101401140300101,101242000300000,100030124210101,103220200100320,101030004004303],
+        112000420112230: [110020301220324,100041000010302,102020100243032,100031001020040,101110404021211,114210400000112,114042014102321,102112222001200,100021104100310,111321314133000],
+        100001010030400: [110030230041304,100043200201202,110102110122210,100140001040042,102111214004020,103212144000440,101422120334233,114243122320133,112023001130021,101000301004122],
+        1220300111022300: [102102000213403,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,101002424214013,100012101022110,100400222200110,114011112202020],
+        224001302002012: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,100422211004214,102100000210002,104130020011020,101114422122000,102001314013400],
+        1141414000020410: [101200030300000,103010304002201,100410001010411],
+        1143030222112134: [114113344123222,112242202031200,112144012011101,111410302212101,100013104300114],
+        103200312402020: [102331021100100,103223014033210,110011202100142,102123411402002,101042201030422,100410100030221,100002001211230,114410102321111,114012002212100,114203110001031],
+        1003000211211212: [110024404201041,103014224004000],
+        1012100440240201: [111121100010021,110310034424102,114400202314210,103022110142241,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202],
+        1042100000041030: [102001404012100,102340120222440,102122214131011,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,100020004101012],
+        1000020100003001: [114022300022421,114401200000003,100241001003002,111310004122000,101221000312044,100400240013333,102030300224002,111001314111000,103100040210040,100210001002200],
+        130301214001303: [100321004011041,110002342100014,111110200020323,103110314000100,100000001224221,110023410122402,100032134341034,114203104001000,114302200014241,111013102200342],
+        221222030204220: [102103001411402,111030244400003,114020012300033,112110010202002,102011220220120,110202004242011,101032121112212,102210014033004,114000020032222,101241200304401],
+        1003414034014211: [102000001410411,100022404242424,102111021341042,114102210002021,102013300200042,102004030201320,101432221011020,102240022004402,100020310101012,102113301342231],
+        121040403014300: [102020000204032,110000000003200,111401200000040,111202004100121,103230104003200,101041204222101,100024024211001,114031000012100,102110001342114,100222220001202],
+        1042212020201342: [111121100010021,110310034424102,100100010422000,102101211410144,100024201030210,102010111102410,101000110322242,110100001014311,102404110230202,110043400012000],
+        1002043000111221: [110024010440102,100033410104422,101012040320004,102100410211031,110142322000202,100100444300402,102021214001120,114011204102241,100023311224032,100000104310040],
+        1401033001042023: [100242141004122,102024240221040,100004004102002,100011114300334,112020201120340,102303004110022,100110201042101,110134201140010,112101044000202,100040024340013],
+        1404044002301014: [103221400100121,104101010010200,101104234001200,114103100220201,114002014101011,100004202211303,100321000110200,110021110043033,100011014302010,110241101310132],
+        1013001000022111: [102132400232131,100114234102203,114001232300102,114023224010002,102323324112410,114400112311040,100422140030210,103000041402003,100010104210010,102000141133020],
+        1000021040102102: [111101010010203,110110212010011,103120101441202,110011000022102,101002121003112,100004104210221,102202410240103,400014404414011,100000010101402,102010414013103],
+        142030010033000: [100030024303023,110303401230040,110012000141104,140300020110000,102001021132022,100003301030120,103044004034040,101020230301220,102210241120001,102412140201410],
+        200242400033020: [112224202021421,112423034041001,111210122203100,112040411110201,111123014400021,112000121132000,103120300211022,114142144124302,100002001020040,101031402400002],
+        321330122010041: [100430021001320,204020131034103,103214301421201,1000001214032041,102100204001030,100102240020100,102210000240404,114320124031023,114220020213314,103141111442241],
+        300010212004000: [100203321001221,112111040230130,103010041241404,110333010011034,110423301004320,101110140302324,110401321340320,100004141034320,100220200430102,101010104002400],
+        1000142104014030: [102100420231433,103114001444241,100020214240402,111324002200000,102013110232000,110014032200004,100001214214401,1113004122042140,114201400000103,103110204004240],
+        131331401002014: [102000020223013,102110201342300,114300204032002,112121032014014,102310111001210,100020241043022,102100121341102,102001231444003,114100304142330,102333014110114],
+        1011001211030222: [114200212322001,100401210020002,110001440041003,100010111022102,100220300410430,101024201114010,102412220200003,110012222000144,100201214123301,114302122323101],
+        230000220330420: [111004302114011,100010410101220,114400012310301,102004201410402,101201440002012,102040031411210,102014004000221,102002240210000,112020210233321,133001230020010],
+        100024421010021: [101421214042002,111430442210202,103420144004301,100002231231033,101101244201222,103304110111122,102103114022230,101424240300300,101130021101100,111042002202240],
+        110012023000010: [100034100023401,100320221002000,114203022320020,110140042002031,100140214101212,110120021300003,102220202001002,111200104424220,110141041304241,110012000002021],
+        1020114123004020: [110020402002000,102042221101230,103310421404111,102101134004010,103000020120303,100112044024030,103240100102101,114100042311200,101010001000400,102201100240444],
+        114032420000111: [102000201131020,1010120030012200,102123332000002,100020140120213,114020012211102,102020034002300,100000104302202,112412000201400,100032204312024,102001114000000],
+        1141010133004121: [114042032210200,114404220000142,101100214003002,102410420230111,100004121032030,100404342201400,114440210000102,100030211200100,100000120412021,100030101041442],
+        1032143310002000: [111104102242110,100002200410230,102110201342300,100044010200300,102000021444112,100003010413400,103334120114003,100130204300200,114032124013234,110112131124012],
+        133103224230102: [101204334232020,112012002303014,100004340004131,100210421004302,100200411000410,102003101130231,102240200214023,111021220021002,100101200410420,102101024002102],
+        122410022210000: [101221422120021,103001024002110,100231114320100,100001000002210,100400320033201,110011402100202,100004130002301,101210300302302,110100012120201,102020131413423],
+        1011000200000200: [110141010001110,104122011242020,110213401202210,111103310001234,102312000240002,102012104010301,100004004303030,102001424000000,100011011232320,110011200010103],
+        1113013032201011: [101300000310241,110002010002100,110001302002012,100010204103214,114104120220001,112014312310014,102004311130001,101214301020044,112004140233122,100003020003040],
+        1130201301041132: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        1021000000430123: [110014002132100,104122202100000,102200210200442,103100304000131,110011212102422,100030100104111,100312021000201,102004010202104,100400220002400,114100024120001],
+        1103000200420000: [114200402332011,100020101031131,102101001342004,102142221401140,114004222211104,102114204020220,101201020300003,103012201401210,101211111020000,102442100201100],
+        303312302243004: [112111104020400],
+        114001040100020: [101230040301234,102104231340013,110033032100000,110011002100114,100400432200321,103303041402240,102331010240100,100020200012311,114023102300012,114140144122230],
+        300100010031104: [100000210410212,100202021212012,102000032003002,104003410010031,100100000012334,110020030011011,103020201401104],
+        143210140020003: [101212114014000,100043124212321,111103004400024,110003032002202,101403011112301,101141301110112,100010314310021,101111211112300,114130224000034,100034131030102],
+        1010221200010002: [110441140102024,101004120224442,100413311002132,100320421001431,110210301200101,111131102210013,110400241240242,101001024210000,102210101121104,110023102103200],
+        114201010100014: [114300402301101,103020304000320,100100104300012],
+        1022002042012111: [100100121041013,101401211012010,114000010041320,114120204003101,101020230322012,101124031100013,112004302030010,102100001400332,111100124100113,102410234040000],
+        1004441004020034: [110233012120121,100000241030333,100020011020010,101000204002210,110112210000002,111002042204201,100001204130442,102100321410122,114024004020023,1014400221004004],
+        1004220001134022: [103201411402002,110022000023010,112000124022430,114020302300110,111002100021022,102302120210122,114100032320203,100400300013000,112041210224114,101012000320441],
+        1040310103220120: [101020000320011,110400014223001,102040404010111,112040222311040,100100101011200,102204404111433,100420320030100,114040214101433,100312121000310,101022220322100],
+        131301024004202: [110200002031302,102002020243020,102040021121030,100000204130001,102041130200101,100412441010422,101010200312020,101040204210210,102300310220121,110000324412304],
+        120000042402110: [103011200100000,100111011040002,111020400040100,100302000140222,102122340200200,114000214021240,101311111000100,100040341021101,111123212212000,102400220203010],
+        1001022101024120: [100001220400300,102212001103340,100002334202400,101222401020120,114010202211102,100023004304344,110220242131013,102102010214104,110211030000131,102222312020011],
+        100004120201310: [101041310301004,101000200340220,110021122100000,110000000143124,110100042013221,102121304003112,114431224113420,114033012202420,111211002241330,102420001400320],
+        1240203003021100: [102001201440040,100212000030034,102300001100112,100121010400103,100121111001223,110201030101402,114431000001000,110040401300010,111311244120030,110022010034100],
+        1104211101100020: [102242320200020,110030021222310,114010104030002,102010011011210,101041020321002,102013131134030,103312010110013,102004004010011,114101042313041,122112024242100],
+        1020200410222000: [104100002100221,102000321102310,112000044002102,102134044134410,101202001022000,111300220000230,114110032343001,100110101040020,114012222301110,431300131230002],
+        102001004014022: [114111140220220,112000204001011,114004100011010,114302010000013,100100124003241,100002310120001,110220022111241,100022024100312,100204001000301,101001134210404],
+        100000200041112: [111100424100021,110111121011004,103001020104102,100002214210110,111001002201034,112024144002202,114212434100312,100013010001120,102200101123440,110302201334022],
+        1001124200300113: [101133001104410,114202424001100,114113004120221,1100000411441420,1002203010011112,101211011012300,100010300121240,1012004033012200,402001100011120,100020321030202],
+        222013004140110: [100113220020101,114031000022030,102014002000401,103103241421322,100300211000020,102104304023201,100002224244002,114310200002400,103211220100010,101202201021310],
+        1104003203100220: [110021104200001,100302141003012,100000301221024,114100200002120,110310020040401,110200010014000,110202204430020,104120221240413,100002024303323,110310002221402],
+        1420304010034240: [111121210031101,100013100100014,100000001020000,102000404002002,100120234300003,100121331044301,102100014000422,100101010100200,100031011042040,101403014021204],
+        1022002220020032: [101130200003423,110002121200000,110300412020442,100000000001140],
+        212002430430101: [102121221343020,112104424022201,1302314034023041,1001010233020100,112012200120020,111041134000211,1124042220104011,133010044232231,110000400001130,103201021200030],
+        122030001322004: [100301224310100,103002104012101,114021000012031,100012324202240,110003410100312,122000430101030,114000022300301,100311000141022,114000000021100,114210202322020],
+        1011014042130011: [110001022000001,110023342101220,110002012000400,110020422131120,100001000100000,110202222043022,110313312021120,102223400201104,100220214333200,110330234422000],
+        1432031240003440: [100020201020032,101410211021400,100004214100234,103000011400001,102104241412223,101400200303132,103001010101001,110220000113011,103100000210002,111030014120004],
+        310412123100110: [110301442021010,110001332103022,112041000220020,111304202202230,111300000001323,110000002001040,100440441010002,110040310040200,104020020001030,114003004100001],
+        1024120321201003: [112000112000031,100142104100403,102123214020000,114202204113222,102022124012030,100143220410040,112024000213011,100103030001121,111000004400110],
+        1001002001400001: [114132202312102,100021110200330,110322110010000,103214104034020,100400000013010,102142020212132,110222201200000,110302400012002,100103004000123,101230234011000],
+        1201030211402330: [114030110041300,102300001002144,103001000142003,103132424000410,112013102004422,100400220013232,110010002000100],
+        1000022110011002: [111102004100101,103122020213112,102140014001101,102000104012232,102021100220101,114000040010421,112042110220004,100000214240410,100433201004014,114122134140002],
+        1003001200211022: [100020004313034,101400120320033,110430030000041,102140411342420,103243024040441,110021014412440,102020004000301,114114204001401,101042214000121,102000121102220],
+        1021100244301333: [103110411420200,1344004001200102,100110034102102,1300011101120023,203001440023021,111131400032010,203343130112210,100402202200024,1300001321030230,112223432021101],
+        1022232402221001: [102402024000034,103012024004312,102214020242110,114102224104002,114422404110312,101140320330114,101010010300020,102403144000120,112120020230024,100000204100304],
+        100321434112020: [110102042010220,101020124000413,111210000001101,114013400011030,103004104010210,101220024041000,102010300201414,100202200003011,101413004041201,102334000243030],
+        1104000032141013: [110301442021010,110001332103022,100104004300024,112041000220020,111304202202230,110000002001040,100440441010002,110040310040200,100430440030020,100100124301211],
+        1211000030020040: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1031120104241002: [102202204040010,103333040110114,101022200343023,102000000221222,102011014001111,102331201001140,102101001342004,102103001414002,102022011101012,103002014010030],
+        224210042002020: [114301120000030,112004000214201,102221002020200,100020224101141,100232034333120,102001101132230,100010320201332,110004224210020,100340111000001,102302011000130],
+        212301402401002: [101001131032132,110340014422102,101022400300001,102140004000100,103202130122102,100021000010213,100231004220242,112430010114123,130020100202200,120002101133400],
+        224222010130400: [110220220012422,103003311430003,112201001104112,100340000142320,110040014203342,110042132003320,114121204120122,100401200033020,100222004220000,110000104410123],
+        1142200300020404: [112224111100141,101221414041100,100032424312011,100210301002021,101021244012200,103040000000212,103000001410123,100100040402102,111240300002140,101300004211000],
+        1001010002401400: [110104112010103,111102004100101,102202414041044,102140014001101,102000104012232,102021100220101,100230120001003,114000040010421,112042110220004,112203221102231],
+        1110100120011221: [101003201002421,102034004000133,100102240002022,102113000210043,101010011034220,100421111011000,111232024102030,111020034403330,110001212034012,114020004022002],
+        1001301100002011: [110201201211024,110202000000310,100422314300200,102141410230020,110020001224021,101110020013040,101012410301010,103120001400003,110003302000101,111122222240232],
+        201000040000103: [104130242103012,110100221223104,102000101132400,102412101112121,112023140212112,102110244000130,114000312301300,100102304302000,102400231404200,111113022242200],
+        142120402221003: [101223214040000,100304031003410,100202100012203,110130001001030,100022030420202,100403300010004,100402420012143,103000304001231,101014010320000,100200001000020],
+        1000201021430222: [102242201000222,103000004011102,101000011032120,100120041014034,102102042002001,102110444130000,102130300200301,102111001341321,101104220322100,112434010204100],
+        1040332000033142: [102102011342302,101030224004130,112400024011003,102012141440022,114000010031201,114204000003310,102100301021042,114041102304310,102411021112003,102120010202004],
+        220120000200011: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,100001021221000,114003134011032,100101234330123,110024000432310,102012101443110],
+        222200101424203: [100111334330000,110023240021020,100300433210004,102240100011000,100400213242110,100020201002004,120021202100230,102320120240200,100000012221111,110102301010411],
+        122202223100230: [100113214302002,102412004000132,110000002133140,101233341022410,100100124100031,114100012313002,120240000020201,101004202403121,100304320140012,100002110100312],
+        100310120031012: [101110000333030,120210240004122,100030134340020,110002140002200,112020241111142,114031440010031],
+        122013303234113: [112302112020021,112010032340022,100002104302110,110030222130000,101022440300020,110204434434200,102110224000013,110040030001400,114020210031032,100141410402200],
+        110110410002212: [102300101103002,100101101000000,110020002130012,102322200210000,110104010022000,110014044200000],
+        112200223000423: [102043120223043,102020204000002,102141004001412,110111002011424,114011210043200,103241001400040,101044001000000,101120032114401,111302222204122,103200424030200],
+        1100023102323131: [100020201020032,101410211021400,100004214100234,103000011400001,102104241412223,101400200303132,103001010101001,110220000113011,103100000210002,111030014120004],
+        1441301013001024: [111131224100212,102010104000341,114120100223000,100404010020000,101240000302141,1204002112200213,110010302002100,102101201121000,101100001111040,110031222130200],
+        121200110100010: [111124004101012,104102040011120,114103220220104,102120004001310,102430121110340,101021204000200,102020121102120,112141104020201,101200111020111,110001200422320],
+        1423120000420110: [114021004032120,102102112002431,102404200230330,102323234114200,102002200244011,102201014020311,103000304013020,102402001110001,114320204034234,100210021001204],
+        210002001303120: [110220100000102,102100321320100,114042102330002,102102011414242,100041004100221,102310030240210,100000000412112,110000010033022,102210000201040,110110122210000],
+        1110104004200300: [110420301340222,100024000010302,101103031103004],
+        103044424010103: [101200011020000,112000044002102,102230021122000,431300131230002,103042141420430,100121021011022,102214001432020,112034420220403,101211231023001,101011420323313],
+        300041221240122: [110414402020021,114312012300300,101012104210042,101430001010032,112402012020000,103322241400404,103210120100143,110101010011124,100040000123130,102001341102111],
+        1241000103202121: [102121221343020,101010101022202,112104424022201,100013211002142,1300034431310021,144020001004041,1001010233020100,102210104000000,112012200120020,111023100040110],
+        110310010110130: [102121201340001,110400242110410,100030020423044,110104101002000,103013104002044,114211004004210,100034204310001,110011340001104,111202030012240,103012111241130],
+        1034021100104140: [102010124012100,100110100410210,102000111101030,101102204023404,100440100030210,114200340003213,100002214201101,102110004001320,114202322324020,101403100301000],
+        1424103010000011: [112224111100141,111102214104403,100132004231230,100000030000001,110021340020022,101010001000320,110210020104031,101003204000300,100130334030100,100210301002021],
+        110241020202110: [100100201020222,100020314101112,100340121001230,100010220121201,101424120301002,100020314311220,101010221000033,102032100202020,102104010203421,101110441011200],
+        1101220131004301: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1220100001104003: [112142301101040,101100000330120,101214440300301,101121100332142,100000400000241,111102214104403,102011004013000,111200122222334,102301024113440,100033230420102],
+        1000231411023012: [101013004000130,101420031021021,112040014004212,100201000011432,101042144010200,110420010102241,102002031120120,101120134001144,101004231020140,100004100412101],
+        140232200110400: [100231401213132,114210104113314,114021232300112,103001000120444,101144024000232,100000010011430,100114420000140,102022300241201,110200100001242,102100042002002],
+        100222300022032: [102002014010234,100031001041013,102042004002000,110014231333243,112202400204001,100100001010102,102002014014424,114003040042312,100122014301301,100010444102042],
+        102002021000014: [114021412213020,110030002000422,100032121024110,100402431012022,111403100030130,102031024013013,102402330230011,110044020020202,100001140000010,102324410243220],
+        220003100020230: [110000204210130,100001130001003,103102104000031,110201134243240,100100100422103,110020134410001,111100044100001,102204004042041,110120144204004,102101002004300],
+        101410222111214: [102002120203400,100002020120200,102000431130020,102143000210010,102330124110411,102303342001023,102400404003211,101300124233021,100400000010200,101000211142140],
+        110121400221044: [103111010102100,110230024213001,100403312201120,102220030200111,100411221010100,100421001011020,101022401000022,100000414100213,102300011003010,110000321010110],
+        202003000100023: [102400340230442,101000400320004,102101044001201,110320024422220,110003011010210,110220231211201,112411200203314,103202024023021,102101011320111,110322202104032],
+        1032302044100213: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1004210103100403: [102143124001400,100020440122040,102002034010400,102020030220401,101002121000111,112404002023002,100033134104200,114003422304142,101432024040221,111001404112102],
+        122021304110111: [114443012310100,103003010101104,101022024010004,100030201042112,100410224304122,102404200230330,112313301100030,102110244000130,100013020204021,102313310224103],
+        1443120203410000: [100002020413201,114330000002220,102000401130003,100110110020203,114000012300000,114040004102003,110402000001104,101400104024130,110004131231204,100002001041001],
+        240042212001120: [101020414010211,103303001404000,101410021100102,100110004101000,100040020201004,102000034000000,112400200201000,102221204020110,100103121021000,112100020204342],
+        131100040000022: [102400040202040,103121420214211,103222014000001,103000121400401,110000221104000,102042222021432,112404002023410,100020010124400,114200002320302,101020000343040],
+        1030020114012040: [114313304002310,102004110223232,112204010411101,103202404003021,103211010211331],
+        104124010221030: [110011232100412,110232002101410,110200021210212,110100100031014,102401010202301,114240000001020,102112004001032,102204114114214,102212034044212,114411120001020],
+        1112010044000324: [100112021020320,114212104110100,102300124023122,100000104100102,111022134112141,102001040222000,102101004000001,100121214300000,102001201442022,111103214104101],
+        1104001004000403: [110130302012020,100000211021004,102411134020204,114032200030021,102000000224012,110210120000001,101000120303020,102000001133312,100402000020413,100011044210004],
+        1010000101201121: [112211122030420,101031201001231,102000010202042,102020001100001,101011014010102,102020324002022,112013012301132,102001104001214,112440104040110,111004410022000],
+        340241311002113: [100001020012120,110031212000202,101441101010020,112310010200312,111202322222023,100002004342004,100000130100210,100020201030113,101033300332204,102030000202240],
+        1002021221234123: [111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,102410220200004,102100211340043,103443104001332,112100311104022],
+        1010021122010120: [110020301220324,100041000010302,102020100243032,100031001020040,100104001041200,102012200202303,103300004021200,114210400000112,114042014102321,103230134011412],
+        141404200043000: [114203042330220,102102231400111,100032421040120,101004201001232,100000400412200,100002020101023,111100232241200,100011234202334,102111024004010,103343010113030],
+        220333033020012: [102342214020012,100220024324023,104130011240303,114100212210001,114143200211211,100120221224010,110402101344233,101001011001300,100112024032033,103112014030001],
+        100112200011220: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100104002224,102100224000210,102310140240012,100014204201000,102103321411004],
+        1112200001024110: [103020031403100,102200401111200,114003104031111,102302331003300,112131004020212,102003211120021,100033001020140,103131420221204,102120141343312,114330420004101],
+        1240032120324224: [110001420430300,102213210200210,100000111040212,102013003040043,102102114132212,103010424023103,101232100300211,132322214002004,104101010011320,1040412210213020],
+        1140202213000312: [110013334202122,103330104030103,111200002220003,112043421121002,102212030201100,110002302101012,100111401011110,100104234230043,102010341440030,100001120100002],
+        112040104103002: [103200211420103,112203242043001,103023021244000,110104434402221,114323424033100,101421210302410,100030034340432,100004001021001,110241130013040,101020204002120],
+        112002004100010: [101202001024340,100004000102302,100023001042200,101030040320021,101003101000000,114104000002301,102232110201100,111203040002344,114223104002130,100410300030220],
+        244211021443101: [100020100022221,102011204002010,110411031110000,110120041343100,114110014000002,100000101042100,101120004020213,114002202300120,101020004004303,110003022203202],
+        130020024021432: [100000044240301,110204002123041,101140021101302,111120224100101,114440120000030,101023041001203,100201021001300,110212001204000,102010014001001,100211400140102],
+        202424041100244: [100002010002230,100002214312112,111021344401134,102000420203042,102000211443214,202240120031420,100024000000132,101003021034241,110240412120010,100121014104140],
+        130020200201202: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        101044404010004: [102000401123201,100400040033043,100002004302011,102244421110032,101340020341021,100420214300311,100104004301120,102110022004222,101000421030200,100202034322202],
+        1011213232122300: [100040201210010,110442111142110,100200220110004,100032034104034,114401110003222,110422120034403,102001201130140,103001144011302,114314012301300,100020131031104],
+        1003023213014000: [100000241020300,110000100022040,111021030042411,110100100031014,110131011000142,102401010202301,100201134320102,110000302122001,110202012020000,114240000001020],
+        100332003224332: [102104004021010,100244204311004,104132001240113,111221000010010,114302044003120,112211222041401,102000100240000,100010201023140,101024034001210,102302021000041],
+        222024011001401: [110003002010123,102003010201410,100000010000211,110001410002011,100022024203420,112012121120420,111011200020400,100110224232000,110210410402132,111402202210233],
+        1014432200024423: [112113214020100,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004],
+        101043031044413: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,114201204111002,103310111402022],
+        212400220001120: [102442024024214,100443211002141,101012400320022,100011014103012,100030220101040,101130031041024,102031004002014,101240021020011,103140100210304,100110000030000],
+        1040010043012002: [103011431401300,100002200103104,110012101102100,103001001421100,100001000100004,102040300241403,103000310100320,102103331400000,114200022331002,103013004020003],
+        1001002002401400: [103120200222330,102000421131000,114404020003022,103100114000000,100421242201010,114410212320200,112020011110100,102030000221301,103300010110424,103020011430001],
+        100214400300104: [103100044030033,102103410200411,112404030200022,100031401222220,102020111100100,100041440102144,101044020301020,100024020010040,100001101033020,101024410341204],
+        1012040004001014: [120402022102021,110140101300004,114400210002021,103103221421013,102010002000402,114233112330324,110423221000200,110030211224203,114201402332241,144200203310100],
+        1102331100200030: [100002421031242,101212010301103,103103000121103,104000000010243,110441102112020,102020300201021,100122004323202,103040230104020,101102320003202,100011020140201],
+        1400021242232400: [101033031004120],
+        1100220030222121: [111020002201420,110124341203132,102000001132022,110312002100244,100000010422201,110220242120201,100030040004120,112230214002002,100033014342420,100404001011014],
+        111200022022200: [110200002031302,102002020243020,102040021121030,100311314310000,100000204130001,102041130200101,100412441010422,100220031001210,101010200312020,101040204210210],
+        101022440011103: [110130314400100,100104010021241,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241],
+        1012112312400001: [114002014100310,100020020121132,103311100112220,102112002004120,114400004141104,102142234000020,114402044140023,111000024404021,102021231100030,112023114000210],
+        200312010321031: [103002001240043,112023420232024,112002002003003,110002120000000,102340001102023,101202101000104,102100034001000,102302121101002,100400230021400,110001200421021],
+        1111001400321000: [102031000211000,102202131004010,114211132343224,102020021100000,102200114011100,103014330110310,110020120040202,102241010230310,110224010010021,102441120234110],
+        222002102020040: [100040201012040,100141404233000,114100222310230,114131002342130,110002022003101,101020001030204,100403122201202,102303304020122,100310210142030,114132012200110],
+        1203030030432101: [100102004100201,102114020210202,101200200302210,102434211400021,100003000412141,100001300100302,111230032242001,102324031000000,103230004030322,102102001341000],
+        1244020401100210: [100002104302320,101023424210024,100021244103133,112001004004000,100201440000313,103102400211002,100113040414312,103000030101020,100140114102021,114002232302004],
+        134301110112000: [112302112020021,102000224000000,100002104302110,110030222130000,101022440300020,110204434434200,102110224000013,110040030001400,114020210031032,111010434400440],
+        211041000201432: [110023342101220,101001421031220,112300421134001,110321031234422,102223400201104,102342120222031,111000034110311,102221010201113,103021004014220,102200001002100],
+        102002120000000: [111222034100421,114222204004232,102023231101142,110000102001102],
+        130111020210041: [101200341010102,102301002004242,100131011001300,110220002041102,103200030110000,100210024300001,114000444100400,100000200003102,102030031133201,110011000040030],
+        1140010001220003: [1132120124402200,101200111024003,1113000131022000,120014042200110,100033000410011,1001101000204300,112110200230004,404440001010000,112031240431420,400400120100110],
+        303040401010101: [110013312204132],
+        1002410020300030: [114003344011001,100021101000000,102334021001211,101203001010111,100031201030102,114201104114111,100001100411302,101414214021020,114123420002142,100000001024010],
+        1120314101200001: [110332102020012,102140014002141,104231322021221,103122001441103,103141214004200,114000430020024,101104301103200,114222404114003,100004004101010,101004224010112],
+        112000432400200: [112004302004223,100410001002331,101400204023104,100011030420233,110421010402324,100000014100111],
+        1010030010021000: [110033232104020,101201000041022,101204220301114,100002211021024,101012000300302,110100021200402,100122034300003,1020000000204104,114400034111022,103201224021013],
+        1020110102110421: [110000402130200,110210002110430,103024004010134,110102204202001,100141101040123,110422420030000,420011043004003,110040002032114,100120414100102,102404224041131],
+        103323200011220: [102120404134413,100100221040404,110110121300321,103321311400002,101420111013041,100000040411123,114001002211121,102202014001000,111040404111403,100123100000120],
+        1043412010030000: [103000004012003,102020231440400,102144200210031,102121104130242,114104220000003,100112011040312,101013200321014,111000220020441,102102011400201,100400302201011],
+        1103414011210033: [100422040021304,100002010413410,101433010300204,102114321401000,100002414201103,110324444424432,100122234300420,102001001133202,110222400001204,110001104210202],
+        103010201133430: [100100021040144,114011114123044,103042141430211,100102404100430,114142044000010,102101404000000,102300200221021,114322222322000,100104020022212,114024104032203],
+        102313034204010: [110432300102000,100011004102400,110040344210011,100003200020112,101000100340001,101300240310420,102100020214203,103000300124010,100030301030114,114211410004214],
+        100202300110420: [100202400140300,110421220003142,114404220000142,111210302220403,101100214003002,100004121032030,114002300040001,100404342201400,103002001420012,114440210000102],
+        132201202203040: [103134014000340,104103100010141,111101222240010,100040210411102,100110004102034,102040140220220,114010400014304,114300132321233,110000140032001,102033340222200],
+        1111004200000302: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421],
+        1044110410010031: [102140000212141,114301000000002,100113324103000,102424114020143,102023021321020,102114020210202,114040204014042,101200200302210,100001300100302,100040401020413],
+        142110442131233: [111040124400330,112002000240202,111240012241220,102034031324100,102100401400000,100012004202204,100022011030031,101220031020031,111100122240002,102102022002404],
+        1022010402202100: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,114110200212210,112000120232022,102041220200010,100002320113100,112240200202201],
+        1140040310301200: [110020120023302,100043120003103,102421012023000,110002000410040,114203412342202,101022411030002,102000021442024,100030314100004,110400302114103,103001021240120],
+        140032400120003: [110042220002210,110410200100200,102113340210000,102221200204022,103021030102410,100004014300341,101010200321421,114100212211004,112001402002232,102101024000110],
+        1141141021111132: [100100014100021,102110410204321,111121012212042,110014000000224,101021001114141,110022134200011,112320030202004,100210001002400,110000031103200,112320001130240],
+        1000410203203000: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1010230110002204: [100002100100210,102420424042020,102000430221040,100100000422320,100102020411200,102100012002000,114221030000011,101320224220103,101302131002410,114140120222220],
+        200001414122002: [110213100122010,101212101023221,112120222020002,102130100222100,110200204432001,103024041421002,102200034042002,102030004010204,100104011041221,102400321403102],
+        220212141114021: [103000120120104,101013004222210,113011021023020,114200002320001,114002420023031,100141124233132,114210202320142,100041401221302,102100004030000,110224002122223],
+        1104000000000031: [100440031001120,102020200223310,103220011420242,100031201030331,112102102302000,100141011011032,102141231343401,101231104200000,100002120200101,102112011401424],
+        104031100202000: [114201204111222,103300004021200,102004204041000,100012004101221,102301101004100,110432112111103,101410020300143,101000100342143,101012111001103,102411021400120],
+        1141003240002100: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,111122200021102,114032234033303,112400034040002,101041100300001,100000020201032],
+        1001220032421000: [103112004030003,103100311424002,103040224000100,114323010000311],
+        1110022213023042: [110022000023010,110200304432400,111222404100330,111002234114103,114221002303200,110031330120101,102300200240230,114014032333420,102001000221040,103110220120102],
+        114131300401202: [102021111412201,101201000011000,102322124114210,101401221011342,103200004024040,100300224213123,114220000002123,100010214302012,103234124040203,100200034220322],
+        330001100124241: [100020220410142,110000412003001,102011331131302,114000230023300,120202201010210,102021204013000,112042024000020,110022100044100,114400200004310,110003000024101],
+        1104121202000102: [110202032123210,110412244220110,114001002300430,110101230100001,110411130100013,110000022003412,102401200232302,102230221100001,100021044210012,100112224301402],
+        1100000000300032: [102104101340301,110014010012200,102110304020201,111012000021241,111303012201100,102224000214240,103130024002204,102113122004204,102000244000000,102112001341014],
+        120100044024000: [112002204004403,103013001430040,102004201410402,102401244020424,101104121111112,102141032001100,102014004000221,102002240210000,100100220024041,114000000023404],
+        144402423233242: [101222101202341,100020220410142,110000412003001,120202201010210,112042024000020,110022100044100,110003000024101,100010024302100,100000011020412,102022400210202],
+        100140013103010: [112000124022430,102302120210122,100400300013000,111010012201220,101002104002020,110212301300020,102220211302322,102202001300342,110010222000110,111322300013200],
+        1143002012123401: [411010033020221,202013001110004,1320010210001300,112012111114213,102230004030112,100100221012100,112102000202302,103013200104400,111103304400022,112122400230241],
+        222222100020032: [110011202100142,112400102013231,100001120400212,112030122000211,102023424004210,100014140201220,111004012200210,114142122200022,100413131013301,104131002103204],
+        1431402121001044: [100031120101224,112012004004324,114122220031004,103040024041111,101004004213014,114022214031210,103234100101221,100010111040104,100001200204214,103103311424020],
+        1020104021310000: [112113214020100,103300344012201,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,100201104224131],
+        1224102220311030: [111214100000104,102103034004032,111100014404020,110044014410012,111210124134403,100200044320404,101022024010403,101402014002002,110000110020241,102200001112320],
+        131100004122440: [110101420400120,110110420012114,102103122004020,114021020011222,100040204304024,100304100140104,103120000104023,103010100101110,100001200121301,101102210330301],
+        340000233002332: [112100124023402,102000224000011,101020044011003,100032301041204,100410304320220,100002414210010,102402000204104,102010042000041,102242204040102,102020111100200],
+        1020103101321000: [101221121020230,100004110000301,112022200234200,102100011341140,102320231000001,101122031100000,111222244103200,102042310203001,100101021044000,112230000412212],
+        110000202302130: [103311011404143,100021220010031,100000014211030,111303012201100,111020322144201,100220121003120,103240214031201,110210120000141,102212021120100,114021034021244],
+        1040324330002230: [103004301434100,111322432204020,100003300001101,101100004204040,112120202314224,111321102010100,110141204400012,100010011202403,110102020032300,123000123110000],
+        124031241220010: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100104002224,102100224000210,102310140240012,100014204201000,102103321411004],
+        1143010202102120: [104100111240003,100010101020412,102203101113311,102100200221304,101011024001101,110003004210404,111232402242032,110142010120100,100103024102040,102112200210412],
+        1001340224020303: [112003100241220,102204001121032,102004000220013,114130302313120,100102100000410,114003124010140,101244001000204,100340000140032,101110021040110,101000030322212],
+        131420120012011: [112124004022322,111300210014020,102103201320411,100100031043410,101033214211000,114001100024243,114100012204104,110141112044000,100034244303010,102003104000032],
+        220022110040120: [102333021100220,111314044130000,100102204234121,100403200032000,114213314002002,102001301320420,114110034120300,114001400040401,100100411202320,102320241001011],
+        200310122220124: [100002311020211,100131144234022,110420202121100,101001410340301,103122100103002,100021001220144,102113040210400,100022410420203,100030424012242,100210101002121],
+        1102012014000210: [110000204210130,100100100422103,110020134410001,103101001422002,102204004042041,100021140000322,102101002004300,114100202200202,112000020210140,103230410100410],
+        141100400001020: [101300124221002,103311100112220,102112002004120,114400004141104,102142234000020,114402044140023,100314420140013,101401204040200,102132004004123,103030100142040],
+        222123002211100: [102442211414022,110122001010214,114400322311044,111231012220013,110022300420031,103214220100013,102000324040402,102340301000304,100023011030111,100101220101011],
+        1102310002000110: [104100012102004,110030002000422,100402431012022,110040002034100,102031024013013,110044020020202,102122410220401,110201434430102,102000200222121,101002020342002],
+        1001012414012210: [110041030000202,114412002310123,100000300100343,102001410212441,102000104000041,102100034132002,101212430302203,121000000000100,100023201030204,114200010001110],
+        222011100203111: [101010314000000,110202104242120,110020124201031,110041012003012,100111231222104,101000201110001,110021000414343,112002212311322,110014400000110,111402114420000],
+        201203203400031: [110202032123210,111122004100020,110412244220110,102411314024401,114001002300430,110101230100001,102200034024120,104102130014402,110314042102142,111120122242010],
+        102232100103230: [102102031403230,100024004210111,102002100222202,102001041100103,101001100320224,114021004100002,103201330101022,102140020210040,100100210411410,102100320220140],
+        200242000102421: [100402004300002,111012104400010,100100004100200,103120140210020,102143211343014,100112000410320,110124044400220,103002110114402,102100214000001,100100121010222],
+        104041102100301: [100111011011011,114014112300100,114030034013101,102400124020001,100002100412200,100102224234101,101013004001421,103000014011004,102010321411140,100031120413224],
+        200424120033103: [102334004110232,110311331003000,101020240300003,112300032000100,112021334001000,101000100322140,100144430411240,111000024401300,114010010002314,102321040213311],
+        102023020000231: [102302024112212,102042221101230,103000020120303,100123000422310,100000040410034,100010030122310,100003314100400,101443104041443,111210102220243,100023004100022],
+        121200020020031: [102210000240404,114320124031023,114220020213314,103141111442241,112020141130103,101020001101203,100040324202211,102020120223201,102201011122031,101041400320310],
+        211011003030122: [100222311000201,110200132020200,102202201121140,102020031103041,110422400001143,110200201212001,100000214302242,114213124102300,101024020302210,104020040010100],
+        1132404221203002: [102110201342300,112121032014014,103334120114003,102102011401410,100130204300200,102330104110220,102333014110114,102043031412211,101210100300100,114200202320040],
+        1010144011104233: [112041212004442],
+        1210200310002040: [110204034240010,104102030012121,110111222040014,110300142000143,102141002000040,103010000120000,110000011100204,102100111413012,103442014000100,103021000144000],
+        1020040000223040: [103244400103103,100002001040031,120220110010340,130024200410411,103212104041004,110012422200110,120100430000232,112314010200014,111323304123020,103043320110242],
+        121002002002112: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,100402201004014,100420404320101,102123414032304,112401014040034,110021200002102],
+        1404231040000003: [100103030021200,114310312320104,102300000210120,103010014034004,103222000102010,100001001020120,110211011313401,111211244410020,100111044232401,101002021142202],
+        1101120110020000: [100001300102001,112033124022002,101013114001130,110110102042312,101004104010020,102001014003100,100243201003120,110010002004203,112000012300102,101121120321230],
+        110310201330140: [110203100104014,110314122221300,112042210240113,114310222300212,110103204400311,112100104042330,112003022001322,110200202021000,100004030410001,103414000120102],
+        1022111200121021: [110021220021121,103322424033024,200003230020033,100010130140100,110040000440000,110010010431112,102103201412111,101140114004004,110210004212240,112011011132021],
+        1123014010424300: [112213000200301,100003224334120,110204130004030,110202120003032,100322004314021,102022010220223,100404000020012,102343301100440,102410434000220,101101000330302],
+        1140301003000204: [110212012114431,100001140020000,100012101223021,114002020044120,100021004302202,100121104300201,114102010220042,110132000024420,102021301441201,103103144000200],
+        110310143020201: [110204004430204,110300011230013,102100400222242,102122114003140,100002021032001,102011404010000,100000011220004,114111002340233,110000210004001,102100324001200],
+        1140001013011013: [110033000022043,110100200030100,100000411231000,100023001222000,103140021211010,100020140121034,102340211000200,102300231000210,114000200010000,100012024210202],
+        111300000203022: [114203104112214,100040004330302,101011024213031,102302004110031,102200324111003,102200241003011,114241010002120,100040001221420,110102110120200,101210021000110],
+        1120110102132121: [101244201023000,102024204003232,100103144100002,114220010213003,100002111041341,110224234240311,101042301004002,110203222110130,100040011234103,100100000011020],
+        1000102000312244: [101024040340220,110002012202020,112042111120402,111311244120030,102100100200001,102110034000010,112200211100102,103000024002024,102104431123112,100142414232000],
+        240004203340000: [102000001132113,102202310203222,100042001020203,102002320220202,114130210231020,111321314133000,100000201041300,100004410120102,101020104000040,102432101112141],
+        220220202201021: [100003134213001,102320221000400,110420134220132,100301014210302,112400124040230,112112002010010,111000100023120,102110003003400,102401000341040,103120041210040],
+        243011403011002: [112144002012040,102110040210100,100014424203222,100120200402020,111002014122111,112013002310110,110232200421003,102140434004314],
+        121120030011003: [111102214104403,100132004231230,100000030000001,110302302001423,112000042000001,110021340020022,112020022314000,101010001000320,111001014111122,101003204000300],
+        200143400131010: [102200041120220,100100001041204,100002001024002,114002100040223,114101002200223,102430001400101,103210140100004,110021041330000,114021404100022,111030004402002],
+        213142011001043: [102003210220202,100100001202011,114104030222003,101120004004020,101010434000404,103103044002112,110020202130122,102110404003220,110202002033222,100402300020100],
+        120402112140020: [114001000020102,101020040300010,100213001000212,100040201012040,100002004212420,102121014002022,100141404233000,114100222310230,114131002342130,110002022003101],
+        1001103101403220: [101434200303301,102302100241110,114000224021230,101300244224432,102101120213444,102010214000002,101412101103402,100000204214222,102144420210001,102220234040203],
+        1111322204130201: [110022002120332,111110230014001,100301101000021,110020140044140,100000301031020,102100104000244,100221000031141,100420031002301,101311010340421,100011301024003],
+        100020030021014: [100010400022200,102300001002144,102302444110110,102420221112201,103001000142003,110310004424232,100010344310042,100402012200112],
+        1020300330110204: [100132130421010,100212001012200,102041231120304,101020121032010,101302314220212,100000111040212,111130220024001,114333120004102,100402102200324,100400404322200],
+        1031204314000103: [100240000032004,102000000210211,111010204401023,103142444002002,101200010300001,102211300204221,114420232314210,100301004321221,100020000410313,110301111301101],
+        1410110210202321: [114000320041321,100004004231003,100020201024100,100223004121020,110202204244021,100200024121000,101034201140140,110110004402000,101031021032020,103030020100023],
+        1030102031010120: [102120010200131,102312300220000,110020120041030,103001220104301,112010004020300,101042200303012,110401202021231,102201001120441,103012000121000,100240204101020],
+        1000202010400001: [112032012004300,101001034002001,102000401442010,102000014004040,111020004400234,1042012320010021,221104221024023,102121321410143,110020100431011,112000034000041],
+        1001012002100000: [111034014401112,111302202200213,100030241043214,101421001021031,101300400313000,101220040310221,102320030240003,202030010203100,114431310000020,100000004300240],
+        1002023200220000: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        203023002012000: [100011231042030,102100141413100,100020034100101,110004424200024,102111144001232,100111221011100,103312300110101,101403004022114,102000441132020,102222244040141],
+        1420200120211221: [114200024110021,102211021000220,100010001040112,100002044241100,110023244410030,110032020042004],
+        1410032141012101: [110201201211024,110202000000310,100422314300200,102141410230020,110020001224021,101110020013040,101012410301010,103120001400003,110003302000101,111122222240232],
+        101111100220130: [114311204002010,110004221040341,102313114114000,114004102201202,100000101001431,101010014001032,102340140222011,101043024000300,100001044241012,112210014003412],
+        1022000401000210: [110241024242442,110444010032242,112220001100200,114014130041210,100001041031013,114212102310100,110224200113042,101000020301410,114000102210200,101041001032310],
+        130202004013214: [112142301101040,101000130320340,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440,100033230420102,111110004402021],
+        1022011140134201: [102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,100004410120102,111222214101043,101011211003002,101001040304214,103230430101003],
+        1001320220202100: [100422000031421,101214104041040,100102000010243,112410034040040,103031410122401,103101000100022,100040021031201,103000300120001,100020141044111,114200000002420],
+        1030000111414222: [110104110121000,110040140031200,114043010040031,100404030012420,100000101232023,100000021030000,110030102131421,102110001342020,114102302311130,100023200423040],
+        1010310012100240: [102142012001000,102300120220103,114141302341111,100000000014401,101020200320000,100020114202320,112023210242031,102042301121010,110003204210204,110011002014134],
+        1000130201221420: [110201400400024,111013232200403,102112220202010,102214104010210,110042042120021,112010120231202,101011101032340,112402010201300,101013411000000,102100001400004],
+        1031402010032104: [100002121043000,102400234020130,100133204300040,102200031002000,114021112304224,101010120320311,101201101001302,112201011040200,100302241002010,112040101110000],
+        1000042200200420: [101404110301130,102000001322140,100002230124133,110030411202403,102001104000101,100042114342002,100432101014010,110311102100000,101000030310000,111020104123120],
+        1001323120212214: [101011411020120,114201232330041,101000010201420,1320010021102402,201200032021040,142321203003111,100040011432042,401000020221031,1440003320032101,100201001100200],
+        114220104100004: [100222011211021,114031112210241,103201114030123,112000312000120,102120341340120,102422310203100,104134440011201,102311021104000,102104220213400,112021011112000],
+        1010001031011222: [100000100100200,102010020203010,102200010200000,102001241410312,114444012310100,103140100210101,102330021000131,112041031114021,110400240002411,114432422322332],
+        1020211314010240: [110104110121000,110040140031200,114043010040031,100404030012420,102110001342020,103242024032020,111123420020420,114000142331320,101114414000402,100011200100200],
+        223002000202013: [103212000212121,112002010220004,103211014000111,102000034013222,102030021100041,103210214042004,102311020240120,102110110210032,102202001113034,100013020204032],
+        123430211222102: [111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,102100211340043,112100311104022,103443104001332,101422214042012],
+        1041022013101211: [101033011001100,110014010012200,114314300012000,110020334420200,103100020210002,100100004230402,102110304020201,102321401104012,110202420004101,103004000112020],
+        220123301201314: [100000200202012,102202310203222,114404010003320,100013200412401,100141011011032,111222214101043,100010021034000,103132004002020,100000241000002,100000401002031],
+        311000010411104: [114221312340014,102402201110020,100311204312442,100001024100241,103000020100131,101211204201231,100000110100200,100012000022100,100020034200301,102320110240320],
+        1021200214341002: [100322100143040,102410000230114,114201234002300,102303320221102,102300001001300,103311034030000,100020414100300,100040004102010,100013441022002,101200301021101],
+        1440010000100423: [110400024211000,112010002313023,103013001430210,111100314400341,110003410004022],
+        122001321300200: [100000410103200,101030001001022,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340],
+        210120034202431: [112133102012033,110202041102300,102142120202202],
+        1002220001020144: [110201430100032,114300212300441,100000310102200,114220012320403,101201100301040,103001001421002,112114211100012,103004111240200,114040002301110,110022444200004],
+        200321003101014: [103204214040130,100142010410011,102041410242244,102323201000412,102212434110001,112102314020000,100000014200001,114010002304030,101300040310000,100012124101001],
+        214042040020010: [100020424300341,101021414001303,103323314024002,101004121002043,114020320040231,110220012121020,100400104302040,100012101020010,103104001422213,114130222201102],
+        114110223001020: [100122004300410,102202414041044,102000104012232,114443330001442,112203221102231,112400202020003,102000224000011,103001104010010,101212040303123,100111201014214],
+        100003000004013: [102323101101400,1003002030122040,202003402402323,101230330042220,1304100402114410,410142111403201,1002022230124020],
+        201312314012001: [100020201020032,103100111424040,102304000242033,103000011400001,102104241412223,101400200303132,103001010101001,110220000113011,111030014120004,111020142144200],
+        123030200011320: [100020220410142,110000412003001,102011331131302,114000230023300,120202201010210,112042024000020,110022100044100,114400200004310,110003000024101,100010024302100],
+        123301101404412: [100300001002022,102230214040102,1301124312021400,100010341024201,203001440023021,100013240400003,1300110022103104,103000314002021,1000100400230202,121100201000233],
+        312410000420413: [102430231400211,102004021102101,112002012030102,114440240003000,112120302010202,100020010000104,102124200204223,102223211121031,110012020042102,110200012121210],
+        1100201112222004: [100000210410212,100202021212012,102000032003002,104003410010031,103020201401104,110020030011011,100100000012334],
+        111000023000312: [100122200012014,102120400212001,100104211044110,114313022302101,114021002302020,102313204114304,112100102300200,111201424100200,112130011100011,102413141112111],
+        143000010021300: [100440031001120,102203004042010,114203042330220,100020001041410,102032012000101,102102231400111,100032421040120,101004201001232,102141231343401,100002020101023],
+        1202303342030000: [101010010320112,101001400301113,103101024004200,103300021402104,100020124100010,100301020140000,102102024000001,102202004011044,114003104032034,101012044004042],
+        1220040321310311: [103102101422031,101421100301230,102130124130100,102022020204430,103214021400010,100012401020212,110100022010014,102000324011143,111110420014032,103004044010300],
+        1001100121010011: [110002012000400,110020422131120,100001000100000,110243000001123,114024400030020,102102120210120,100402000010424,100002004301002,100103120023100,102140011343001],
+        202000301100403: [102001200221011,102420000202033,101000004010012,103024000103302,101301014220002,101012044004042,100112240020023,100104000101010,114040100011424,102020000220210],
+        122044001400202: [100200400430003,114420102323300,110212022133311,110404122110112,110403010000304,114100040214000,101210021021243,100140024230240,101010200320244,100100241000020],
+        221001014242010: [111323002200100,112010212000010,100022404301110,110220001312011,102202210201312,102121041340001,102212444022430,114321120004122,111210012220010,111020012111214],
+        220134020042142: [100002421031242,104000000010243,110441102112020,100122004323202,103040230104020,100011020140201,110300212000100,111200404440043,111010100040312,102223301012003],
+        310001400100202: [110320202023400,114101420030202,100011004343022,110104422010121,110302204433321,110013122130200,110401140004202,114020204102020,102402330230011,110022202130021],
+        1040120240020040: [101122031100000,114010022302104,101220040300414,1300322131001002,102300200220002,101141430330003,102121211343322,101003140301001,1320004203402400,102410001111322],
+        104102313100010: [112102024020402,102102010214442,101002024000400,102240231110222,102010214000120,114023142202040,102330020242041,100114310414323,101010310304023,101223214040013],
+        201220310133010: [100011301040031,102101021341002,110002220002220,114404210004101,110011001100133,112121404020102,101000000300323,102322144112403,102024001102302,110031102000134],
+        1030223001041101: [114130302313120,114202204113222,114003124010140,101244001000204,100340000140032,101000030322212],
+        1420104202002430: [110221220004222,111001240012300,102020020222311,102412300200000,100110401000111,102141200210120,114010302300324,101001214004102,102201040202004,102002220221442],
+        1010014020241002: [102240020200400,101210331023020,102021111412201,101011211002010,100021300103041,104110411304420,101401221011342,100222100412022,103200004024040,102140002000412],
+        1002410011102233: [102121020220110,100001034201201,102010402000020,112204304010021,114020022202002,114212222340440,100001040100414,110010400142004,110022011320020,110200220002000],
+        1000120421000330: [111220002220100,101133410300302,132200010004401,110114410003233,140200430112430,112144312011433,110000040024442,101410044021332,100413304100230,103010201241124],
+        112100110204010: [114043342242304,101014124224432,102312001000100,112430022023221,111304214132302,102023120213242,100342011001201,102020011411100,101400130302001,100044000103202],
+        1240210303020020: [102111000202241,103232220103211,103202404031100,110043132100220,100202204222000,112421024013100,101201114044200,110422420000022,100402002200010,110040304210001],
+        1001021020111202: [100204131213121,101012104004211,103300300144000,110320212020203,100140424020004,111001002140322,110200134430401,100000134102314,102203001113302,110004414200010],
+        100041000023002: [114031022302044,101012131000024,102002024000132,102110141410402,101044001032114,100001111032112],
+        1002210013012020: [103110004004310,103012301431324,114101412203113,112122332013301,1002400121102010,102113131410033,112344420200240,204130104001203,141000003401010,102221001121003],
+        102022100034002: [110200140401144,100430200431021,112002020214003,100222101210111,110010220410220,114040010022000,101133104002112,112140044022100,101030201030000,102024041130142],
+        110031040003102: [110013334202122,103330104030103,111200002220003,112043421121002,102212030201100,100104234230043,102010341440030,102101024000110,100401301001200,100001120100002],
+        223103104131004: [100114004100001,102003320200411,103222244003021,112440114040203,100401001011010,103001204002010,100340114211043,100033001220020,101100120334014,114233002340141],
+        1103220210400202: [114231202331202,100003021234044,111102032220111,110200204224211,111300042200340,101010041032322,114020042300022,100021421020002,102400004040100,111120204100203],
+        130300320200133: [102142221342202,102100422004010,102420000202033,101012400343401,100020101020404,100002411021201,102110010210330,100012020410400,111111102240001,102122111402420],
+        1010001000100030: [110303120102044,102120012001031,110201310010120,100400004303004,110002022030224,111234024134400,102011011131431,100204011002001,102013301320044,110020221320103],
+        310002010000002: [101400004022100,101421100301230,114031212300211,102013110201200,102042321440100,102300121004222,112000230220102,112010022302321,102000324011143,102304111101041],
+        304030001120333: [100003414100400,100114104101001,101023221000031,114221004002212,102100122002001,101000011021414,112010022302321,102102201121020,101000214211011,102300131102000],
+        1024240120110210: [130043000011201,103240031202014,110220314242441,103001022431400,101000000001210,111121112240002,111011020020013,111014224400434],
+        1414001040334100: [110021100023210,103122000100403,102023120241131,114103412201420,110014300041302,114241000002004,110020310022021,101121021020012,100424200020200,110321001330010],
+        211003100101021: [110010100022010,114004004112122,102130004001001,110033242001020,110202241202130,114003002301032,103202104032224,111102200021041,102021024001221,104130410011020],
+        110210212021034: [102040044001211,100220301003101,113400010104100,100023234240221,114140014100000,103003130100120,111210020001013,102111000210000,103121311240102,110401342114000],
+        1404111310320220: [114031332302421,110130020000332,103034101240100,112021014001212,111201300002000,100421240012401,103020404010101,111130002114340,114204002320010,112230230412403],
+        1432110012311122: [102001130220001,101410211021400,100022441042300,103003024001001,102304000242033,102104241412223,102002421442002,111131214422402,101400200303132,100240011000000],
+        1042121311023201: [102012300212321,112400202023020,104400100142023,1320142020103004,101200020302200,1320024233112412,100010230021300,102230004030112,402014100021201,1002022012411300],
+        100120000013241: [101400100302311,102013424000314,114013204020122,110100224200101,110014342002102,101122201021010,110002314202114,103021424001214,110000022003020,103104014002131],
+        1020241130042023: [110101210013000,100404121014002,101240220300022,110120020002304,100011000202214,100000024100000,110212214400114,110012101102100,102102304001200,100010040001210],
+        103002200004212: [100111011011011,100030040101021,114310102300021,114014112300100,114030034013101,102400124020001,100102224234101,101013004001421,103000014011004,102010321411140],
+        130100101001002: [103100021440001,100120100032121,110000201324002,101200400331110,111201022200100,102100100210100,100002244341113,101000141033304,101011034001210,112400002300002],
+        1040332320343102: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        121302301210201: [102140000212141,101440004042202,101014201030204,114012444020220,111141312211004,114002134022331,102020014003003,102311210240304,102000000223101,100020024212001],
+        212121302424404: [110203204241122,110001214200042,100021111211003,110030010432322,102032220221210,100000004310202,100203331000130,103203120134221,100002100102303,101100020320003],
+        220000201000031: [101100210320232,102302001102032,110003004412202,100100311001010,102010401101200],
+        1030040014002303: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,114003134011032,100101234330123,110024000432310,102012101443110,110032220022103],
+        232042120031022: [104100002100221,104310001300102,112000044002102,114021132202032,112012004004324,103001314001021,111300220000230,114110032343001,103040024041111,100110101040020],
+        100203011102301: [100024000110221,101000130320340,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040],
+        1401040240341421: [101200410300210,101001200322403,111001204120010,111214204104043,111100114100203,100400330032440,102221410204210,102212010242200,111301002200002,103102040122432],
+        1000400400420010: [112132212010031,114112110001112,132002014101100,112111020202401,110203022121202,100243210430220,101023114000013,112314414020000,120214141304321,101003211110010],
+        331010342211000: [110123042010000,110213012044343,102430321112030,111113004102021,100012130010240,101001101031102,100203114324000,100320224314301,112200102033440,110100000101440],
+        1004200222102000: [101043042401310,104001222102120,110233000100021,101113012101010,110023132100402,110010102002310,102022102010211,100021220002020,103004041414132,112112410232001],
+        103440042301030: [102010130231400,101010311003410,100020424214024,103422430124013],
+        100003101012421: [110000002133140,101233341022410,114100012313002,101004202403121,100304320140012,103222001420142,100000120121031,100142104304130,100000124302200,114404240034104],
+        133410114200022: [100104214302040,111021004400020,102103202002122,102420314024020,103204140100110,100401200020232,114401002310000,114111202200420,100033034300421,100130220400121],
+        1020044410201122: [111012104400010,100432200033101,114244120001041,103120140210020,110010011212411,100300020142022,114420230000240,111241224101013,102012100200002,102030301322020],
+        1002222131232002: [110202102121414,110143020121321,112034300220110,110300001300241,111224424101114,114201014110304,112010100202041,112013222000202,110222042040000,111001422140044],
+        112044204110121: [100010210002122,102301100242102,102110204131100,102112201403021,103011324001001,114003020012133,110301032020000,102110401141003,100041004100341,102021140203004],
+        241321322204011: [103324221401420,110400332010004,114212002340000,103111004004332,112204340204032,101020320320424,110324011300003,100014121020424,114300034032400,110313010000400],
+        110301042320030: [100000204102030,110210131301120,114102042311423,110423200004021,111200102222210,111140002113000,111020142202010,110120112001133,111004024400024,111002120040021],
+        213423003000000: [111120230020122,103100221440010,100021101000000,100113324103000,100001100411302,114123420002142,102023021321020,101000304000400,100040401020413,100000024300321],
+        1030000120201004: [103002104012101,114021000012031,122000430101030,114000022300301,100311000141022,114210202322020,100401301000011,124210120032121,100314020103003,120330342110101],
+        1013400011031002: [110102224201130,103301201402204,100021020124002,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010,114042014014024,100000000200102],
+        110004322311020: [102000004002101,110202000000310,100422314300200,101403014020203,102141410230020,100042030120422,101134224001001,110020001224021,112100000200031,110003032000041],
+        1212421124040004: [100011001021002,110000141012003,110112301300000,101040100004242,100003000100210,110000040041001,104002100004121,102443320233202,102402001113222,101000021032102],
+        134120020401020: [101230004040022,114244120001041,101021020324310,100020140121034,110010220000210,114021000044211,111241224101013,101113020300321,101312014223102,103201044030202],
+        1001042010002000: [110302302001423,101010101022202,100013211002142,110104000024100,102211204000440,100200001001420,114141024004011,114140044002043,111030424400000,110202221212123],
+        131103024111001: [100100331000022,114222040214020,110200004210000,101000441140230,100142221012003,100100030402001,110132124400400,100121221022103,102022010223000,102120124004020],
+        212402003000222: [102023211411003,102340200224222,103212000212121,100100011010220,100124011040300,114114414122002,114320110001030,103211014000111,112120340203021,101243010302200],
+        1402202200133200: [114210424101200,100420110312244,101420014021400,112230324002000,112320301100420,110101024402203,101122000320210,103002400110231,100013100412100,143000203203020],
+        200203001014102: [100011110000122,100013001221300,100004014211122,104100312101104,112034122000441,111130004400001,100004010001204,114411102310102,114102032210440,101022241024011],
+        101023222400410: [103114010100442,110400222110100,102120244001000,100002411024300,102042041130041,114120444000124,100110304233020,100104004030002,100101000402002,100113011000121],
+        211411002001112: [110020001310000,100310201003000,110412121110214,110142300120000,100002201032401,103012011412220,100240010430203,103210331200130,114300100002210,112040101120100],
+        1002020102020112: [100000100120300,114202244112111,102110202001010,114011404103142,114041002212302,100043200102020,103332044032320,100202121000302,114040002300000,104331000040420],
+        204000203400200: [100010430101320,110104011122301,100002214312112,111021344401134,102000211443214,100024000000132,1300003000223100,114020004120130,110010000020002,101302414221332],
+        133401111043112: [101200000304000,102220011110041,112014402034232,102144032001002,102110000210220,111303034134331,102010200221212,100110004300112,114023240040131,103000000120110],
+        122200020002210: [100000400100222,103004324000021,114000002334110,114131102312120,114102004141000,100402021000110,114142022200000,102212200201003,102020412021404,101030101032043],
+        142012021144020: [100104010021241,100004301021110,114102102344110,102022200223242,112142000203203,100011210102401,102110111023211,103001011422133,112033011120110,101211004041120],
+        224000000142022: [112200004010400,102011121102202],
+        1020400302400013: [101410411010012,100203011000010,102221104042021,100140001011002,1340010113012333,101201200300020,100000024103201,114201003002000,100100221223042,101000401120424],
+        221332040100231: [102110201342300,114300204032002,102000021444112,100003010413400,103334120114003,102140341343300,100130204300200,102001231444003,102330104110220,114100304142330],
+        1110203112200004: [102010114022011,114002200000421,101020321002002,114302210010001,114030004104220,100104004301000,102443211401140,102301041000014,112002002302310,112142011101404],
+        220111221200200: [100200400000010,102100014031110,101020020311410,100100301000200,101000020304001,100100340412100,110030104412010,103210244041141,112010410240031,110100332004011],
+        1100020000001301: [114021010023030,103422000104202],
+        110013112003003: [110120200000200,103020040141031,102310044114012,100130431023023,102400204201010,110300400000232,100130014234331,110030224201200,101022441110111,102032041131131],
+        201100201120144: [100032041021210,110004301222000,114310000001232,102040041320010,103203401400132,110104002010100,114142044120310,110220410000040,101030004010034,102201411100212],
+        1031120000004100: [100032041021210,102300324010203,100030020011022,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,110104002010100,100030024303023],
+        100303110011001: [114002044012422,1240210023303321,111011220004001,121410130210200,100221110031000],
+        1440000300001002: [103004211400012,100001020100030,103000004001200,100001020104410,114201300002200,100231020101032,111220124101004,100021004100412,100100011000200,102121010214421],
+        102240031203001: [100441224303402,111201024102030,100000211034102,110100004220111,100010000114111,100001034200114,100000401042204,101002321140010,102002004001210,102013200241320],
+        121244010213214: [100202000030042,102031000211000,102202131004010,114211132343224,103040004012200,102200114011100,102000234000003,111314100042040,110224010010021,110011002010023],
+        100101013002202: [100310444310004,100211001204102,112333412022030,100403012200100,101411021100200,101300001000114,114303202300104,112020044000400,103230004000322,111201314412204],
+        1123010441401100: [102422114040010,100022041001002,111240340004003,101204400304011,111101222244030,114032424122040,112011012004300,101021401003220,102020004001311,100301020420101],
+        132112214304001: [102211230244321,112121214040022,100034244210020,100041014210020,102401221402002,100000030100102,102102011342302,102140200224200,101001244010120,103011014042120],
+        242401003413002: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        1021443140024012: [110020001310000,110214024430312,100011014100041,100310201003000,100212341003212,112013212032000,112010220224003,112001040231401,100200001001300,100012104313201],
+        200222132040200: [102222131120032,110021130004103,114041302322043,103204324031320,102310204033140,111222012243120,111103110022000,111102310012110,103200011404234,114000422301302],
+        112403302020022: [101410411010012,100203011000010,102221104042021,102022014002413,111002134113102,1034200000211010,1340010113012333,101201200300020,100000024103201,114201003002000],
+        142220003430002: [101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,112143144020012,103231224012042,101000100340001],
+        1100002000103020: [100201310000404,103100334030202,102211014034100,111000222232122,102301024020102,102240031000040,100102204231301,102102110231403,102303300220004,100001131030122],
+        1010142013410010: [112011011111323,102133114131312,112210104000224,100003020002222,102302224113320,112441402014033,101211120304230,101123210321002,102333100201022,114421224140012],
+        134140444202144: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,100030010102102,102100104002224,102020004000014,100000211023014,114144014122041],
+        110041002323000: [103100030100010,101400004022100,102013110201200,102042321440100,102300121004222,100042000102010,112000230220102,102013000202010,112010022302321,101040224003400],
+        1003121301200004: [100030004300300,114310020001102,101111004022001,103002304010110,102021001414200,100404400020001,101221334040104,111230030010400,100040021024200,114404004120002],
+        100001034000204: [100000010411400,101002304210122,102100340232410,102144312001130,114400240003203,103000320120003,102022002000202,102022040203201,102141002000022,120103240002010],
+        240021120120021: [110000000003200,101041204222101,100024024211001,114031000012100,102110001342114,110200000004322,114342044032200,111110020000001,101100401022000,100400000010022],
+        1023020011001040: [101214104041040,100304011002220,102012204010044,114110100003101,114240032321200,110024020122322,100020141044111,114200000002420,101024420304241,110204310112224],
+        1002244040014321: [100020244100302,100002200412020,100102000423142,102000301100100,114410012310230,102024011413201,101300414221100,102122421340210,114001042203020,102010100203212],
+        102111000200102: [104101000012210,111010200042110,102102330211000,114111104121010,110410241112100,114123000000123,100200320032100,100014441224023,111202000002022,103003004002202],
+        122042401000000: [100002020413201,100000204203120,102303121002022,114000012300000,114040004102003,102121314020202,102101402001102,110004131231204,102021030200100,100003020100001],
+        1043104210040200: [100400220010240,102020200203443,100012200002000,110010114203300,100000000413102,102100111411342,100032004200002,100103114232142,103022100122202,100441120030002],
+        110300213030242: [103000200111020,100100100412204,101424100304000,114004000022042,103003444010014,103121120114230,100012241220110,110002111042010,112420122022130,110002321321021],
+        1123400001001000: [100000014211030,112200122022200,111020322144201,103240214031201,110210120000141,102212021120100,100010001043004,101041200344232,103242010103121,102220334043022],
+        1140200120221241: [102201204040211,110020442001124,110024102010002,100100101220114,101324030311010,101402001013023,111433000002144,100010021211303,101010231002430,101001010320221],
+        1000432212100423: [100010101030000,112400024011003,102012141440022,100420101011004,114030424122003,114000010031201,100013001020211,114204000003310,102020100231030,102100301021042],
+        244323143203122: [102343230224321,101200221022044,114201104111034,102310140240012,100014204201000,102140114004004,101232240300002,100141101044100,102132401400002,101022121001000],
+        1142014042201001: [102044104002014,102022000220004,110210001310230,103001220104301,100010144303000,100102434300310,100421200001003,114024200040223,112010004020300,100133404030004],
+        1004010000032041: [101040014000130,103303404020012,100210001002120,100220224220102,101000021141201,114140024000003,102010014010000,100000014214334,110034420441200,102020120222102],
+        1003044002221200: [102013424000314,114013204020122,102144201343034,110002201320001,110002314202114,100430010431044,103040201222041,110111221000100,102341131103201,110000022003020],
+        1021022210032144: [110012014411212,110131021000040,102130211404020,102142024132020,110222004210002,114110200232130,103101400122200,100400020013000,112011310234002,112414102021100],
+        1101100031142400: [102203344011410,100021324100000,102103430210003,100012014300120,110100120400020,102414014022212,102012220241003,100032000101014,103130020213032,101430211012120],
+        1112102242103130: [103040031403031,101030014001004,102012421412000,100010044300131,110144102001321,100020304102100,100013010004000,102200000204231,112020022000410,111232100010040],
+        121002012020022: [100003101032010,100000204100040,102410111400000,102023104012330,114001412302040,111100022240034,110204100002100,112131400431402,100400202200141,114203204001211],
+        1122021000011001: [103002001240043,112023420232024,112002002003003,110002120000000,102340001102023,101202101000104,102311330240430,101023101000220,102100034001000,110001200421021],
+        1030004031401012: [114031022302044,102012030213014,102003320200411,102002024000132,112440114040203,100401001011010,102010124013210,101114000330410,110100331003020,101011104000212],
+        101210301100103: [110202000000310,110000010120043,110000302030030,110301311303102,110103111120042,112100000200031,100003200120040,103120001400003,100044041024214,110030124410000],
+        1013220022033100: [101240210310204,100100220423210,102000111441024,114240000000041,100211041001012,102032000223300,101013024000102,101414000300100,114202002320420,102400400200100],
+        1014240104120122: [110220100000102,102100321320100,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102140121410131,102310400240000,101201340300430],
+        1001111100200000: [110411010000101,1300004001031100,404130103212403,114124400000022,1100210001041103,1200020222023401,1042431100100100,102022400114011,110432010304000],
+        1010130302000100: [102024124000001,102020010200102,114104300220204,102121300201244,103001021431101,110022030110040,102101200231432,100042000010010,102000331132232,110040300001031],
+        1240120303221100: [102000402041014,103204214040130,100142010410011,102041410242244,100022010411004,102323201000412,102212434110001,114240044000100,103140031420300,112102314020000],
+        330023104004402: [100131204300010,102102020203131,102230214040023,100000301041003,100202344123110,102012010214403,112410102300413,101031021112020,102124000210033,102221321120312],
+        1011042212142122: [110102042010220,101020124000413,114013400011030,103004104010210,101220024041000,102010300201414,101413004041201,102334000243030,112224012020000,103200114030201],
+        1110104210010020: [101010101003222,1304024102134240,103200344020420,404010201000410,101014020300010,1440124410104100,110000204412220,100300421001110,102030001201100,100100014220442],
+        1000004100000131: [102010421413322,111210044101201,111123014100000,101042230304321,110011020002013,110100002212322,103103404004112,100021024100103,100200201000403,112142011101404],
+        122201400020101: [112001001112001,100310444310004,112332000411020,102431200203321,100211001204102,110002400042003,102032010241003,102403204000000,112333412022030,100210124104100],
+        130131304010113: [103101224000011,102200042000104,103002000104400,103002144042123,110114021000012,102304204110040,112020004002110,114242210004001,110031404200110,114033020020202],
+        100100222200020: [103140044032100,100032224101400,114100004121121,114110004002200,103033044023040,102403101400210,101021410320100,102301000241011,100001301020220,114023122212301],
+        1131103122330020: [114032234033303,114300124030100,112011204004112,110102022000200,114020420030200,112431104040041,100012014202441,100121114230123,100003120410040,101040334212110],
+        1423300001022042: [114200014002201,101400001013200,114101222204110,102143032001040,102302004110002,124013121333134,101002314000000,100330000141002,110011200020113,112433102023242],
+        1011124220303023: [103104120102204,101221311031011,100004301021202,102232010200402,100400040013021,101323244232010,101232000302102,102210420240403,110400331000311,102201000201000],
+        1002000120014000: [102001204003131,102101041340032,103010110120332,100012020204300,100001104301010,102320110243020,101002020304011,102432314021013,114001400022003,104010000000320],
+        1104033302100122: [111101144102000,100020100101101,102300310242221,102024101321401,114020000020300,101100021101232,103000001401041,100000134100202,100000321040000,102131000201203],
+        132404344313001: [101202000300323,1202120201221210,1002004000020441,104140041004101,100000144310420,411011320001004,144200003100020,1400102001010010,1002004011000420,142110112121222],
+        322023000301324: [110122120100022,111100424100021,110111121011004,103001020104102,110200422113400,112000000223310,100002214210110,100011200201230,111001002201034,112024144002202],
+        1010420322320000: [100040000010200,110011200022002,112210004002112,110023202200020,100020010423201,110221220002400,110040030023010,111242044132200,101041104000203,114202432321030],
+        1102400411112430: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        131103404001411: [110200002031302,101403220331230,102040021121030,100000204130001,100412441010422,101040204210210,100000201034001,110000324412304,110000201230100,112020024000010],
+        102221214200042: [112312022021021,101200101021000,101430004040203,103000024014022,103122104002013,100040404102010,101020404210020,100001001021002,114200104001010,114040414014202],
+        1002001202000034: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,114201204111002,103310111402022,100014001041210],
+        1040022040342000: [100202440410010,1203210010100211,400114001102410,120200122422404,1031104420000230,1040100003200241,1020220210340010],
+        220340041000100: [102023324010020,114020310024000,111131002212014,102120311402124,103140124002022,102123301340300,114300110001310,102000100221400,100034300102201,112121004021023],
+        1200033040041200: [102101324130010,102100441341013,101440004042202,100100204101010,101200200302210,112100002302240,101430001014014,103312401404300,102103104134040,111141312211004],
+        101104142130230: [110002022002032,110000242002021,110042130002002,101010000324423,102421340201120,100002204300121,110402332010103,112400242014010,112410000203032,110020400021220],
+        1002021202004000: [110402424222014,101001011114020,100030044100103,102012040223003,114022012202024,112023212001400,100002110014312,114042004100020,110320042021132,102002101123010],
+        100310120404403: [102240020200400,100042111220111,112220100202000,100042041220010,102101134004010,100403211010100,103240301400123,114102210214041,100021300103041,104110411304420],
+        302004004042232: [100401140034220,114002002300222,101242004043300,101013111000000,102102131340404,102420041111041,112004312310301,100040121030000,102000404003020,103111020223101],
+        134020334240000: [104100421240110,110213012044343,100042010103431,101001101031102,110041221200014,110301122022204,100242130430022,101400004022212,110233020402400,111102130021203],
+        112213102313043: [110004020020022,114032412303041,114322024034312,102143432000102,102040010200101,102200434012013,112000301122111,114001110033210,102100201400122,102013120200110],
+        100213022010032: [100200104321000,110000110410110,101021000341001,112032302000220,102004301444000,111133030010200,102103231340304,102100010222101,114000044101422,102020204002424],
+        110112122200421: [102334000243030,102311321002232,100020420123031,102412020234414,102202424111200,102100040220330,101002041002243,102402001110220,101002424214013,101121201011000],
+        1120231211123244: [100422000031421,110302040102004,101032000323012,101402114042420,102220021120430,111341300012200,100102000010243,111302304130401,100024334203210,103031410122401],
+        1002020200101320: [110033200023234,114034120024020,114202042330012,103024110101112,100120244232122,111434000000313,110202000012302,111010012202230,112400100203420,100000004303002],
+        242132100033200: [102300100220200,100101021020221,100121014300312,110220442220001,110210142123042,110110400003300,101000201143043,111222110012011,101000040310042,103221214033302],
+        1121104310010100: [114400022321400,101302340312230,100400122201240,100011101222101,101000034000203,100200321200200,112044200243000,100002300421000,100202140430012,110200301210031],
+        200130111130033: [111302204133040,110300000011120,101213020304210,110422011240010,111020010022310,114011302300101,102420021400002,103221200100302,100432211002022,100424444303100],
+        100101020122122: [102012021321102,102141000230042,102002000221000,114044020020230,102321001000211,102242130202110,100002031020102,110200440000121,112400204040200,102100301341002],
+        1112110121000220: [110011414240022,100000200202012,111142010020301,100010044300003,114130210231020,103301410110110,112114324040000,102124031023100,100204104320231,114002104020100],
+        1401002203210440: [100400040010041,112110020420002,112014002002044,112012242000021,112000002300002,111000322200012,101030010320010,111403000002120,111001212200010,110000240000033],
+        310031013104114: [112142301101040,101000130320340,101214440300301,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440,100033230420102],
+        122141021011010: [100020031000013,100024004310330,111100012111200,110410324244300,101001001000302,111034020021310,100110040411303,102101030311301,114121012211212,100223401013100],
+        1421300233313030: [114000042300021,103213434031333,100002010120410,112211204010133,102222000201000,101011000320010,114001202300211,103001104012000,102001011441044,101143020011020],
+        1021011021102110: [101041030320401,102141212000200,101203121020430,103130021444021,114144014122041,100022001040322,102104402000040,110020030024004,102112204131410,102324000240024],
+        1010222134200140: [101040010311213,103001101422010,102014400223314,111012340040202,103242404020222,100103020004000,101414220302220,102100411121420,100112304000043,111403422104410],
+        1040220210344241: [110021002130201,111302202204022,100120231204012,103002011422011,102201411002430,101023114001014,100000110120224,100002100122314,103240010101410,112110001102000],
+        1012013102314000: [110240301111040,111123014100000,101042230304321,110011020002013,114200000003241,103103404004112,100200201000403,112142011101404,100110120023012,101042044010040],
+        1003020000201402: [101403014020203,100402004300002,110003032000041,102143211343014,100112000410320,114010340043300,110030124410000,110124044400220,102111010200000,103002110114402],
+        220120243041121: [111122010010414,102040404041112,114140030222402,103331304032010,100121311021322,112301120200041,111003302200334,101000200321321,102440000234100,103030100144420],
+        100011310002320: [101041301000320,110311142023232,100210104322421,110100001200142,101001021020212,102401001110000,100022340021012,102002001133122,100040020103014,111131044101141],
+        100120221000001: [100010231040220,121013200410000,101320200340302,110012000122313,101022200313121,110100300030021,110000121321012,103242034022234,114111300220301,103014441410102],
+        200220202301120: [111311002203000,103301000140120,101033220300404,101440410300202,110013002101010,114021104100043,114401020031002,114020204104030,103243024023000,103232031411102],
+        104430000240433: [100010241020042,110301222101042,112000303004042,110113014221020,112003204004010,101202024013411,101100401103020,101432320330300,103440004000121,100430304100000],
+        204131021421012: [101211320300031,112230144011204,114100102340202,101044214000034,103103014000220,110321202023302,110100110020132,111010224112310,101000320324202,103000000102202],
+        111033003003001: [114011420030140,413240313440033,1020020141223341,1040200130322041,1300232010010331,1030422101440422,104140041004101,121421403104300,120023100030211,411011042301123],
+        1000213304012212: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,112021004003303,110331012224112,114100222310230,100011120000004,114131002342130],
+        1001201221030030: [101102400330110,112030001120440,112000014021000,101024014004200,102001004011002,111003000020010,110432120402013,110213022123233,112230002033202,101231220303431],
+        340020400130202: [110040022130003,100030430422242,101120014204000,100100014230110,111002132202012,110201004241002,101000131142230,112001204023241,111311120003133,114022024012213],
+        202121222001123: [111100214100402,110021130004103,114041302322043,103204324031320,112430002022342,111222012243120,111103110022000,100241004324000,111102310012110,103200011404234],
+        302202022000201: [110102000401214,100100111044040,102120230212201,101230001020030,100013014102414,100014200010022,101004204210100,114031424101013,102011001320032,101000101002401],
+        242212000000112: [100010020101222,101222104010140,102304244110431,101012400301024,101223214040013,102421204023110,100011000201002,102004230222000,102034200222100,101010121032041],
+        101222002421002: [110420020103322,112400204042221,110400431001201,100030101232000,103122404000100,101140030330020,102330021100410,110432100401100,111102012241200,111032004402102],
+        120010214010021: [140203123020300,114010230023434,144203403221310,141000201412111,110004030120020,100332121000004,102301014204000,112040314000200,114210414000324,103122201420410],
+        1121000310412032: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102141212000200,102042000222002,114402104142102],
+        1140202000411022: [110212022124220,100003100410042,100222034340301,101440044041401,102130124000000,100032310000111,101121221022304,100101101020300,102113131343200,100444030022201],
+        100203040101433: [110104112010103,111102004100101,102202414041044,102140014001101,102021100220101,100230120001003,114000040010421,112042110220004,112203221102231,114022400020320],
+        110012114220400: [100242024100001,110410021002000,112042012000041,100020034311000,100001241033300,100024211212040,114300024031112,102000000222030,100301224022420,102331201001312],
+        1141100012310001: [102111040210242,114110000002430,111220014133002,100424220032043,114013422300032,100131414303044,110101101120302,100040201030342,101012201030310,112032220240044],
+        122000414221301: [110011110144000,114402014112002,140400400201014,102340040222321,100004101020200,121022000104032,102402040200201,111041212200040,110013004410001,120221112100202],
+        1410232202140101: [100023421041402,102120031140142,101010224000130,100210020410010,101000414002041,114034422302101,102322004112023,100222044100141,100020140002030,100023401221342],
+        300201321024400: [100102224234002,110400444243022,110131001002021,203201100012000,122001000320022],
+        114210100240102: [100012341220120,114010144022003,102301104110010,103031220102401,114100242200433,101420321010000,110133002013103,100002101020002,100031200102014,100101004301013],
+        1020420002111003: [103244320114100,100032011000241,102311011000014,112031121113040,101010300300110,112044414003133],
+        110021300121042: [102102000233342,103302220110131,110100111121002],
+        331333440004000: [100400102201130,100000000112010,111011424410402],
+        1412300220000021: [114201010001201,100030024300201,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100,110012404201130,112221002032400],
+        120304121003123: [100042320001030,110024001010110,100100014300230,102043104010014,100001004300242,111120044100110,102200201110443,114240314000100,101002411030000,102002324011002],
+        1101001030310020: [103020031403100,102200401111200,114003104031111,114000044020204,100102020411200,114200302341234,103002110100200,114420002322003,103202430100244,102302331003300],
+        200302221220221: [102011214000304,102202000200010,100042010200121,100004300100000,101010001000231,102340031103401,103101010110042,110422302110041,114031100030401,110214014241404],
+        1100010401123032: [100011004343022,110401140004202,110040002034100,102402330230011,110432242020141,102110334020204,103200001420012,102120020230022,103102400214410,100232300001102],
+        102042210123102: [102422114040010,100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,102020004001311,100301020420101,102002202000000],
+        1003020040020124: [101020414010211,101120204002140,101142004000232,100040020201004,102000034000000,112400200201000,112002112002220,100012304300004,110402030400142,100400320013200],
+        220133412111101: [102103411410211,114142204000011],
+        1120402011102401: [102002040220110,101010201030113,114012012300010,102141220210212,102232004040004,111202024134001,111302120011012,100002314210021,103101031440430,102310141002001],
+        130001020112003: [110401410402040,100020211001002,112012000223204,101131001100412,100000121220100,114031120043120,110023214202401,110232202123140,110022040430124,101442404020304],
+        102120132020100: [100010401042400,103000204010112,102041400222231,101404001011032,114121224001011,100204200433412,103430100132341,100400040020412,110340242204300,113013410103100],
+        100001110111332: [110100202042123,102222004033120,110110001002120,103000301410200,101100111110312,114400320003004,113000310120101,110122101320110,123313001421440,103421301203240],
+        213200113002004: [110311011200000,100120100400303,110202202032022,103204021411022,100101020400000,113112010233312,101104020320044,112004200210302,103213100102030,111000304400002],
+        112400202412040: [114013342210210,112430012022003,100102204230412,101000041144313,110141012040443,102200001300021,100123020000002,112020202302001,110203321302023,111114002220124],
+        100002000000041: [100024000110221,100110020031042,101301014221122,110422102110221,114220040000201,102102204022310,111004100022110,103030040121410,114040210022000,100404400013222],
+        101000002402020: [1010400230221020,103034010121101,102302200210010,102340120222440,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122],
+        1000420020040022: [100021330000403,102004420240202,101302040341100,110040000001400,112101400230241,102110424004111,114100020221400,112020102003000,101003010300000,101020014210000],
+        220120002330020: [111000000010022,102040001123104,112110001103200,112044010213042,100400100013220,114300202300030,103401140121121,112100122010004,100100240010030,110010214201300],
+        1010201214230102: [102431111110001,1003002030122040,1320124301012211],
+        1122120421000400: [100020300200110,102342110212020,100024024200032,221123404200214,100021024100301,1101210010010223,1300004102024404,100000241033100,100421001000020,1300102043130042],
+        1010001010132001: [100002100100320,102024401440202,102110021342213,103200210100110,102440031411200,100023014340130,114214034100221,114202024111304,102200204021004,100113210103120],
+        1002000330130202: [103001111221030,110042400130000,111200020004203,104101201240100,102301112004021,110000011012202,100201230412211,101301000314000,111010002110212,111121022221002],
+        1031020030110320: [102010424000101,100300121000420,100402431014100,112202012030100,100043300401302,114003114024220,100041221020214,102103224022010,114020012301024,103021041420400],
+        132203220040210: [103101200221334,114021000012310,102003040210002,110041001300210,100100304301220,103200004030010,100400414300130,100400231000200,110332030011233,114000210010231],
+        221030033040112: [120130001004000,102120140212001,110102030010210,102220211120002,101400104042212,100000021022400,1003022312322100,102001244001224,103441112000230,100010030100022],
+        1243240300002241: [111100100012010,100001021033204,103014201420321,100110414302000,100000001040200,100011204240002,103004211403213,110110111000001,114002100021033,200003202003412],
+        322013114113424: [100100000422320,102100012002000,102233200213120,114200302333000,101113114202020,111100104100422,101000004222120,103241200114201,102212104041220,112001024003224],
+        1400204401220400: [100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010,100004001000211,114230112330402],
+        1020022211011041: [111104102242110,100002200410230,100044010200300,102000021444112,100003010413400,103334120114003,110112131124012,102330104110220,102102002004104,102113101342120],
+        130104321111210: [103244320114100,100032011000241,102311011000014,101010300300110,112044414003133,112031121113040],
+        1210400010032000: [102143124001400,100011011020440,101002121000111,114023314013200,100000201024213,114003422304142,111001404112102,102010201122000,114011042300202,101400031014311],
+        322320233210422: [100003121032014,114000030020101,100003421042112,114240004110231,100030024102010],
+        202023221104042: [102101324130010,102140000212141,101440004042202,102424114020143,100100204101010,102114020210202,101200200302210,111141312211004,102020014003003,100020024212001],
+        100212202241102: [102140411342420,103243024040441,110021014412440,102020004000301,101031101024100,112000210242204,102201022000411,114403014112210,100100224031000,103111001212300],
+        112220201012110: [102002000221000,100011224100020,102110010202100,101104410330240,100001040413220,102140201410013,103220204033101,102101224000200,102100321340322,103023020120203],
+        1001000230030403: [114200212322001,100401210020002,100402042200000,110001440041003,100010111022102,100220300410430,101402010301000,100000220111021,101024201114010,102412220200003],
+        1200400421002402: [112001312001002,114013314033010,103044111423021,111301002202012,102010010220020,101000021142411,102000140242401,101014101111340,110020301121011,110234044402320],
+        1002102000030214: [111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,102410220200004,102100211340043,103443104001332,112100311104022],
+        112401003010120: [102120001343001,100112004101222,100030001041404,101440420301210,103043011400000,102100021410201,100004231022202,114100210002313,112002002000201,110140010032040],
+        1042300202221004: [112032040234431,101020004000000,101004310324302,100120040400011,100214044220201,110410002020200,110100200400200,100124021201021,100200111001432,100200044121414],
+        1001100010200123: [111423000022420,100102224234002,140102120200000,110400444243022,110131001002021,203201100012000,122001000320022,121104330112000],
+        1004001122104010: [103110021442200,102132400232131,100114234102203,112221200410000,114023224010002,110020320412002,114400112311040,100104214302300,100300301002020,100422140030210],
+        101042432400310: [112200004010400,102011121102202],
+        1101020311341010: [114220040000201,111040032200021,100404400013222,110012130410040,102241044033231,112201010203210,100000214310412,103042320101230,103004004001222,112410040200202],
+        130200001130230: [104100012102004,110021232000021,100401241014100,110301322104142,100001140000010,102420020204200,110033002000020,110343014421300,102100110230303,110302222022010],
+        1121211032002001: [102001000212142,114121000002140,114020002303212,102303110220130,102223231121242,102103132002023,100024121030022,100124120011100,100020004300123,114003004031430],
+        131001204134010: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1022004103234130],
+        1102210040114000: [101444024041143,114121002310100,103020001400040,101023020301100,110200332041001,114004020010203,102100221341001,100040004304002,103204321414213,100012214302010],
+        1101121321400020: [110104112010103,111102004100101,100122004300410,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231],
+        1010024100204040: [111030212113431,102001111011201,110044320441241,102233034000002,110410122010102,101122404022022,110311110410340,112101202012010,114240004000000,102300104110220],
+        1102003334203204: [100143114304004,100100101041214,100101201003011,103101000121031,114004012302010,103101024001202,102200300234001,110433104224034,114214012341203,100220011004202],
+        241020003101021: [102100012000020,101031201001231,102000010202042,103012240110400,110202421203200,103012220110230,102101320312141,100120421004010,112230124010202,110002401320100],
+        1014010040004114: [110104231221040,100102000010243,112410034040040,103101000100022,103000300120001,112300042020334,110001212010040,112112122012022,112030010222033,112003120220010],
+        133012010030010: [111041004113300,100011144312020,103110120210013,100020221040231,1012220402104110,103012004034001,102001410221023,101010111034000,101020224001010,103021224040441],
+        124021130240230: [102203011120021,100401140034220,102103122004211,103022230124332,101242004043300,102102131340404,102420041111041,112004312310301,100040121030000,102000404003020],
+        112203012002212: [100200004301323,110010030440201,110041002130210,110020004414024,114340312301134,100031220121003,114310242320310,101100001102230,114302102300200,111042012220110],
+        100200213010000: [101233021020110,101300120313040,101102024000200,100021031221022,112032021110403,100210104220004,100010314203131,110011022120011,101000101001021,100241330432204],
+        1101100102101012: [110303120102044,101022040322021,102042100242012,110201310010120,102100201400021,101113031012041,114413012313200,111234024134400,102011011131431,100021420122102],
+        1032103100013002: [101000104002203,100000121024021,102101104000212,110243310101220,102002304010024,112101002304200,100000130122022,112002002310420,101300040312022,101424020300230],
+        1030001004000220: [102010040210212,104400301202200,140230300211231,100030010000110],
+        1112102112340041: [101030001001022,102030001412241,101001204010220,100114230020141,102302141002440,111320210000113,103204101404121,101412210330002,102100020210143,100142120100230],
+        1002312203011014: [100114234102203,110020320412002,100231124320130,103040424010400,112203010200014,114400444140020,114203004113000,101141111100022,100000404100021,103132221442102],
+        1120042002003200: [100001404102020],
+        1400021120440312: [102210020240030,121401221221000,110020000010044,110111044402003,114300410001304,110021011310043,1010030200302021],
+        110114000410013: [100020220420321,100120004300002,101000310140030,110302010102310],
+        1113210300210202: [112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,101002024000400,102202031002304,102240231110222],
+        200000030001242: [110100030123401,100110014103210,102013130223020,101000011000041,104100302102030,103200030110000,110102202013213,110202120004000,110000242104040,114000444100400],
+        133214410010320: [110034300021014,114400112314022,100112440013034,100041001211002,114200134110042,104104112101440,102300010242203,100204304122112,110011230001023,101233320302120],
+        1043042210004200: [101001204211221,100231411002211,114240210000130,111240000001101,111202000003000,114100024001310,101043021124401,112030012300122,112012020241224,100000404100023],
+        102240003042103: [112100124023402,101020044011003,100002414210010,102242204040102,100021014100124,100122040012210,101020104000001,103013200120113,101040000300110,110042141214302],
+        1420034221310000: [111200140000402,100134120420201,101234100301031,100210304340400,102201032021231,111200332222140,111201314412204,102000200204141,103220100102140,103041130110112],
+        130021040301112: [110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,100010101020023,102000221442214,102040041320010],
+        1101404040020132: [102042114010041,100020000022000,102223001120110,114010110022103,101443204042201,112113224002200,110020100120103,111320302200414,110212400000102,112002010201042],
+        244021041420102: [102424204043100,100300211000020,101410401010030,103240001403000,103044004010022,100042034202031,112301032022414,102103100310300,102012014002001,112002014000112],
+        321142410244003: [100222004320102,100110004103122,103020200141000,102414034040100,103031300144042,100120010421220,100000201041300,100000111034100,114011200003102,103132114002002],
+        1220040220124203: [101011004212201,110032022002020,100214230430124,103031234000122,100400110020244,110103341120422,102044021101411,101100104002023,103230011412301,101042001021012],
+        1022003012223042: [100034100023401,100320221002000,114203022320020,110140042002031,100140214101212,110120021300003,102220202001002,111200104424220,110141041304241,110012000002021],
+        240113320121400: [110230231300100,102010424000101,100300121000420,100402431014100,100100001220400,101423100300002,103111300102020,112202012030100,110300011202224,100043300401302],
+        1022200104244200: [102100304000010,101240100304114,102332320243001,110014231333243,110022114410310,114003040042312,110000040022323,110201400000100,110400204221003,112000000241102],
+        110443022100300: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,102042411104200,102321410240300,100021014100124,100130244302034,100122040012210],
+        1032001114400430: [103342021400021,100102004300104,101020004011302,103004011400313,102300021103201,110010140011021,120131201313314,100121020100210,110002340022120,110030012103030],
+        1003020021101200: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,110100034200300,100401201010220,102100204000234,100211120140002,102043221012112],
+        110100001021130: [103044010120003,100142011022211,101000401032212,103133031440020,100110021040020,102300121000004,114000242303001,102021111411014,103003101400121,114210002324000],
+        1200011003200002: [110012000141104,140300020110000,100003301030120,100101004230030,103044004034040,102412140201410,114034000012210,100341231000131,102200414042021,102021112004011],
+        1022130000304402: [102010040210212,111120432100010,102012201103000,113223002430413,140230300211231,103010140000114,111113002242010,103122200123301,114021034100241,114231004000010],
+        100002020202212: [103301201402204,102401121113302,100021020124002,111201210000103,100101101010100,101320040302031,114010102300010,114042014014024,102321044112101,102014040242202],
+        1132212040101333: [101342300314204,114104200220022,100021221021201,110001244204302,102010244010000,103003204011330,114200034110031,114423002314000,114040002210432,103314044033003],
+        211003220221232: [100002100100210,102420424042020,100010001032223,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200],
+        101102000000000: [100031034311401,100023210021210,102100104000203,110200101200402,100000140100020,102021201410011,103211014030010,100034124101023,111010024402022,102400004021004],
+        1010001101200102: [114031022302044,102031011441221,114103020221100,102012030213014,102003320200411,102002024000132,101044001032114,114430412322343,110100331003020,110040000022001],
+        1402103200020020: [102000001322140,100002230124133,110030411202403,102001104000101,100042114342002,100432101014010,110311102100000,101000030310000,111020104123120,102314144114220],
+        1120101011010012: [103210304032003,102130224131022,112011220222001,103110100210212,103214211400431,112432002020302,114220432322310,101242300302413,102140011343010,112004321121013],
+        1043240403400231: [110232022123020,100002004303100,110130010102101,103140044032100,100010240101221,111000122201420,102100010213413,104134121240044,101024011034002,102000041101100],
+        140201021040010: [103024100141200,102003304010020,102030004000432,112000000221030,114120122310211,101000001030232,110423144244320,102034421103014,111302110011020,100004001030201],
+        1000432101204140: [102400014020002,102102144002200,114010014121300,101301414220012,110000410030114,103100220110400,102212431101040,110204031300403,110424110004001,100102224031002],
+        240124203010001: [111000122201420,104134121240044,103000300124010,102430010202411,102100241341002,102414000204201,100100001040011,100002221040242,100001301020220,103000120100410],
+        100024432022020: [100001004104043,101200000304000,102220011110041,112014402034232,114222422332100,102000000211031,102110000210220,114333212323001,111303034134331,103143121442031],
+        100140020321111: [100413011000000,103234101420113,210330042103020,103202004031314,422202100011300,102021211440022,100024101020044,103140024002140,101004224000300,100111214302000],
+        1120002012134340: [100022001030013,102010020244010,102100300210133,114444200000122,102100031340024,102233114003301,114401200002300,111000320303042,100024224200320,142014000003120],
+        1000000100030420: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        1100110211123100: [110013001010410,103042020144300,101200004202030,101100011200342,111310324120120,102000021021313,110100201320201,111010402100120],
+        1412021002132222: [112113214020100,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004],
+        1140000100020010: [112020104001300,101400110300032,110032412204130,100101004300200,111032414402324,102424040202123,101120244000002,102110024001402,101300000340401,104240102023211],
+        1000420040110202: [100030100410121],
+        123304123124130: [101300300230001,140302100211100,100023404104311,120020400211102,120010201002204,100000011100100,120300312102002,100240221002021,112120100423020,110041140002200],
+        301010323000012: [103001111221030,104101201240100,102301112004021,110000011012202,100201230412211,111010002110212,111121022221002,102000020241101,112311000204002,111112124402010],
+        120133212323431: [102013010221140],
+        142040121101031: [110222410000021,102030004002133,110002122002302,102300301000100,100224300411140,112211402032230,101140301101104,100441431010310,102040241133000,111023014402302],
+        121300011104241: [102101222000102,100113004302233,101022204002023,100113040003021,103400311210111,110123012044100,110140211201422,101021304003002,112142010234322,111201012201003],
+        1012120002321010: [100421231010141,110141420123113,110222121311112,100200041000012,110221022034121,110220200100234,103200121201441,102200420232102,111001204110001,111130022243041],
+        1020000010240412: [100204210031132,100022444100030,103310104021204,102120214130021,101201000311021,101022044001032,100020204104010,110300112001013,100021000104412,114002222301143],
+        102102400234012: [100200011001220,111202014132111,100003141022321,110201434240143,111030044110010,110041304201404,100040211022000,114000134102201,100420104301012,102110001401111],
+        1000210211012130: [110300202021130,101300231002120,103400104001022,102212200313103,100240020430431,100202004320010,103021310002011,102101044000040,103010030100210,101011231024200],
+        1124320210301021: [102022004012201,101010241003223,100000024210130,102034221103124,100014030200221,100020134212021,112001120220130,110204314402021,102102230203330,101001104003130],
+        112021220414203: [102223111000042,100004420014012,102240210240022,102320200221110,101040401032021,114200004110030,111102324104110,102024124011010,102000324013042,100030124212213],
+        1100310222233021: [101242011000124,100202340430142,114420242311240,110141001301302,101200200300310,101011000320010,102020004000040,114001202300211,102110201342301,102330131101200],
+        104301202010341: [110320442100100,103022421400100,114422000000001,111201310013231,100002011024422,102141044002021,103021101430300,101011200324311,102100041341103,112400002021310],
+        1412002220011020: [101020024212042,100041204212120,102113110210240,100410110420202,112423424042102,100320431000002,411200101402221,100120214230002,103204200103440,100210004104001],
+        200021433001003: [112023400202302,101203440304221,100031001030010,110021202000201,100100304002210,110200100000200,101001000322100,114143412342040,100110141011200,110414101140240],
+        1121022332003204: [102023210204300,100130101023140,100141314304233,110000004422320,100021304210300,101012341111024,100033104212020,103132204000234,100020001044140,102041014010103],
+        304020020201411: [114000014014332,110420104221220,103041204010000,114030304122412,101014424224002,100023041030400,114040002210003,102014011102400,100400002200044,110004400412002],
+        221000204222230: [110000121222112,112410112010214,101424410302410,102201011123104,114022004100430,102300000242022,112204022021221,110414130001220,100014001020030,110231000000102],
+        240010043343201: [110400040000210,110044002100020,112010010241211,110020401212010,100300020140110,102041321123031,112100202011301,112124300200300,110002204204002,100200410430212],
+        141100040031300: [103104401244021,112031202003020,104114400011000,140402143000011,100210134104040,110422001144121,110000031031240,102110224004010,100022024300010,101142424001012],
+        1031440241024040: [100000001220044,102022200220022,102042031102112,102140114001021,102410111110002,100101041040330,102000100210400,114102302311211,114034400040402,103021004022022],
+        1031002140030101: [100200400430003,114420102323300,110404122110112,110403010000304,114100040214000,101210021021243,102412044040011,100140024230240,101010200320244,102214000210013],
+        113011120210100: [100114004100001,114102300004024,112102201102030,103222244003021,102420011111224,103001204002010,100340114211043,110232020002221,100033001220020,114233002340141],
+        1000422421400200: [103301210142043,101110044200100,102411000200000,110414300030001,100030020011022,100400014321101,114100122342002,111202012222402,112012020230301,100010101020023],
+        1104233101302044: [100044004100240,102011101321222,101121301100014,102010200213332,110010120042000,100210001002120,101000004211110,100402020013110,112004000213042,110113030403241],
+        1010220030200112: [112141014003133,101442404002102,100020100002001,103203210100011,114301102300421,110100101240201,110200340000130,100021414314013,102000041101120,100313104014220],
+        1120100000144413: [101221020011201,112310132020030,101101401020424,114030220011120,110020442001124,100011101011002,112002110240403,100100101220114,102040101121143,100010021211303],
+        1023120012001201: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,102000220220104,103020004011414,103310111402022,103110114000220],
+        1102202003002400: [112222002021104,110121112012011,101400401012014,100213001002313,110020100004110,110200310002240,100211024101002,103140404001201,112100122300333,100201444322002],
+        1120102020400021: [111011104401124,102224202023120,103440004000101,110212000110034,100010221030210,112100010233440,100212321001100,110421000003000,114200412322323,111200212220401],
+        1101120040121004: [103124001420200,100220210034042,101210004011003,114434330000120,103224034003141,100204011000221,114412402323000,100000201032240,100204401004031,101240204232402],
+        200020212112110: [100032041021210,110001041213031,102300324010203,110414300030001,102100142002204,100030020011022,102040011121100,111202012222402,111322234130000,102040041320010],
+        1000120132204040: [102202000201220,102203011120021,101220024041000,114330432320002,112224012020000,100343241000240,112232102030022,101000424210014,102103122004211,103022230124332],
+        201200400021141: [102000020223013,114040102301100,112121032014014,102310111001210,100020241043022,102100121341102,114100304142330,100301024310020,100130010101430,103112000210401],
+        1100110310012002: [100201131000322,100240414222323,110002102230200,100210004030410,102304004110020,100003104302021,114342024030024,100312301000001,102103200312030,102200024024022],
+        101021200224210: [111043000011003,100101004100023,110030000043100,102001211104244,102204004040030,110000104201012,100223021000014,110022001104214,114002020020121,111122322110210],
+        1000202320314100: [102242201000222,101410044020102,101000011032120,114004202210130,100004210412101,102102042002001,102011014010000,101420031011004,102111001341321,100022204300002],
+        123300133122402: [101013400302012,102021021031000,100000201120001],
+        1002140001233123: [110332424431130,110421102023242,110011414201101,110020000440124,114400104140001,111120442100320,114312112320302,111001112202311,100212324104022,100230000410021],
+        1140003043230212: [102422114040010,100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,102020004001311,100101101010100,100301020420101],
+        100100002201001: [100222004320102,100110004103122,102200130202201,103020200141000,102414034040100,100022304302043,103031300144042,100000111034100,103132114002002,100412200002013],
+        1011400002021301: [110332121234200,102020424010200,103320000144300,112141102011002,112133134041003,100002220111210,110104411322230,100000100001342,114112014000241,110002001222020],
+        222102331424320: [102001030224000,110224032120040,100240404100140,100340230424131,110001004210440,101202300303044,111002010001321,102042404001104,103213101421223,114020204020041],
+        203043130041210: [112121214040022,102401221402002,102102011342302,102140200224200,114000402330220,101001244010120,101030224004130,114000010031201,100004020411201,110144100400420],
+        1010113001103001: [100104341010424,103142210104020,111121004103434,112203001103411,100212024121000,100001001033200,102202014042012,100010001032200,100221110101420,102441030231300],
+        1002102022031321: [1000110030001310,100231201410110,112213013124000,1121420100113022,1031104420000230,1001421031214242,110002402134100,101023220340003],
+        103014002001100: [110130314400100,110310034424102,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241],
+        1404110232102111: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        100001000110041: [111200140000402,101234100301031,100210304340400,102201032021231,112020044000400,111200332222140,111201314412204,102000200204141,103220100102140,103041130110112],
+        1012131220110000: [112004001122300,100222100402024,101301124222004,112204220200011,110013202120001,100230040410200,103210004031201,100030300422112,100033001230040,102002000242023],
+        100100010103100: [110241024242442,110021312002040,111101042244210,110124002040002,110444010032242,104132420010010,100001041031013,114212102310100,110300112023012,110224200113042],
+        131210221002110: [100332010141200,110231104241010,100020044100330,100400140020411,102020401120022,114021102203101,103040230101104,112004040221232,100101110400231,110010020014000],
+        1010004112000030: [110033000022043,110100200030100,104412212102010,114102024123030,110132020031210,102340211000200,103044004034040,102300231000210,100020200102220,110414012023214],
+        222224000111400: [102010000213110,114400204120131,114100012340011,100402340020201,114111200034000,111003002142001,103011104010114,100400300013102,103022121401123,111214012220421],
+        1000002134030324: [114120030223400,100340100424220,101202014010412,102320230243132,100311004101130,342003122142040,100243404101011,100102001000010,102322124112422,110024102204001],
+        120041002442220: [114423334140322,102200020202000,102201140211010,114000324101021,100020124304402,110000001044030,112010402310201,114011002303330,102201204030240,114012000020340],
+        1003010040241110: [110212022124220,102130124000000,102010421413322,114002200000421,102113131343200,111210044101201,111100402200230,101020321002002,111123014100000,101042230304321],
+        120030431041010: [100003104342121,100400414321103,110404201113410,110020034203040,100032304202003,101010231112144,111000100003022,100113020400211,100022030414220,103004004012230],
+        1040040000103000: [114040300043111,110203111111000,114010030024204,102010201012014,102041204000002,102323204112320,100402201004014,100420404320101,102123414032304,112401014040034],
+        203200042234321: [114102300004024,112102201102030,103222244003021,102420011111224,100020004300114,100000000413010,110232020002221,110010021200102,102101300311032,102013102002210],
+        222201042020000: [110401004221204,111112000011222,100322444314002,101003301020022,100102431021300,100001030100030,112012004004000,112044204000441,103141100104002,104110100014103],
+        211000020414014: [100120214301000,112013322301200,110400404221001,102100001021000,111121002100432,100210004220021,114104310000040,114202100004011,102010121100324,102000014012243],
+        1103300343030342: [110103341120422,112122024023021,110042022001000,112001204001021,110104112012000,111101220010010,111020004404000],
+        100314221020104: [100121230031032,112000431120410,103042024040104,102304104110001,102000200200301,100104211044110,114241222321321,114021002302020,102313204114304,114013124030022],
+        1013142100012002: [102103001411402,114020012300033,102011201441000,103101000100000,100113410410314,110212424434423,110214002122002,102400024041204,101000014004024,110030021011003],
+        120044110312333: [114120304000212,101211414040000,112000022310414,112010030221031,110012000000201,100001114011131,100102001220101,101021004000020,101010001141222,100221414100030],
+        112231003012013: [102041020220100,114120204000410,100000001020000,102023031321010,102220020201230,114003104100012,114010214013020,112000224000141,102303021004001,102304010242101],
+        330103201034211: [110101210013000,110212214400114,110012101102100,102102304001200,100101434332222,100000014100014,103001001421100,100001000100004,101014424011000,101230011021204],
+        130131334222411: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,110100034200300,100401201010220,102100204000234,100211120140002,1000023402103012],
+        1112210032111001: [101021004214202,100011011020440,102114320203000,101011001103200,114001112300001,114023314013200,102040104000040,114022120040112,100000201024213,114002002300302],
+        1120024002022013: [101042410301221,114201010001201,100030024300201,100020120101000,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100],
+        240012003010211: [112142301101040,101100000330120,101214440300301,101121100332142,112401314040311,102011004013000,111200122222334,102301024113440,100033230420102,111110004402021],
+        1014400100010024: [100100300421022,101204121022310,100342220042002,101012121022204,114022002212232,100212220001141,110012102000311,112422000200003,102010004010020,100000114100022],
+        211303120204401: [111201032220400,114203000004300,112401024044240,100022120412132,100000321031423,110322100104010,114043002302200,101222121020001,102120230230000,100032021041010],
+        1000140140100030: [111200200000232,101200101021000,100101001011114,101430004040203,103122104002013,101020404210020,100001001021002,114200104001010,114040414014202,100000024301031],
+        100100430440030: [101410211021400,100004214100234,103000011400001,114100012313002,110402410002000,102001011442200,100324200110130,100342120144000,102020001440011,100100031003220],
+        100102020004010: [102111211401000,103302040111403,102020001440401,100030240102022,102004004001010,101222000300004,100302004321241,102111432004030,101232101021021,114100220004120],
+        1041000003143012: [103112004030003,103100311424002,103040224000100,114323010000311],
+        1100440001020001: [110102401201204,102400100230000,100212030414010,102031021441200,101200020303202,102020041321410,111340300010010,114120420223002,102013224003020,100002210201212],
+        203000001200131: [102021241321003,103002001401403,103201300110101,110204002121413,100002001042304,102144020210132,100400000020403,103020010100321,110140004200100,100030001220222],
+        1031020030010423: [101024200342211,100230404343341,102202000201212,112000134002211,114200000001130,100001401002220,112001021110124,111410110002320,100010020101230,100120001011321],
+        100201301044400: [112324002020202,100120221021011,101401140300101,100030124210101,103220200100320,101030004004303,114000020034200,100010001040020,114203224111020,102003201440022],
+        144040403114103: [110040022130003,100030430422242,101120014204000,110014300001402,100100014230110,110201004241002,101000131142230,100104044230000,114022024012213],
+        102000001110022: [100140200020242,100004120021240,100131101201030,111201022223123,100400300134001,110001020030002,111421014442003,100100244002230,101010001000241,110030010140000],
+        100003024400040: [102103114000024,100014011034234,100000324303120,100221200002204,101102120222000,400200234320200,101041200320322,100020400410010,110200320000000,121112122000000],
+        110210422300200: [100003031030034,101001044211204,100000140100020,103001324000110,100002014200021,111010024402022,114000030014400,101013404000020],
+        140031110310140: [112210010201431,103100024002220,103303000112122,114003100020203,100320104321221,104210021140401,100112101024230,102042030211303,101000400301224,102110214004300],
+        110210242021141: [101032104014144,102120214004010,100022041030000,110100104403201,102142140313104,102000024044003,110410020403024,102214204040420,112412300200103,100010430202422],
+        1403130023000010: [100042301001230,110002240134040,100020200023001,100040014310020,114000014100101,110031324200020,102100211124411,112202304002043,101110310331140,101000201000000],
+        1040331203010000: [111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,102100211340043,101422214042012,103443104001332,112100311104022],
+        114312430124100: [114020000011320,100021314202402,103142211442311,100323140143012,100004411033203,101440400302320,101204004040140,102111021022024,114231324103240,100401041011000],
+        300000021402122: [102211034013100,100044000201201,114241110000102,100010214313120,112040022002231,114324302302212,114401322310000,101110404001000,100212040003321,100000000101012],
+        1123102221001201: [100003030003020,110010302000004,110410000104042,100014014203233,111422100034314,100102001013034,100001014100021,100000040413000,100001034310012,102030414003000],
+        1010231200000222: [110200100002031,101420310301020,100020330100100,1002443410030003,111103224103001,102100141413100,102110021342213,112002310211210,100010031020102,100011401031000],
+        202012120000200: [101002024223013,111000340012231,102000114002003,102103401440120,114300140000220,102110032004232,110040002120031,114213222324300,102322030240100,100402000020410],
+        102300030411011: [114002104014300,102000311102212,102010004040000,102230130203001,112433112020200,112301312020123,103313404030100,101400201014000,102000201101332,102231041120104],
+        1101212121001223: [110202012100020,102303010241010,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144],
+        1213210022420221: [102020010203200,110130201302200,103041021430301,114000402211404,101000100302003,110343042000030,111302204120210,102202031103300,100203211002212,114140022340203],
+        1042420002220300: [111120230020122,102140000212141,114301000000002,112124310203104,100113324103000,102424114020143,102001000221124,102023021321020,114040204014042,100040401020413],
+        201204220210010: [110241142024233,110441140102024,100413311002132,110210301200101,110400241240242,102200001002100,102210101121104,114443304123123,110023102103200,102400140230123],
+        102300222300301: [100322000143001,102013021131042,102201000200312,112022110220022,100020100100100,102004021444000,110320002002201,113033001030411,100010024102311,102200304033030],
+        1030011214001012: [100111011011011,100030040101021,114014112300100,114030034013101,102400124020001,100102224234101,101013004001421,103000014011004,102010321411140,100031120413224],
+        1402031003014021: [100310304310342,100010041031020,100042400001023,102010020223010,112402000200101,100020201221000,114200014114313,101400201100022,101010020301243,111010130022401],
+        1000003010012100: [110000002133140,101233341022410,114100012313002,102001011442200,101004202403121,100304320140012,100200034020100,103222001420142,100142104304130,110100000100000],
+        101200410111314: [100422000031421,100002201031130,100102000010243,100024334203210,104301222102024,112300042020334,111244034102140,102104220213122,103012200100120,110402000100440],
+        220120020013214: [114120430002002,114033300041020,100000100120300,100031021033010,114011404103142,114041002212302,100120004300001,100202121000302,100212024322044,114101024122320],
+        1123204010400001: [102300111002202,100241001003002,111310004122000,101221000312044,102030300224002,112010022000304,110323142102300,104124002103241,101002211110002,102311031104220],
+        1010221233021202: [103000004012003,112303041103203,102101024022111,102020231440400,114030304122412,102121104130242,100112011040312,102014011102400,100020410124020,101013200321014],
+        1102314300203012: [102101324130010,102140000212141,102424114020143,102114020210202,114040204014042,101200200302210,102434211400021,100001300100302,102102001341000,114011012302220],
+        201121134043002: [110303120102044,101022040322021,110201310010120,100400004303004,110002022030224,114413012313200,111234024134400,102011011131431,100204011002001,102013301320044],
+        220200301004411: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,103100024002220,103303000112122,102100014132110],
+        1020342312020232: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,112021004003303,110331012224112,114100222310230,100011120000004,114131002342130],
+        1024030040200120: [110010000111020,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101,111243002222100],
+        1011010030224042: [111240220002100,110030344201413,101001014001021,102304244110431,100011000201002,100103224301304,114000100020200,102004230222000,102100322001021,102102100231000],
+        1120401010212100: [100104024303320,114422004110130,112210132031001,102010310213001,102012030213014,114021114023402,100210004343102,102021221120401,110031200023240,114242312322020],
+        201140001111221: [102001404012100,102122214131011,114223204100010,111041202200140,100023031000024,114021040010311,100020004101012,102402000201011,102311011000200,114220000000024],
+        101320021031040: [102110230230004,102123040212103,102020034010140,103102010211110,100021000122000,112130002012100,112203420410100,102000011413043,100020404100041,101004210301301],
+        100230012010002: [103031421401120,100414200432002,103421020124110,100404202201012,112000100221202,112422002024102,100111041000200,100200004102020,101121020320133,100300014213032],
+        104102000001231: [110012031011302,100212030412303,111200104411001,101002104002020,100300304101302,102121200313040,100300021202320,111201004131300,111311434120141,100101041000013],
+        100001412001010: [100100100422103,110020134410001,100300020142022,102101002004300,102043001021033,101210211022100,110421202110000,114100202200202,110004100002122,100100121010222],
+        220423221121222: [100000104210240,101101200311102,112401402023020,103142104001331,100200204123011,103031120143010,110020211221100,100101130101111,103232020100412,112000210230234],
+        203221200211100: [110300000011120,100000221020004,101213020304210,103221200100302,100424444303100,100031421024030,102204101123101,114021204031202,111011110004013,102103000214000],
+        202202201101120: [112113214020100,103300344012201,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,101001010300404,100201104224131,103340004020422],
+        1130443121020041: [102210100313100,102223111000042,102240210240022,102320200221110,101040401032021,114200004110030,101242004043300,111102324104110,102000324013042,100030124212213],
+        1110042001101230: [100020020012200,102300111002202,102002114010040,100404010012404,102030300224002,112010022000304,100412414102410,100212341201044,114101042313041,103002024002220],
+        111320000100042: [101100011102402,103102041440324,100002020122000,103001031403201,112110032304211,110033020003012,110042234410000,102424111401024,110000400030340,110020004203230],
+        211132000231102: [100410200433034,114000100012241,112142210422404,102402404004240,134010224314220,120120103004400,100430114103130,110002202000200,100020314310022,101440120022100],
+        1430000024201413: [100013204331410,101024000321043,101000001031042,110402040103431,101410101102110,114403334142212,100100004102234,112424004044002,110301330044403,100010100010030],
+        200244430030204: [102334021001211,100001100411302,100000001024010,100111421040321,102023110221011,100000014202111,111310000002001,103131004000400,102000000222333,103020004011302],
+        103120242040010: [100000304303100,112030202301321,110203004210000,101010140313340,110011002002402,111010200000330,111210000000103,111113002113030,112111012310412,103200321204100],
+        1002120031224022: [111000100012002,111102010012102,111300030012334,112000021130124,114440430030032,114300232301422,100002124340103,100020211021110,102412140201410,114000010012402],
+        1402010001001000: [102010221411043,101020004011302,114212100023341,111200112221320,102011200242200,102300021103201,114244100003024,102410101112322,102121041340000,110010140011021],
+        113030102034301: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        1100030004343100: [101233021020110,101300120313040,100021031221022,101200031021100,114210004110002,112032021110403,100210104220004,112201024001343,114402022310200,114421304140420],
+        100040113302002: [114030110041300,103132424000410,112013102004422,100400220013232,110010002000100],
+        1104444012104031: [112324002020202,100012400101400,111242212222022,102022411100012,100020100100300,100001210102104,101401140300101,101242000300000,103220200100320,101030004004303],
+        303200040203400: [101042410301221,110432300102000,100102024100020,100011004102400,110040344210011,100003320401100,100020120101000,100003200020112,112143144020012,103231224012042],
+        142100410211030: [110014002132100,104122202100000,103100304000131,110011212102422,100030100104111,100312021000201,102004010202104,114100024120001,100001122210110,102000110220120],
+        122010302210402: [100413111001202,144041310003010,101201204010202,101000001002242,112342411130020,113013200130020,114122414000301,110201304401200,111032232230200,111003200003301],
+        243114112111101: [102104201320013,100040404102010,111010144124143,110000022203101,103011414001001,1140000003002130,102102221400210,103000330141120,100021214103400,141112101002100],
+        102100031100120: [100003031030034,101001044211204,100000140100020,100002014200021,103211014030010,111010024402022,101013404000020],
+        1014042233020300: [100002221021122,101404410301101,102122111412001,101000141110130,110001041100000,110311404430222,110103202210414,102030100200300,100000020002303,110004031201142],
+        1140100032112103: [102002112041034,112401144042000,101222044204000,112430220200100,101004101230410,110003122001030,111100202220222,101202014042010,100123311000030,100210011224040],
+        1004100120001021: [102211230244321,112121214040022,100004004100120,100041014210020,114204120210000,100000030100102,101012400320002,112002100233204,103303001400240,102200121300400],
+        1001401100141010: [110011232100412,110020120040121,110000100022040,111021030042411,110100100031014,110131011000142,102401010202301,100201134320102,110000302122001,110202012020000],
+        100030020401100: [101214104041040,110104231221040,102012204010044,103101000100022,100020141044111,114200000002420,110401440001204,100042110122000,101021021002110,100142224102102],
+        1004233001320021: [100021304300200,100020020102201,102111400210040,102023001440404,101023014004000,100020010101201,110412042010210,100100214102200,102103000233434,101000001032020],
+        220024422100202: [110200002111002,100201131000322,110141400010211,112002040210000,100020300000010,114030014101223,110002102230200,110223121301222,112441020201421,100013004114001],
+        102030120020020: [100032041021210,110004301222000,110414300030001,100030020011022,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,110104002010100],
+        1200211024001002: [102021241321003,103002001401403,103201300110101,110204002121413,100002001042304,102144020210132,110420040000002,101020011031033,110003040140004,100210030001420],
+        100010220010313: [101012130310043,111303420012131,110141221322023,101422004042000,101243404044201,103002341221402,110010224213240,112012102004004,100000020204240,114423004144120],
+        1144000400000102: [102100111101131,100134111222040,102242241113020,100202404324312,103311300141243,114100122321432,110410304221000,100202101001210,114313344030012,114020010022401],
+        1000203400134202: [102110120202001,112100042301414,110102030023004,102120314034114,112330121130102,110002101101212,111100320023012,110341222103022,102200120230002,100042024300400],
+        1030101404000102: [101032104014144,112102002010331,102120214004010,101132010333413,114114040222210,102140041342000,110222140404112,100022041030000,110040432100110,100402020024213],
+        1000003440110220: [100041200010000,110024021040134,110301001232000,100220010002421,102001201443121,111210240010100,100202421000201,102430001110014,102002101410204,114401230002424],
+        102000212410100: [102020404003432,102110240224014,103103004030401,110213022100021,101224321014333,102322001000202,100030114200201,102204321003224,102214011120002,100011310420210],
+        132110220001012: [111011002200001,104000131220103,100001002213422,100003000004420,100033020410033,101002200300021,110020004414100,101232101020423,103243114031220,110112201000014],
+        102012110001212: [100011444101344,111003100041003,100420241003104,100002100100004,100000031021034,102013011414120,101403044020210,100132004303034,100134004303010,112131021102320],
+        100212404012020: [114400022321400,100100020410000,100030411042022,114304212302401,100031420002140,100000014201221,110200030001040,112022400231120,110002421122102,101004110300011],
+        1101120402220004: [101022014222024,110100120400020,100401024300321,100000201022420,114030000030012,103000011403101,100000010202201,100111404302321,103243014020301,100012024210210],
+        1000034403112000: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100104002224,102100224000210,102020004000014,102310140240012,100014204201000],
+        1000400422220130: [102340221000300,100220124221000,100402002201002,101011014002032,102104101122100,102423114022101,101131201110300,112002010221020,111012030020003,114200404001002],
+        1003013000131344: [102400031401212,114013342210210,112430012022003,100102204230412,110141012040443,114420444142010,102200001300021,100000131232000,100001401222233,110200222120200],
+        1023002142012124: [111304340002030,110102000401214,100100111044040,102024102020000,112003020220120,114022100010000,103400201200000,114021200012000,102120230212201,102040131440020],
+        100013110300030: [100020314101112,100340121001230,100020314311220,101010221000033,102104010203421,100021034210010,112440204040000,114202122320234,101000004210200,100110014231114],
+        102300011233241: [110300324420404,112400230202202],
+        122431414104211: [100131424302300,102104004021010,112033000244420,111011242233002,114302044003120,102320001000230,110014210424201,100202234032222,101422404040210,101430020300303],
+        200204412203200: [100142010410011,102041410242244,102101220214011,114000424102300,102323201000412,102212434110001,102141020210132,112102314020000,100000014200001,114010002304030],
+        104023203101001: [110300000402020,100003034100001,102000010200014,102110402004000,102431400204010,102112042004203,114030100040000,100120431012000,100002024212102,112210204002124],
+        102000001024012: [100012320001320,102000331120104,100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        122021030002101: [100111141004000,100440221001232,114204122330314,101023321002102,100012030122000,101000131030300,100013001030230,103101004000424,100011201042003,103104310211412],
+        100114100020010: [114200212322001,100401210020002,112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,110030222130000,101022440300020,101402010301000],
+        104314042204004: [102302440220001,100104400403240,100020111221020,110010122102321,110002322101200,102220124000003,101020201003002,100230300001042,100311334020020,112400022020023],
+        1023042204100004: [110102401201204,100212030414010,101400004022210,102031021441200,101200020303202,102020041321410,111340300010010,102013224003020,100002210201212,103013020123142],
+        1144300103320031: [102104101340301,110014010012200,110020334420200,103100020210002,100100004230402,102110304020201,110202420004101,102442400231201,103004000112020,100024004103100],
+        221022141003020: [1010400230221020,103034010121101,111320012221132,102302144110440,114140004123122,102143202000400,111020002202333,101321311004010,102110241342210,114122302311011],
+        1010004011140000: [100030324200410,101000001111200,102300404024300,102113200210140,100040041020102,102403031110014,114200020003431,114420142322140,101002200343110,100140004102001],
+        1430010000201220: [110202012100020,102303010241010,102120231343224,111342020011220,100314114322101,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420],
+        1100230021000003: [101221422120021,103300121401234,100122200020013,100400320033201,110011402100202,102331104112002,100004130002301,110121112010004,102020131413423,114132002200241],
+        200040000240113: [104111102100000,110000102100212,110130042014110,100100014100021,114423100002212,100011401040040,111121012212042,100001020002400,112320030202004,110012102130100],
+        200310000000400: [103201411402002,110022000023010,114020302300110,111002100021022,102302120210122,114100032320203,100400300013000,112041210224114,101012000320441,114124414000000],
+        1123010401013302: [110401004221204,111112000011222,100322444314002,101003301020022,100102431021300,100001030100030,112012004004000,112044204000441,103141100104002,104110100014103],
+        1222000410114014: [102200004120034,101000024002230,101422021012014,111001200003214,102100021410210,110012020021204,101001420312100,100022201044101,102200010204000,100031000413030],
+        1030100224102031: [102301031000041,114210002340104,101013224010003,110110131010010,101012104214110,100400122200034,102031004000320,103040001400020,100104224300040,114110400002011],
+        1123000244112000: [101000021010022,100022310120003,112004031122404,114341322301120,100040234212230,102210214110002,100020204103212,100000100104142,100200024301424,100101344302232],
+        220122120201100: [100021044202120,103102420121202,111041104111423,100014030122210,112401000200410,110110120010014,102202210201312,102212444022430,102002000211004,102043100223200],
+        1040104403024010: [100044301030400,111210044410020,111311402221430,111420230003130,100030100423022,112203301101120,111310000013103,101200000302112,100020001031123,100114010111402],
+        100413221011014: [102302200210010,102340120222440,112202000411103,114003344011001,100002301021040,101014201030204,102411201112404,101203001010111,101000314000042,100031201030102],
+        1010023010101424: [112112014020002,100004414100021,110112131124012,102113101342120,102130241400320,114402010000201,114204122330314,100004340100020,102241120242020,100002141021000],
+        1021101030422441: [101301014221122,114110200212210,102102204022310,114040210022000,110012130410040,100104101200201,112201010203210,103042320101230,100020300102123,100120430411222],
+        1412112020400144: [100400210010032,102000000220040,102011211321000,102124210200120,102014024011240,102330021000022,100000021221004,100030201220012,100142244232110,103144000112000],
+        102401001121003: [101221121202421,100044011022224,111042022141200,102022031321021,100442220030040,102034010220333,103321230110010,103014000100413,110411200402042,102030000241013],
+        1032014311200200: [112224111100141,111102214104403,100132004231230,100000030000001,110021340020022,101010001000320,110210020104031,101003204000300,100130334030100,100210301002021],
+        1422230110104012: [102322014113341,101022104001221,110021422000000,101120030330110,110331012224112,101002200301130,100004431210220,103401034002022,100113211221220,102204000232030],
+        241410140000441: [100422314300200,102141410230020,101134224001001,110020001224021,102321234111310,111122222240232,102340004011311,111134002210042,100013014300034,104132120011021],
+        1001020004042102: [110100111221242,132344004001203,114303202300104,114020202201002,102100300233312,111021044400403,102203210201342,111001320002031,101000030312102,114000424010214],
+        224002231100213: [101123210321002,101003010340102,100022024212302,114104002204400,110001010130320,103000001404112,103013331403110,102242114032121,111001442231001,100040000401432],
+        130010421404001: [100000200202012,114404010003320,100013200412401,100141011011032,100010021034000,103132004002020,100000241000002,100000401002031,114030412303102,100430000030122],
+        141000021431412: [100000241033100,114100032340001,102101011400100,102300011002030,100120220000101,102001004000210,100014100420220,102042404432411,1411201002002040,113120400001003],
+        1041011020000020: [110201320000011,110200114241402,112214002024310,102000331322102,100302024101020,110020232003003,101020024001110,101241000301002,114021202300123,103000014002000],
+        101011111204224: [112004202302034,103300004021200,102122214131011,100023031000024,114210400000112,103230134011412,102021021101204,100231020102202,101000134220400,114204204110401],
+        134202231002444: [100122004300410,102000104012232,112400202020003,102000224000011,101212040303123,100021021000101,104240010040022,100011124202310,100030300124130,100001100013110],
+        120101020222413: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102310140240012,100014204201000,102103321411004,100400001001300,114113000004012],
+        1022002022230003: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022,110104422010121],
+        1001021022014111: [111301240010310,101300400310002,102400014040241,101120321040104,100303101000021,111001212232021,110002300420010,102202110230404,112004031112020,100240011003010],
+        221021003242220: [103030411422014,103043334040203,110422201312402,102120131401230,102412044040011,110200302024000,113130020101411,102041210224224,112200030203124,102004020224404],
+        300344100042003: [103044301431001,102101142002021,102010220220022,103211001412040,101004114210003,102202030203203,102213241100111,100022202042210,100402022200030,100201010430000],
+        110100000110224: [100003141040411,101021120323020,114111200034310,102001111412134,101032201032000,102220314010103,112212002031124,112201200414124,100102200102000,100101001013000],
+        203210011000224: [102300041004010,103000140101310,112400104044001,102310204023400,114401010001000,110402112220024,114002310021310,100021401020000,100203310430032,110103011141230],
+        101122034010202: [100201310000404,111110000001400,110213012040120,104124200021020,103100334030202,102434204022012,111204244100232,100130020020401,111301130002040,102211014034100],
+        121300412002000: [114000040010421,112002010220004,103001131403322,102320001000040,102000034013222,102120004134001,102030021100041,103000114012310,103210214042004,114210010022002],
+        103034002010024: [101114101012020,102041111020030,110022001201023,103101124003110,110002001231100,103001101403020,101304320302121,103110034001104,102010010200000,110000001321010],
+        1402210030020210: [110400022010030,100214121000000,102130411411444,110202204213200,110002131200133,102412241111002,100424104302020,114142102344221,103210014003000,100021300411033],
+        1421222110441200: [102301401002404,100232214222204,102012004010000,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        1044000213212102: [114423100001142,100040211022010,100110041021042,110202020004210,102204001123002,102311121001300,114120100220202,102022001130220,101311411021202,100002004240244],
+        1100102114320002: [103004301434100,111322432204020,100003300001101,112120202314224,111321102010100,110141204400012,100010011202403,110102020032300,123000123110000,110030014422103],
+        100200000032003: [100012400101400,111242212222022,100020100100300,101401140300101,101242000300000,114102404120000,102004021442313,100121211012110,102221220204211,100140304103400],
+        320032031014103: [114124404100121,102010200213210,111010002230001,103141010210001,110001010440034,101023111024020,100400400010133,103040204030013,103210004020020,110303202101031],
+        1034001210121010: [100102101000203,100001021030011,102231301122300,100021030100001,103230040101112,102001004000100,100013204210001,111121104100004,100010041032043,102321021000142],
+        100111234400011: [114000044020204,102320000221020,110142020400012,103131420221204,102120141343312,114321114032200,100142011022211,114230344103210,100030020104423,100102011010000],
+        302044400024400: [110041030411301,110001041213031,103301210142043,100002024200142,101110044200100,102411000200000,100400014321101,114100122342002,100010101020023,110033041200104],
+        1434220011212031: [114020420040020,102103401140000],
+        110000211003131: [114121100220011,102010021321412,102400204001110,111034332202000,114020122300100,111010004111121,111214202212323,110102021120400,103304401402003,112002032003101],
+        100001201014102: [111000232113233,100200013102111,100303404100220,131431104100201,101004044212020,123030423110002,102201121303321,101000020340002,110411102112101,103040040100020],
+        1212200412000424: [101204021022220,102100031320041,112141102011002,112133134041003,100000100001342,112102100202040,114112014000241,110002001222020,100020204312204,110200111304014],
+        130022034002403: [102110000203003,100411400030100,102120221120200,114002010040032,100400012201120,110311011330111,102020022000021,102000114010020,102102000312101,100220204342200],
+        140312100301010: [100020004313034,101400120320033,110430030000041,102140411342420,102020004000301,114114204001401,101042214000121,102000121102220,100014300000200,100210130430132],
+        112403301042104: [112224111100141,100040134340044,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110210020104031,102041210224224],
+        1131012304201002: [110131142010001,100002431220022,102100204000022,100312200422101,101020301032322,112002320232203,100310020043043,102211200240102,110004031201104,111010020020434],
+        1000031120010024: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102311120222404,114020404020132,101220111023331],
+        1004010111024112: [102102031320011,100041140201301,102140041342420,102140021410400,103011100120201,102002030240400,100000120202410,102300004110122,102202334040220,101001100320224],
+        1031320101004220: [114213002340022,114400210002021,114201402332241,144200203310100,114211030021301,114030214020000,100044001020100,114022000013011,100001241021321,111232232222210],
+        231000002000301: [101001040340004,101013004002011,101300011002044,112022334022101,101011324004222,103210241422022,114411312312124,103240001403000,102202204040220,102121010212140],
+        1042201120000101: [100220100110400,102403004042342,101024001034211,111122004101222,114020040013100,114000222213021,100000020401302,102103214000210,111001100020413,111301204111233],
+        1404202021310400: [103110020210000,103001010101001,100022141030334,111020142144200,102303001102431,100141334301022,101420200304000,100221111000020,114024102212214,102102000212010],
+        130200230200413: [111302204133040,110300000011120,100000221020004,101213020304210,111020010022310,114011302300101,102420021400002,103221200100302,100424444303100,102201000201101],
+        112343234002101: [110400014223001,102040404010111,101021014224121,111301000000031,103020200123211,112040222311040,114230330212000,102204404111433,100420320030100,114040214101433],
+        100010300103030: [103301244010210,100101031041022,100000240003101,100041234101100,103001220100000,114100000031020,102401024020221,111231012242301,103240404032240,114444004140210],
+        100031200000201: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,104130020011020,101114422122000,102001314013400,114110414140400,114013214010111],
+        132120024321401: [103001024002110,110100012120201,110020204200342,114411200031024,100431200032321,103022034000034,103303031402100,100004214301320,110302004430024,102023301101100],
+        1411211020410042: [103202134021411,102321011102100,102104004000123,100330104310102,101101000331232,103120234000102,114030310030022,100112301021402,114011004123232,114402022314101],
+        100130113001011: [100030231000344,112311011101001,110100124402042,102120404134413,101100200330040,110040212000010,114102124000200,110211202030440,114440012312003,100000001024104],
+        1022301021301303: [100210014322020,114010224101022,102100220210000,100230410112111,100030131042200,101203004042010,114221000210214,101410044041001,102343022000042,1144030041011004],
+        1101004202110100: [102111342001302,100000000413211,102322001000202,100021031020121,102011220212320,100011310420210,100001104100010,110130224402011,112400010200232,112030302300102],
+        1422200102201221: [112230122030224,100110130000123,100200201213011,102030000221134,100210304340400,102201032021231,100010020003310,101042204010110,102000200204141,100022024300010],
+        1003202010101100: [101044120322004,114020204101200,102304021004012,100013031024000,102012014002001,112302412022221,100140014100401,103120021441003,102311441100020,102310010133100],
+        123410031001034: [102302211004320,102043340202001],
+        120103000222300: [130303204002004,114120242312002,102110201402002,123102202010320,114100422341111,103102104003010,102103130200001,121133013031103,110300222020112,101112240323103],
+        1101001210301000: [110202012100020,102000311102212,102303010241010,102230130203001,102021401324232,111222102243400,101004410311232,101201034010420,111220410010144,100001221021031],
+        1000211000121100: [114000034010043,1040014000334201,110220210110004,110221401304401,101310000020110,102220000230020,100111204004442,110420001101321,100212211003002],
+        110101010200040: [102401004021010,102124004023202,110002100012000,100001104210032,114240102322101,110033301230100,110200202122114,100001100400202,102100304000112,101021344000433],
+        1410320003040204: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1020002221310220: [100021214313034,102121111023020,110000212134440,101020134210001,103010020012322,1341322100304120,103002020124010,102120010221204,1000210011101210,124000002040110],
+        1001022200103211: [102123140310122,110101214402023,110400014224001,111000144410222,100040001022000,112204022020043,112110112300112,100410124102101,110222241300101,103222120100140],
+        1103022300121220: [103034010121101,100002301021040,101440004042202,101014201030204,102422411113113,114412010002302,100021420200400,103100201424200,111141312211004,100341044310403],
+        100400020110201: [102302014010000,102342324111110,102000344002023,110000010440200,112212000423203,100402140022003,112313001130400,100400100020012,112110030200020,101002004004022],
+        1002000303000110: [101001111020310,110011234213300,111000000043030,103120100104000,114121104000220,100011004201102,110011021320030,112002101120233,141002100010000,101200120302000],
+        141030210010400: [101200204040424,100120200002330,110014000112012,111224024130401,101042021021000,102010211202301,102201211300230,101202020304010,110010002000212,103014410104041],
+        1122002230110012: [111311002203000,110101114200020,100332111004200,101033220300404,101440410300202,110013002101010,114401020031002,114020204104030,103243024023000,103232031411102],
+        310021210012441: [100000304340012,110404211211000,114120004000010,114011012210001,101301101004120,112120042011000,112011300220120,101202204232022,103230021411101,100020200100120],
+        1020032201102134: [100020121020300,111110010022310,100240010430203,103432001210300,112440134041000,100210240013000,110401214242400,101044214042221,100033201031241,110010114210202],
+        101424120000440: [103240411403020,100020101031131,101010000323030,100043420411130,103310220113140,102010124004041,114200202330330,103101101440200,112002201122121,100000101031020],
+        1134401304200003: [103210304032003,103214211400431,102140011343010,100033210124132,100222020403200,112140010220300,111300002201131,100302104011002,102242040212122,100003020421240],
+        230100000320020: [100034204311021,101121024024120,100102204231301,112201104011200,110003101312402,110341024422102,111031030040220,110024120430323,101403200302022,111400102104003],
+        1000402040020200: [100202221212300,101001204211221,110004022000404,114240210000130,111240000001101,110010012102144,101020200301303,112000111120040,101120204202002,112030012300122],
+        100100241002012: [110131441300210,103024014030000,103002204002420,110211112020002,114030100042110,111000024110032,111012030010120,103401411211122,103423034002121,111022144120001],
+        1120230201140020: [114021000012031,122000430101030,100311000141022,114210202322020,102001101130200,124210120032121,100314020103003,121412220023000,142200042211002,100124230011120],
+        1100000000031100: [114031022302044,102012030213014,102003320200411,102002024000132,112440114040203,100401001011010,110100331003020,110031200023240,101114000330410,110040000022001],
+        242423020001001: [101220014012231,102010130231400,101010311003410,112210132031001,100020424214024,103422430124013,101000140310132],
+        1200032202204000: [101032111230411,103010110120020,110100032122000,101020210301131,110304002000013,110200001314040],
+        1211104214400310: [100403200010022,112003011123014,100000004310100,100013031002413,110020012001003,102212004013002,101101004204000,100221011202004,110020110040001,100020011031110],
+        104202031141140: [112230002030102],
+        100021403300304: [112120200204001,100030024301424,100024234202001,100020044201000,112102010201010,112402010201300,110032224422403,102102001342202,103244440103211,101340424220200],
+        1101120311020442: [111203102223243,114311400000224,100040101001132,102113232001100,101110044000400,102102021002000,100303111202002,100101021021101,112001010242211,101411044021403],
+        1002000110032000: [102002000221000,100011224100020,102242130202110,102001111412134,102110010202100,101104410330240,100001040413220,102140201410013,103220204033101,114010000010110],
+        204222104004002: [102133011413110,111001200041102,114022424102243,101223020300040,102034324000220,101230020303000,111340130010314,110200422121211,110214220002020,112220414010040],
+        100020000100220: [111104004400200,101001111020310,114002102301424,112222002031003,103141324004100,100020004200210,100010030104002,100011004201102,100234120400143,102300010241302],
+        1134040411001100: [100202030140400,101024130300401,100110201040011,142011423130201,102000201102031,114031212300003,110004022101020,111001122224141,114224400021312,100001010404000],
+        112003222001110: [102100120214000,103100004000304,102201140211010,100042121034200,110112402141330,100210001001303,101001144012310,102140030210121,101003120304130,110000001044030],
+        220210040234101: [101000141031222,100012424200031,103001331400021,102043120222040,114023024101231,102002031130220,102101041341001,114241202320300,100010001040020,112431402022004],
+        202421000043010: [114020202300410,102140201343122,100121100402000,241220023100031,123010242104441,102301024113000,100000411233303,110204420000422,100103414042003,102030014012023],
+        120023324040003: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100000100120300],
+        301111300000021: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1103040030102440],
+        210004100000043: [101010201030113,114012012300010,100302000140001,101000004003224,100241224311010,102001340200322,102021014004211,100000211030342,100000010100100,100210021000032],
+        1221012400400000: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1103001200101014: [103102011422101,114300022300010,102011424013030,102201102000000,103012240110400,103012220110230,100120421004010,112230124010202,112220430200204,114201304004220],
+        101202000100402: [103340041403223,112002110220340,102002220221002,114100234004010,100030410102000,100000221020014,102101010210022,102003224000022,100010031222001,103001114001210],
+        1001200402413320: [100400224300040,110040102001121,110310304430141,110201002043201,102140210230000,101001004012413,102024244002012,114231014000020,103321024020142,102011111414201],
+        121122022030420: [100023421041402,101010224000130,101144134001102,103002144042123,110012220002021,102304204110040,100210020410010,101000414002041,114034422302101,110421104242000],
+        202321040302201: [112020042344001,100241000430420,110004302120001,100221201210110,102110104000020,103242001202412,114042110040100,112001104000332,103041200100301,110002201322320],
+        101032030403423: [110020102000133,100000204342022,100001020012120,102101220213001,101441101010020,100001214303000,111202322222023,100002004342004,100200100401130,100123010012402],
+        1113100022001200: [114000024100022,101020030332430,101022004214304,101001231032003,101010000323030,101001020322010,114112244122013,103310220113140,100043041020120,114200202330330],
+        1100201000000201: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1440102343010102: [114014224011404,110012302001040,101002021141330,112202012021413,100102131200140,110330000400230,110001201014403,112231201102041,111201000001101,110222144212143],
+        120220202412000: [110130302012020,100000211021004,102411134020204,114032200030021,102000000224012,110210120000001,101000120303020,102000001133312,100402000020413,100011044210004],
+        1104004003104414: [103101200221334,114021000012310,110041001300210,100400414300130,100400231000200,110332030011233,114000210010231,101000100340001,101300240310420,101000344223010],
+        220202021004102: [110202004211120,110223224433004,110023342101220,110341010044330,102031144010424,111212114131222,102223400201104,102342120222031,102221010201113,111012030022123],
+        1040030110002100: [110141201302122,100023001222000,101002124002220,140300020110000,100003301030120,100101004230030,103044004034040,102103012004030,114034000012210,101044004000132],
+        1001222210340120: [100001130001003,102032031440302,103102104000031,110201134243240,111100044100001,102204004042041,110120144204004,103001201221020,102101002004300,102012014000133],
+        1004002044003121: [110213100122010,110213001300231,112120222020002,102130100222100,110200204432001,102020411123201,103024041421002,102030004010204,102400321403102,114100214102211],
+        1231203124221410: [100011011020440,101011001103200,101002121000111,114023314013200,102040104000040,114022120040112,100000201024213,102110230200201,112043010243000,114440124140143],
+        1010020041101200: [102100001411312,114041010012000,100103214302031,112000132402200,103134244000000,114022210020000,114101022332103,110200014242110,101011344000022,110232044241140],
+        111203000101320: [100201310000404,103100334030202,102434204022012,100130020020401,102211014034100,111000222232122,114002104100010,102301024020102,100002011040201,102102110231403],
+        1041001113010003: [110200002031302,102040021121030,100000204130001,100412441010422,101010200312020,101040204210210,102300310220121,110000201230100,102004014011022,100240201003034],
+        1033324002112000: [102100200231031,103241201200324,100240000430003,110030331010011,102121421141101,111020400021120,103402204002200,101024121032030,114003022330324,102022204000001],
+        1031044004100010: [114201204111222,100104001041200,103300004021200,102122214131011,100023031000024,114210400000112,103230134011412,100012004101221,114122112202230,102021021101204],
+        1001013310000131: [100011004341114,101230000302010,112241010203003,103000204042111,102203204044020,103010101412020,103223424020000,100122214230421,100120010002400,101030131140310],
+        1003020110432022: [100141220000211,110042202002303,100320011001200,110002002200300,102002344013100,110443002010003,111200302214000],
+        121240000022002: [103020031403100,102200401111200,114003104031111,114000044020204,114200302341234,103202430100244,102302331003300,102320000221020,110142020400012,112131004020212],
+        101030000020023: [110130010102101,102000041101100,100042004301301,100000201032010,114010204101202,100041234101100,112204220200011,100000101024211,112021042003200,100211211002001],
+        1103222304004311: [103030011404010,100013140102040,101002024212040,101011021020240,114121002204241,100102000022100,102140002001203,101013224000220,102310000240300,100223424120240],
+        1002220130044112: [103100021421214,103312200112110,101000221031032,103402304003240,112402404024011,101112024024301,101231024010320,112001021122340,100340221201130,100030204100000],
+        204400301220423: [110031034202003,100001211022312,111014004410102,100001124302440,101003004212410,101300021000320,114120014121314,114440122312030,102412300230420,114200434111420],
+        100210201401102: [114024222212420,114201234002300,102234010200304,101220020300041,102440011400244,100314010143240,100012431020012,103042024012204,112210204003320,102200100204220],
+        120044320332301: [100030220100110,100002114314022,111130202220102,102000100200100,102020400244030,103112100101020,114402102312001,100413131013301,110001102103432,112033300230131],
+        330102144022312: [102230040200031,110122001010214,102101204000010,110022300420031,114230230000123,100222024320003,103323001400013,114013012300240,104121001242101,102024400223212],
+        1212220200312040: [131402001003121,114420000001024,100304111000014,103300031403210,100022131043110,103422421110341,102010021413001,102040300202332,110010001011032,102024110400023],
+        200230041040040: [110202210102120,114001004100003,100041014102004,110320022101120,102131421000411,101412030302001,102222021124112,114000040031021,102400001110113,100404201012020],
+        1000401100010210: [111030022232010,100120204230441,102110004030022,100122200400044,110002200043410,114203222324004,101012400320103,112030312300010,110021012130120,100403410013000],
+        1440132403010234: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,104130020011020,101114422122000,102001314013400,114110414140400,111201100011141],
+        301224100000000: [100200004301323,112401024044240,100031220121003,114302102300200,111042012220110,103312214033030,100030424312230,102410244043324,103001004013200,102002240222132],
+        130002044043000: [102200024110104,102102030231013,100111120412201,100134224003032,110311100112142,103200301422221,101130020303010,110203034240000,103002214040200,112220030412041],
+        1120224041231022: [100431024302303,100020010010020,110231211300200,112004020202021,110003001101020,104134010010001,101300011002200,100201441000001,110311020011020,100030204100110],
+        1021210004312140: [100012320001320,102000331120104,114040300043111,110203111111000,102010201012014,102041204000002,102323204112320,100420404320101,102123414032304,110420220003321],
+        1104002000311101: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        200212020030411: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        123004313111011: [110202400003213,114112014140000,100133004000124,112440104042121,114200124000134,100120204234213,100003011231420,103230231200010,100431031014023,102010204002000],
+        1142103413304220: [100104024303320,102010310213001,103244320114100,100032011000241,102311011000014,101010300300110,112031121113040],
+        1032010210030041: [110301402000211,114000014014332,103030201402004,102304340220231,110420104221220,103200004030020,110240214432004,102122141142000,103041204010000,114432234113040],
+        212200030323230: [101030001001022,110230231300100,100300121000420,100402431014100,100100001220400,110330200400021,102100020210143,100030024303110,100142120100230,102220324011110],
+        1211212212200042: [101302340312230,100400122201240,100011101222101,101000034000203,100200321200200,112044200243000,100002300421000,100202140430012,110200301210031,110000420020100],
+        121101001104002: [110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,101000100340001,101300240310420,103000300124010,100030301030114],
+        313040240200001: [100002200103104,102040300241403,100431000032001,100202031002101,102103331400000,100204101210044,102021024004322,100121114230123,102102334000400,114323400212122],
+        1110104012102222: [100024001040202,100003141040411,111110014101210,111344032200432,101002100301021,114121222311302,102100301341002,103002124000042,102011020220400,110024000410240],
+        1130112340202231: [112113214020100,102010202004402,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,103340004020422,102410220200004,103113010102100],
+        200310444140000: [111220202240410,102200020211042,110114002004014,100010114200031,102341041000204,101224110303300,110003020001402,100000144311102,110100200402003,114001000010302],
+        1102211001200000: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        1440031100120001: [103112004030003,103100311424002,103040224000100,114323010000311],
+        121021001042233: [100004011220200,110024021040134,110301001232000,111210240010100,102400204022024,102430001110014,102002101410204,102000004001020,100011100412123,114401230002424],
+        1411320012201101: [101001044211204,100031034311401,100023210021210,102100104000203,110200101200402,100000140100020,102021201410011,103211014030010,100034124101023,111010024402022],
+        120101044000211: [110010334200041,110022004410312,100001024102001,110400011243102,114100120223101,102000401442010,321114010100340,100121041041101,102322101000200,101020041000102],
+        1002000330321000: [110012231320200,101203001010000,141000211410012,100113300012420,110101322000312,103421314002310,102102010232420,100100001004210,103004000100014,102202421120032],
+        211204302112402: [102002410222340,100110000020111,102100014132110,100002031021102,110232232034400,114000002300110,100024214100000,101013001000203,101040121003000,100104044100201],
+        211000200240002: [110001202003004,114000122301411,102114101444001,100022121031020,102141010230201,100103240011013,100020210101002,100042420003120,102300220220432,101020120322020],
+        130141101102212: [112342210200100,101021020331240,102131221410130,110031011310220,100020400003003,114100234000201],
+        201020401210324: [102040431121110,102212000200124,100300310140241,100240134323001,102042000222002,100030010102102,103312241402001,101004200301002,102122412001012,100022001040322],
+        1422301023203200: [113122211022230],
+        1142000100001002: [101302134233230,100022001040322,100000130010033,101030404212000,114102224000201,100022021041122,100020001042002,100013011020311,100120041020012,102012204000242],
+        1042301012221000: [100012404300402,114001310020304,101210321000020,102004021122000,102402011111020,114333400002202,102100024003022,112311301134110,100120001002143,110320222022322],
+        1100022000200103: [101124304021340,114012040032014,101002044010000,102100234001041,114030000012340,110001000011400,101204001023030,111103402111200,100003030413032,112430032020021],
+        220031222142300: [101002031030004,102301110242001,101002134010003,100021004312011,102040214012332,100111304332002,112020242313303,111004220040121,100132014003120,100240214100000],
+        1003410220042303: [104441021202022],
+        102000012443012: [114001000020102,101020040300010,100213001000212,100002004212420,102121014002022,100141404233000,114131002342130,101020001030204,100403122201202,102303304020122],
+        102121040200010: [101020024001041,100200201000001,102100000210002,112224232044014,112002100240200,103032004012111,100001404100110,110131022014120,101213110310042,112000002000110],
+        300032004140021: [104120011242011,114300000000002,110020002104100,110210014220001,102111400202120,111400214442024,111122200021102,112400034040002,101041100300001,100000020201032],
+        1020100110003130: [114024024023000,110421102023242,112100200230014,110011414201101,110001000023414,103211404020312,111440120030122,110202002231020,100120400400010,114220432322310],
+        1103204101211110: [102000001132113,102202310203222,100042001020203,102002320220202,114130210231020,100004410120102,101020104000040,111222214101043,114412142320040,102100044000000],
+        130200124013021: [100020344302010,100002100000100,110030004200002,114100102340003,100100414230101,110134022013042,102110011142012,100120044000204,100001000000200,101034401033340],
+        1423003021430230: [111240340004003,102021024000010,111101222244030,112011012004300,102300010242330,102000401120420,102004012043122,114011102210402,100120001014040,114300100000041],
+        132000110004104: [112002110220340,114040210021100,102002220221002,114100234004010,100030410102000,112240334012440,102101010210022,100010031222001,110020200001031,100034021034000],
+        310010030020223: [101001014001021,112210010201431,100103224301304,100410331002222,100032204311200,102022330212000,112004012000011,100031301020002,100320104321221,112123020420224],
+        1421010011200001: [102002014000220,102203004042010,102410004024030,114402320000202,114014112302234,102012401001012,114112000004001,101004421020002,114003002301122,100110210033043],
+        242332030024112: [103020031403100,114003104031111,101030301000221,102302331003300,102003111413120,100023101043203,112131004020212,100033001020140,114200122340300,114330420004101],
+        102003031003010: [110020102000133,100000204342022,102101220213001,101302001001041,100123010012402,100210131002013,100124031002220,102240014031121,110310212100024,110420022110000],
+        100221302020040: [103000004002012,100042100102211,102110030200120,100202140000111,114001032300011,100142044103021,101100010012423,100330020141212,101031010300013,100301010142004],
+        210201040124301: [102230021122000,101004004213014,100121021011022,102003010240141,102242024041210,114022234100400,112210102030020,114130120222102,110000222130120,112032322004103],
+        1020023401212202: [100121214300000,102123214020000,102022124012030,114002320022312],
+        132103410002010: [110004020020022,114032412303041,114322024034312,100100244231020,102040010200101,102200434012013,112000301122111,102100201400122,102013120200110,102020130212402],
+        230003400300422: [103023200124021,102141401342003,101012000300312,100110044231020,101000110324210,103001024010002,101010324003011,113020230142210,112440014042100,102300200240230],
+        1000100030000402: [104310001300102,114021132202032,112012004004324,103001314001021,114122220031004,103040024041111,101004004213014,111124002211203,100121021011022,112034420220403],
+        1041002220022202: [103001024002110,110100012120201,100010104312120,114411200031024,100431200032321,103022034000034,103303031402100,100004214301320,101000340000101,111203002221000],
+        1112201221101002: [102441324022342,102142004001013,101213240301002,101041301000020,103220000104122,101401030302440,114240004002100,103000111403340,101404104022202,100000011233203],
+        1000012011222401: [102000214001143,102142000224040,114000122300001,112133002010330,110103332012031,102000344000000,112201031104011,100001004200110,114010204022402,110201122110010],
+        130100131014001: [100000121042240,102101201403410,114001002200014,102413124042401,112210400412120,102000320222120,114234304112011,110240221202310,102212311120042,103100241442411],
+        110002020040310: [112411140200242,111201202221200,114323400212122,101001201000220,111123002210402,102414024024010,100011004203023,102022020220023,101010020304020,100010001043003],
+        1002211040040300: [114000224021230,101300244224432,100100220411240,103022101431300,102110004020133,100224010432200,101120241102000,114131014004220,114014002300000,112120004043000],
+        121122321030012: [102120231343224,114104144120120,102310011001022,102104001410213,100031214201041,103120210212230,100022221030000,102140201342100,102323034112101,114112000000211],
+        130220302023000: [100010300121000,100001020100202,112342222022401,110002202000200,112044002313041,112202311102010,111411130210010,102221224040201,102111201141234,110021420430011],
+        110210233003003: [103041220111410,101100202130022,102004201032002,114101012343012],
+        112230141003000: [100024000110221,100110020031042,101301014221122,110422102110221,114220040000201,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040],
+        110111003000001: [101410411010012,100203011000010,102221104042021,110001040443212,102022014002413,111002134113102,100140021040220,110212320001324,1034200000211010,1340010113012333],
+        1000010412223201: [114441040001202,114422000000123,100010330010200,110412000000421,110221004213100,101112314020004,101023300320033,102203221104401,103100020121000,102220104012021],
+        130333010240140: [110120144200000,114022412330004,101200221022044,100103104302044,101041030320401,110241112020204,100002004104004,103130021444021,102100104002224,102100224000210],
+        203011140201112: [100004001021111,100001010014420,100003000104203,102041410242244,102101220214011,114000424102300,114001214100103,102311110240101,102141020210132,112102314020000],
+        1400222002221313: [101022014222024,102203344011410,102103430210003,100012014300120,102414014022212,100032000101014,103030104000102,111311002224001,100032134101100,112010024023002],
+        120103001020314: [100010221022032,102404224041131,103301104024110,114024030042032,110024010110012,100000414342003,111143034100121,114040004104121,100031101041011,100001131020300],
+        100010233130003: [102110230210000,101124201110410,101423221010210,102200021102420,103020201412410,101010211033312,114421302322203,100200401010040,102101010200120,100200001003310],
+        1102304224013203: [110300221220031,110201220000032,100021214313034,122011001202102,202023004201110,114214202320312,101001021001033,100010001030022,102121111023020,110000212134440],
+        310430313100220: [102300324010203,102100142002204,102040011121100,111322234130000,110113004402201,100030024303023,100001134100120,114023214101310,110301232000100,114110340004414],
+        1111342001000204: [110301011320314,111004014402201,102100200002331,114311034034030,101340200340001,100001000001210,102200112000100,132303424001013,123320003100311,101041400311420],
+        101004130040421: [110002412130400,112011010223100,110140304404000,112110001102104,101000011003140,110202022121042,110000121102001,112301031103203,110222431302410],
+        1101003301200001: [103242420100012,110224044242243,101400004022112,100100210000011,102200000200201,103110020210000,102201430201310,100022141030334,103200211410311,110000320002401],
+        1100220302311410: [102032000201000,111123230011010,102001114002202,1001213310010221,103210000102340,203114302220300,122112002001021,1100000001400421,1112220124040014,110202040110440],
+        101100300300024: [102040431121110,101221020040220,114111100021420,102212000200124,100300310140241,100103104302044,101041030320401,102141212000200,102042000222002,101203121020430],
+        122204310412010: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000],
+        1040004001200222: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1004112041012212: [114300200000110,102000021133001,102301434110030,102100301400242,101300340341000,100111341011011,102401001400103,114421030000000,100130200020214,101000011031133],
+        124302130120210: [103000004002012,100002011042020,102110030200120,100301421002002,100202140000111,114001032300011,100240101000030,101003104212220,102302211002004,114030310012122],
+        1040013000120120: [114213222330042,102403004020102,103303021404201,100020010420242,110001040133002,100020020411100,100011101000012,110440404220220,100022001043034,102430100201204],
+        140100143012322: [110200411140130,110114120120100,103124210100201,111014200024034,102301002004242,112020014000340,110021404214210,101003014210212,100130220400031,100210024300001],
+        211201002112204: [114444244144110,114201004110120,100412114304000,103001020120202,101000020302400,102021014012210,102244221114031,112400000200011,111101400011011,100101004301032],
+        123420320314440: [110101210013000,100404121014002,101240220300022,103011431401300,110120020002304,100011000202214,110012101102100,102102304001200,100010040001210,102002020220000],
+        104130221040413: [114200212322001,100000210100030,100401210020002,100402042200000,110001440041003,100203011004130,100010111022102,100220300410430,110101021201003,101402010301000],
+        200033000100233: [103303001404000,101410021100102,100110004101000,102221204020110,100103121021000,102203204123112,112100020204342,100442041001211,101212310301011,102200312000014],
+        1022202000342000: [102442024024214,102100330211131,100011014103012,100030220101040,101240021020011,100400020033003,100100110411000,112204130410100,103412114023431,101400004021230],
+        100204031403310: [101421100301230,102130124130100,102022020204430,103214021400010,110100022010014,102000324011143,111110420014032,100003131040012,103004044010300,103144220102102],
+        1001020013212113: [114022014010344,100103204102201,100021104314210,100023024300210,112000412001142,110020010042001,100001034302344,102113101023001,100020400102400,112020014000031],
+        122123001322222: [102342214020012,100220024324023,100214104301120,104130011240303,102320234112041,112420030202242,110012021200100,100120221224010,110000200000133,100112024032033],
+        1002323202100000: [103304014020032,100004110000301,114202424001100,114113004120221,111210402244301,102100011341140,1120022020242320,102320231000001,101122031100000,101211011012300],
+        200020010004100: [100024140122042,111130032100003,102110044130102,101020424003002,101020130302240,114001104102144,110004030102043,110040000031242,111331014120444,110022002010102],
+        1001102340011320: [102021001132040,110402420402001,110021021210300,110021232000021,110404000000012,102000101120123,110221022101104,100020311220412,110123004401121,102203031121210],
+        1401330004220002: [110120144200000,101200221022044,110241112020204,100002004104004,102100224000210,114201104111034,102310140240012,100014204201000,102103321411004,114113000004012],
+        1002320400132000: [110300120403013,110131002010202,101010010320020,101120101100112,102410124022400,102300424112201,101020004001002,100030031220030,100010100420004,100120300002212],
+        101040043020110: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1141010201442220: [101230114202200,100400000020230,112411140200242,101000034212001,111201202221200,102412001111203,102440400200230,111123002210402,100011004203023,103001241432010],
+        1020302012421014: [102110141401203,100003021041343,102040034000131,110111200000000,100341001003013,102200011120011,110002341300120,101010011000121,101022140300332,110140412011321],
+        204002110140322: [102010400202113,101033044211203,110111200000000,102200011120011,103102234003012,101010024011001,112100330410121,102121001142041,100023120012013,112214200222101],
+        101134012000120: [110300324420404,112400230202202],
+        204421121232032: [101041010324010,101000004210020,100032300010000,114140404123402,102130031410200,100010300414000,114310134003100,100004040120000,114011014014042,102040411132010],
+        1122000200040320: [110031034202003,100001211022312,100001214303000,101420304041030,101000004214010,114120014121314,114440122312030,101012314212232,110042200411210,114001204100003],
+        1020121441133031: [112221002043330,103214200103130,101011024213031,102230200204114,112030210211000,101210021000110,101000121021044,101032004214120,102100202001221,111214012221010],
+        1040200220043020: [100011004340114,102002204002010,102101101140040,102000021444112,101012320320322,103100214001400,114231402333020,102121001343030,102102030210111,102311014112010],
+        100400030221014: [102332320243001,101004204212040,102202014030001,102131341023330,114003040042312,100122014301301,111201200004040,101003204223410,112321041130330,102113100201211],
+        203102001212031: [101022014222024,103114204002100,114230004110101,100001101033010,102142002000030,100000201022420,114000024101202,100100014302013,112020021120403,100002114104410],
+        131041214120220: [114402020004242,102242304042410,112032012004300,101001034002001,101122414004224,102000201131020,1010120030012200,101024411001024,221104221024023,112220044014012],
+        211320002000042: [101003040320032,102000401132401,100110314300212,110022302102330,112032314000320,114300110001212,101032401001100,112101204022303,110102020034012,103400021214112],
+        1121104000200320: [114021412213020,110030002000422,103100014031411,110000300424304,100032121024110,100402431012022,111403100030130,102402330230011,102022400211311,110030400004330],
+        1102130114123404: [102010011412143,102323124020210,110221030000000,114202222332202,100010024101400,112020220232032,101230034230201,112420102020304,103301011402200,110104104223210],
+        100220021003024: [111000100012002,111102010012102,111300030012334,112000021130124,114440430030032,110011004420221,100020200102220,114300232301422,100002124340103,100020211021110],
+        1103232022020200: [102401141113031,102304314110202,110210400002012,113032012204012,100204311000400,100403012200201,112002111121013,114211100001224,102112004004002,111011012142130],
+        1000104010301402: [100300031003200,101023000340120,102310031100100,114002034102120,101020200302021,102021030221122,114020402303041,103000000104034,112004044022023,101010221002100],
+        1401143300244402: [102022030202021,114000104100334,100000111040212,103322201402320,100112014300400,101320420300210,103010424023103,100400404322200,101232100300211,1000000000020010],
+        131101211002002: [102023104002000,114010314101200,111114010020011,110304044431200,100001204302200,100310111001140,112122104040040,102103131122203,100000004204201,114002104011010],
+        201400420001130: [100413111001202,101201204010202,112342411130020,110201304401200,102203320200340,101204000300001,112004421133402,112203224002121,103100000122400,112101220200431],
+        1014002010101000: [114200212322001,100000210100030,100401210020002,100402042200000,110001440041003,100203011004130,100010111022102,100220300410430,110101021201003,101402010301000],
+        1000102024410000: [102424204043100,100113220020101,114031000022030,100300211000020,101410401010030,114310200002400,103211220100010,101202201021310,103044004010022,114130020222342],
+        1000012010013210: [102422114040010,102020004001311,100101101010100,114103212312012,102321044112101,100022024100041,114231212342200,100020011043020,100021231020200,114201112322020],
+        1020023010022302: [100002031120341,113020001020004,100003044210040,103243401401133,110012212132410,101210014200430,110014011320012,110400022122040,101111010020120,100223400002001],
+        120030002313204: [114402404141241,100200400430003,110212022133311,101041210311410,110022004211030,101210021021243,100140024230240,112230240412241,110000204203220,102214000210013],
+        300210020000003: [100024000110221,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,103030040121410],
+        110310000210213: [114110202310100,100112031000231,100203001000312,112034100224100,101101421100021,103400001200200,110331241332440,110120122010133,100210301001021,121030014300011],
+        111101040102020: [102310324112030,100410130030232,103220101421001,121110020100002,100002104204000,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100],
+        130123330014210: [100020330100100,102110021342213,112002310211210,100010031020102,102440031411200,100023014340130,114214034100221,102200204021004,110012001100010,100041430100100],
+        140004423000020: [101221414041100,103041020101400,111300402200003,114141024004011,110022341300320,101021244012200,103040000000212,103000001410123,110202221212123,101300004211000],
+        100022210133110: [111000000010022,112110001103200,112044010213042,100400100013220,114300202300030,103401140121121,112100122010004,110010214201300,100112000400000,101041004000412],
+        104021002242002: [103122020213112,100104010021241,114101100211240,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,102000034013222],
+        223241001220000: [110241024242442,110124002040002,110444010032242,104132420010010,100001041031013,114212102310100,110300112023012,110224200113042,103203404020010,101000020301410],
+        130042104003431: [100002201220230,110043000044000,110002420440214,113000010132312,102202020200142,100020224312010,100004204230430,101101301100110,111040400003000,100010111222000],
+        104020001440042: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        120000432013231: [112200224002440,100000311022110,100202004324201,102041020200401,111103214101012,104103012102410,103200100100303,114011204102241,102123001340111,102202004024001],
+        110420210203120: [100440031001120,114203042330220,102020200223310,100020001041410,102032012000101,102102231400111,100032421040120,101004201001232,112102102302000,102141231343401],
+        1004204100011420: [100430021001320,114042102330002,100014001041000,204020131034103,114113404003030,102310030240210,103214301421201,1000001214032041,102100204001030,102200400234000],
+        110041110341222: [101001040340004,102424204043100,112022334022101,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        1012020002410120: [100040201012040,114100222310230,114131002342130,110002022003101,110224130002014,100403122201202,102303304020122,100310210142030,114132012200110,103011011410312],
+        1042000021003221: [102343230224321,114201104111034,102310140240012,111130210020000,100141101044100,101022121001000,102102201340311,100001104301200,1001300002020110,102014204013110],
+        132101034304010: [101214104041040,110104231221040,102012204010044,103101000100022,100020141044111,110401440001204,110204310112224,100042110122000,114400322311044,101021021002110],
+        1031302000233240: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        1011043202114020: [101230040301234,102303014024221,100010314103002,110310321232001,100100224304110,112000000211220,101020024210020,102000110221011,100022020412310,114103244123211],
+        1000012200213001: [100212424322433,111142000011122,103020201401020,102000401132401,114022020042232,100200410434002,112130030422202,110002022130324,100221124121143,100414300433033],
+        131003032313314: [100000121024021,110111041011032,110243310101220,100020010022143,100003014244002,102100311400022,101000004000400,114003102303200,100000044310330,100011000420231],
+        124123001220000: [100003211020020,111000240044102,102300000220000,100011200100023,100010044213301,100330204322010,102111211401000,100122124300402,103031114000000,101233124010023],
+        1141010002240001: [101003201002421,102034004000133,114440012312003,102112411140024,102113000210043,102114101120004,101010011034220,100421111011000,111232024102030,100020104104100],
+        312200100100000: [110130010102101,111022412140224,100212034221414,100222100402024,100121301023030,100404000020000,100020224310403,100020424102200,101121401110420,100200001211010],
+        130104120020410: [110030230041304,100043200201202,110102110122210,101240011000120,102020034010243,100140001040042,102111214004020,103212144000440,101422120334233,114243122320133],
+        102020021202423: [100440000030040,100023101001004,102001014013004,102101000233302,103210210100210,101013101033100,101043004211000,112340340200112,100001000010010,100002121021340],
+        121000042040044: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        1012002030041000: [102014001130210,110002302201420,102421004041011,102240040202421,100130004300103,103000404000100,100040004331010,101203001022300,112142441100101,112420030202242],
+        1040002030420224: [114113014000010,114202400003330,111201222220201,114140204123004,114330004003002,114020210040010,112140030420012,100002324211100,114440100001332,111231042242020],
+        110340103023303: [110102401201204,100110004103122,103020200141000,102414034040100,100212030414010,100412200002013,114312004002020,102020041321410,102300020220011,111340300010010],
+        100021223010410: [102214204030204,112011312002001,101344331000033,100031001030010,101200100300130,100103000420004,112010040224120,101110104203101,102030214011002,114312000000010],
+        122300010322102: [110001022000001,100021004310222,110020422131120,100001000100000,110202222043022,110313312021120,100220214333200,110330234422000,110243000001123,114024400030020],
+        100240330023040: [100003101032010,100000204100040,102410111400000,102023104012330,101423221102322,114001412302040,100301441003041,112002004004131,102131014030410,100000010002403],
+        1000330401010002: [114200212322001,100401210020002,112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,101022440300020,101402010301000,100000220111021],
+        1000240301001004: [100102030022032,110004002104412,100300330140221,101010004012023,114020444011203,100041101020304,114223104000224,103414310101301,102300041002342,103311041404230],
+        221030002000232: [104111432100240,111102440020002,101000200340220,103312010113222,100034110413403,101230111202201,102123411402002,100014114101200,101042201030422,112410144044044],
+        1001130441201023: [110103014401023,100001044310021,114030444102123,110001010030000,110021404214210,102024000201400,100130220400031,103244411400010,100000400100142,102002034001310],
+        111033203043100: [111240220002100,110030344201413,101001014001021,100103224301304,114000100020200,102102100231000,114040202330200,100410331002222,100032204311200,102202111110404],
+        322122003100301: [110031132004101,100030204311001,102001314010010,100000340004033,102043002003004,102001000222212,102020210213130,100023004312402,100110304032200,111002200022030],
+        1013001320000020: [110020001310000,110214024430312,100011014100041,100310201003000,110412121110214,100212341003212,110142300120000,112013212032000,112010220224003,112001040231401],
+        1104120301033130: [102021024000010,102300010242330,102000401120420,114011102210402,114300100000041,102222014011300,100100121010022,100002134204321,102114201120000,114401132311113],
+        202011103000021: [110100001200320,101243024011000,100000214101311,102200230202120,100010021221221,111012202111021,114410110004100,100200301000032,100102310402243,112410202020240],
+        1000220240001243: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        100432020213041: [120004030002401,114303212321010,122122400100233,124210002004022,102104240200102,111241012204330,114002022300021,114210010004204],
+        1422023004220140: [110111400400013,102101300210200,100041044100100,102041014011220,102301104110010,101001000322303,102320001000040,112300031103011,100100140024100,104100042101240],
+        220430002102130: [102000010202042,102020001100001,101011014010102,102020324002022,102000144012140,102001104001214,112440104040110,111004410022000,102221241110321,124301340333312],
+        220122412202010: [100300031003200,102310031100100,102230121123030,114020402303041,103000000104034,100002021020001,102000110224002,101022121000241,111100004100400,102014000220344],
+        111000220211012: [100013100100014,100120234300003,102100014000422,114010422330121,110020402100200,101401424024210,103044001403210,111300122200243,100000101040410,102304010242101],
+        214030204134210: [103212000212121,112002010220004,100112110020301,103211014000111,102000034013222,100022301000112,114121030220301,102030021100041,103210214042004,112002042310020],
+        1000440040020013: [1010400230221020,103034010121101,102302200210010,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122,102143202000400,100002301021040],
+        112022100012210: [100000200202012,114404010003320,100013200412401,100141011011032,111222214101043,100010021034000,103132004002020,100000241000002,100000401002031,103230430101003],
+        1140200040312303: [100000001220044,101321001000010,102022200220022,102140114001021,100040400100203,102410111110002,100101041040330,102000100210400,114102302311211,114034400040402],
+        1120310221022021: [102012021321102,102141000230042,102002000221000,114044020020230,102321001000211,102242130202110,100010001040020,100002031020102,110200440000121,112400204040200],
+        310204001001300: [110000104200413,113141002412032],
+        1414420013004000: [101100104000222,102324141000002,101010234004042,102041224010012,114340102322021,103040044010112,102102000312101,100040320003002,100131001222020,100033021031120],
+        103324000011102: [114010200011100,100102110412002,100000204214001,102013024000211,101420000300100,111303020011022,110030122001102,114200100002242,114100114000220,101200304010130],
+        1400032011022112: [100012230204000,110143101120300,101101200311102,112401402023020,103142104001331,100200204123011,102012024040044,103031120143010,100103401003022,100000010004223],
+        102303404030230: [101020204002030,114034220041220,114000204101231,100024004210111,102002100222202,103343010113030,102013000202010,114040202214201,100200001210240,103200234030122],
+        1112444322313010: [114423002313120,102302004110032,103100010101002,102300041004010,100241020000000,101403004040100,103000140101310,100000424201102,103111240223100,110040004412402],
+        201222004000012: [103233020100000,101000100342211,100120414231002,102011201320040,110400230404040,100001204301011,112010334002223,112234000202010,102222011121001,102000124010244],
+        112100002032200: [110111032140220,100023101042010,102410111400002,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,114200022343003],
+        221310201022220: [102100044001000,110041214411012,101000300301420,101000101022043,112400122020014,100222000000120,110120000402004,101000000303020,102101401340100,100002101031040],
+        131010044143200: [110201201211024,110202000000310,110000010120043,100422314300200,102141410230020,110020001224021,101110020013040,101012410301010,103120001400003,110003302000101],
+        211422120110000: [102102101412200,103003000142012,1002201014202430,100112430012432,103330400114023,102403004020222,100002301031043,100040321042021,1211200224022400,100034231033001],
+        1231242044002020: [100410410002011,102101224002210,110311232120010,122203322100011,110330022021224,110123442011041,103021000110211,102201324110204,103010141222231,102102140230141],
+        130214040211300: [101042014003022,102210020240030,121401221221000,111134344400330,110020000010044,110111044402003,111043124112002,114300410001304,111012422202203,200000300421000],
+        1022010040400121: [104110021244203,102224101113104,102103022002001,100312331004000,102102224000012,102100102001032,100142431013000,101000031001011,101100001102230,101010130321200],
+        1100020200404101: [102340221000300,100110020031042,110422102110221,100402002201002,101011014002032,111004100022110,101002201140040,100211000412142,100141021004020,102320234030000],
+        1002113311404312: [100440031001120,102203004042010,100020001041410,102032012000101,114014112302234,101004201001232,112102102302000,102141231343401,101231104200000,102112011401424],
+        1120000132041101: [111030212113431,103222004032000,102233034000002,110123011200000,101122404022022,112130004021000,100100200021431,112101202012010,114240004000000,101100304021321],
+        224000232002220: [100003030003020,100001014100021,100001034310012,102030414003000,101342020314000,110011300143002,102112104004041,102110201023020,100022244300030,101402011104010],
+        240020030104010: [102000004002101,101403014020203,100402004300002,100042030120422,112100000200031,110003032000041,100003200120040,102143211343014,103300234023033,100112000410320],
+        140104300101112: [112142000203203,102100014132110,101021210300311,112102002011134,103020001420020,110232232034400,100010001031001,100024214100000,101013001000203,100104044100201],
+        123001121203243: [102301004113010,112030022000210,102320214110001,114000312331020,110002002104100,102301214110003,102144241343120,101010021000112,101111420334431,102334004031222],
+        222022110330001: [110342022000001,110000024201210,114403000001001,112311212021024,100030030422421,101120020304200,102020121321033,100000421021000,100024330000002,114100030222001],
+        102400010401030: [102121100212102,110020402120123,100030220004324,103002021410120,100004301032422,103040001223140,114221112332002,110002410023032,100010400400202,113001012400112],
+        121020233202002: [100000111021003,1012321211130014,411242003002123],
+        202023130044140: [1010400230221020,103034010121101,111300400002313,111101040014040,114021040010311,114140004123122,102143202000400,100002301021040,111020002202333,103221010100230],
+        102004430222400: [102402024000034,103012024004312,102214020242110,101140320330114,112120020230024,114234004000210,103221021412001,100000204100304],
+        1002043411001003: [101121211101004,101114101012020,110002002000100,103013000104404,101001304001101,102002112041034,102041111020030,110022001201023,102011000200113,100000040001141],
+        1010201000232002: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        112040220341200: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        1104300002032043: [112224111100141,100040134340044,112004310224204,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110210020104031],
+        1204001101332012: [102000220220104,114202044111100,102102044001132,100020221030411,100010100201100,103021004000012,102300211004013,114033400030122,102201301110113,100102211010210],
+        320034002102344: [101101200311102,112401402023020,103142104001331,100200204123011,102012024040044,103031120143010,100000010004223,100042021022002,100101130101111,112000210230234],
+        221423010221012: [103021024013303,121000042140301,1300102201211020,1112301032024000],
+        102122001042002: [102113020210120,102201101122100,110202102121414,100102114100420,101012310342300,102321320224101,100002404310212,100020004310022,114012212302132,100430324300003],
+        1201112102020024: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        1413022211003112: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,102044021101411,101042001021012,101100104002023,103230011412301,100400000010020],
+        1002022000200002: [114203042330220,102102231400111,102100422004010,100032421040120,101004201001232,100002020101023,111100232241200,100011234202334,103343010113030,100031404302400],
+        1120321001000103: [102000100222110,102302231004020,103001000141212,102000001133312,102202220200320,100402000020413,100004341021204,100010121034013,100101201041310,114102242313010],
+        131001424120202: [112144002012040,102110040210100,100014424203222,100120200402020,111002014122111,112013002310110,110200400010001,110232200421003,102140434004314],
+        1422022000120400: [100012320012022,102240221121201,100003021042014],
+        101014034044122: [110320202023400,110441234224400,111431110000042,100302141003012,102004441124110,100000301221024,101224322120022,110104422010121,110013122130200,110200010014000],
+        101102013010121: [103032221421243,100120004300002,103210030110012,100112224000220,110302010102310],
+        241002001412303: [101400331014100,100002011233223],
+        111021400102120: [111210000001101,114013400011030,101201104040034,101020111030400,103004104010210,100202200003011,103210210100210,101013101033100,102204204042220,110100301000100],
+        140324210404000: [100112021020320,114212104110100,102300124023122,100000104100102,111022134112141,102001040222000,102101004000001,100121214300000,102001201442022,111103214104101],
+        243420110001000: [101100010302233,102300341002000,100100201020222,102142210212103,102310201001230,100102111040112,101300004220004,100340121001230,100131401010130,114210012331102],
+        123001440030004: [104120011242011,114300000000002,110121100004131,110020002104100,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102,114032234033303],
+        1121133012002124: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        1000101011412220: [114014112300100,114030034013101,100000044204004,101013004001421,103000014011004,101020224210014,114202244101041,100122310020400,112423102010012,102112022001414],
+        1042021430010022: [114002104014300,102000311102212,114032104100141,112301312020123,102000201101332,100111304300020,100040404202000,102104011413013,100012011022000,112100000200003],
+        1241021303100120: [101040040300223,114234004000210,100100001040410,103000200112220],
+        112300400022304: [103122114004113,110030110122402,114322024034312,110000302123230,101344140314114,100100244231020,102100201400122,102110001141443,100323024010040,100234004033234],
+        1001402002030104: [103220120212134,111103314101000,114140104122430,101100010302233,100100201020222,102020201413321,102112100224122,101002020303222,100131401010130,114210012331102],
+        1122000010012011: [110030122102303,102300001002440,112402034013000,101011020320030,112202040411432,112130004043234,110013020024300,112101120201010,102010211120200,100400202201400],
+        1110333204411202: [114031004022301,103004324010014,100123221201001,114000042300000,102221144011031,102004131102034,102034000222030,103310000112400,114200200004000,101210014042024],
+        200412034401342: [114301022320021,103344200113430,114101104102004,102440024022132,112100102012303,303020404011031,110432112113300,100141014232130,110020202100303,100400032200000],
+        1403011410021221: [101300124221002,103311100112220,102112002004120,114400004141104,102142234000020,114402044140023,100314420140013,101401204040200,102132004004123,100040021031201],
+        122103302004140: [100111334330000,110023240021020,100300433210004,102240100011000,100400213242110,100020201002004,120021202100230,102320120240200,100000012221111,110102301010411],
+        1001042021343004: [100012134302230,102012110232021,103300201400340,102002230200001,100020000100311,101444031100130,114404214140114,114400032310444,100120031042012,100000101002424],
+        103114102420124: [102300001002440,112130004043234,112101120201010,101000224223002,102101101021304,102012011412102,101040201112304,100024204204210,112422342020141,102202000232032],
+        100303300001220: [103212014020132,101022000302211,101232020300432,103011200100000,114020204024101,101031320320042,102122340200200,114000214021240,111111000020023,112012112300040],
+        300211040102220: [100030324200410,101000001111200,102300404024300,102113200210140,100040041020102,114200020003431,114420142322140,101002200343110,100212024322044,100140004102001],
+        1022114310032034: [100010001043004,100020101230201,111002200021141,100410144320420,111200044424130,102331214112200,102202031302001,103301000140031,111100222112000,112003102000220],
+        113010000000223: [100200400430003,114420102323300,110112030401012,110212022133311,110404122110112,110403010000304,114100040214000,101210021021243,101010200320244,102214000210013],
+        1010042240201220: [102400100230000,101022121001000,102302020212101,102300104110002,100030004104210,110232110004010,103021201430000,101002320322420,102220021110200,103003004000110],
+        222300242010031: [101122414004224,102000201131020,1010120030012200,101024411001024,102123332000002,100000020401203,100202211200032,100020140120213,114020012211102,101221400302004],
+        100430420023010: [101221020040220,100103104302044,102020004000014,114242410001010,102000220220104,114202044111100,114212100211223,102102044001132,100020221030411,114443114123130],
+        122200101300000: [114030400020232,114010204022042,110101202010123,110000011220401,101240300302320,103001024000200,102421020202030,110011014203122,110001031300042,114100214000010],
+        222111040000042: [110000100022040,100302420120212,114004142244000,102140001441301,102002004012310,110000011220204,111200024102040,100302304310204,102103204000000,101330120302103],
+        224100000424024: [111000100012002,111102010012102,111300030012334,110012000141104,140300020110000,112000021130124,100020200102220,114300232301422,100002124340103,102412140201410],
+        1030010211000220: [100440024301100,102022200220022,100101041040330,112122334022424,103341124011404,114010214101003,100031130410243,112400222021010,100102101041221,102231101122002],
+        123110303100011: [100024401024001,101141011141300,103101001213344,112020102004301,110310211331000,111031000041022,101324314210203],
+        1001112241101222: [102420424042020,100010001032223,102111024000402,114321002320001,103220011411101,102001011100100,114402104142102,102311120222404,114020404020132,101220111023331],
+        1433200344420042: [103134014000340,104103100010141,111101222240010,100040210411102,112014022314210,100000014100024,102010000221204,100110004102034,102040140220220,114010400014304],
+        202001012300230: [110102042010220,101020124000413,111210000001101,114013400011030,102202000201220,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011],
+        231110034011021: [102114000202302,111042000041011,101030201111010,100023124103021,102120411023000,102000000240101,102201110212212,102020214011010,102201301121001,100000121020141],
+        110200143340300: [100302224314022,102202121303004,4000102402020203,212212122411010,403140033110010,1042001130040011,400220020302030,401000212302000,1104240221103101,321220000111343],
+        101421210111002: [111000242201231,114030220011120,110020442001124,102040101121143,100010021211303,100002210000020,102100401140202,114100000031040,114311040000110,100000014312111],
+        1240010013233101: [100230000102310,100040004210202,102100200202110,100220222000100,110401304243400,101430221010100,102130000201200,103304404012414,120440011014232,122042111030110],
+        102020443022000: [110004020020022,103122114004113,110030110122402,114322024034312,100100244231020,102143432000102,102040010200101,102200434012013,112000301122111,114001110033210],
+        132242000010121: [102101201403410,114001002200014,112210400412120,114130200001000,114234304112011,110240221202310,103100241442411,114000040022014,102142021343003,102022104010020],
+        221021130001210: [132344004001203,114303202300104,100210304340400,112020044000400,111201314412204,102000200204141,102100300233312,103041130110112,110023014202232,102220021304234],
+        132244142112342: [103043404000202,102100422004010,100032421040120,102420000202033,101012400343401,100002411021201,102110010210330,100012020410400,102122111402420,100031404302400],
+        114222214100402: [103100121423010,110031024200343,100110411011010,114010144020122,102003121410401,100020104104422,114112012310000,114002340024001,102220111122102,102030200223000],
+        104002232134021: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,114321002320001,102042000222002],
+        120310032110140: [102412004000132,101233341022410,103013314020203,110120211001001,100300400142001,114100210002202,100000120121031,110010102030411,114211324100004,101212311020000],
+        100301101400040: [100020121020300,110412121110214,110142300120000,112010220224003,111110010022310,100200001001300,100012104313201,100002201032401,111301332200104,103012011412220],
+        1024021010120212: [100000200202012,103220011420242,100031201030331,100141011011032,100010021034000,103132004002020,100000241000002,103201101402422,101040004210301,114400100002010],
+        1020000142002200: [100020114101410,112102014020004,102104020200100,112012302000210,401110200120200,100100200104200,110234020001000,100110140003001,102100030200212,141100032211221],
+        1000032141200121: [101000024004442,111423000022420,140102120200000,110131001002021,100002100000100,203201100012000,114100102340003,110130030020000],
+        100304110420202: [110004110141201,112020022000410,100010004203011,112210210200000,114112022340200,112033012312000,111230202223302,111230010000204,110201002224022,110010012130243],
+        114201103003000: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102311120222404,100100000422320,102100012002000],
+        1022241430000010: [102310000222133,100112000402300,114104310000002,100101220021240,102220011122100,100001001034141,102040244041000,112013032002214,101404441100012,112123102010143],
+        120002012424002: [100012320001320,102000331120104,100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010],
+        1020220041032400: [102100004130301,102113020210120,102201101122100,100102114100420,101012310342300,102321320224101,100002404310212,114012212302132,100430324300003,114230222331120],
+        1001041220131003: [100102011010403,100220000144000,101044334010021,100041230103400,102343201103202,110114140030310,111210022244041,112001112310011,100014020100410,122102040020030],
+        233144340323320: [110130321300301,102311104020002,111020104110202,100311014020202,102240200242002,101000411030013,102110312004000,1003110100202043,103012004020122,100313041004240],
+        1004201001302002: [114402020004242,112032012004300,101122414004224,1010120030012200,101024411001024,111102044104010,112220044014012,110002044410023,100010410420002,102120011340102],
+        112402320401011: [101400100302311,102141000230040,114013204020122,110030024202101,110100224200101,101122201021010,114000102300220,111011022203010,103021424001214,101230000301220],
+        1040411020320000: [100004001021111,101021004214202,100003000104203,102114320203000,101011001103200,114001112300001,101003104212220,102311110240101,114002002300302,100000304301120],
+        103001402220032: [112100124023402,102000224000011,101020044011003,103122000211420,100032301041204,100410304320220,100002414210010,100012024200214,102402000204104,102201431120044],
+        1412200200200012: [114014112300100,114030034013101,100002100412200,101013004001421,103000014011004,103200000101100,114202244101041,100122310020400,112423102010012,102112022001414],
+        1012301002111444: [103340041403223,112002110220340,100000221020014,102003224000022,100010031222001,103001114001210,110043222124300,100100420400004,102023001320134,110004002130020],
+        1201144002420322: [101011004212201,110032022002020,103031234000122,100400110020244,101042001021012,101100104002023,103230011412301,100400000010020,100124021201021,100411201002420],
+        130240304000021: [100022211042104,102020014002022,100100204230423,100423202201102,103131000120022,110004021102300,100130001021040,103000034040110,103100214000400,114200122301402],
+        1024133010302002: [110130302012020,100000211021004,102411134020204,114032200030021,102000000224012,110210120000001,101000120303020,102000001133312,100402000020413,100011044210004],
+        1010420010110213: [100402040012140,100404400022030,101001231111022,100404002201203,100402420022012,100021420004400,100030424340022,114140304003102,100110300003140,110012220020220],
+        100200210113401: [101214200300004,114330120000222,100200241001404,110001440004103,110010022202202,100003030202011,1000301003020410,1014111023013000,110320044420300,1003300020121100],
+        1001400300112324: [102000000210211,111010204401023,103142444002002,101200010300001,102211300204221,112002132303300,114420232314210,100301004321221,101104100331011,100020000410313],
+        103033401014214: [110311200403410,110200201311102,110000200420204,102022120211140,100101220411134,110011120132000,100302010140002,101012340321223,101002034212140,103001000113103],
+        102400223110011: [101121211101004,101114101012020,101001304001101,103000110142041,102002112041034,102041111020030,110022001201023,100000040001141,103101124003110,112401144042000],
+        1433100202213020: [110032022002020,112032040234431,101004310324302,100120040400011,100124021201021,101240404044020,100200111001432,112213021100032,100300141002203,103141100112400],
+        1000311110100014: [114040204014042,111230032242001,101221031020331,103230004030322,102102001341000,102300200221021,114024104032203,101220004012040,102112201341440,103012204010041],
+        1024432400212222: [112224111100141,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110021340020022,110210020104031,113130020101411],
+        141102310010040: [102422114040010,100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,102020004001311,100101101010100,100301020420101],
+        1001022400033031: [112004001122300,101301124222004,100124124103003,102130004020041,102002000242023,100000204104002,110200421101001,102120040212043,101101324001310,110011002133011],
+        241142020002041: [101020201000000,112404124041101],
+        120204001003300: [102343230224321,114201104111034,102310140240012,100014204201000,111130210020000,100311134323020,101232240300002,100141101044100,102132210202100,102132401400002],
+        1120030202401014: [112113214020100,103300344012201,100122200012014,100000130013400,100011200201400,100001321032243,100201104224131,100002100204114,102211430202033,101031321022412],
+        100202310004010: [100110210024121,100141230401100,112220010202202,100030044340120,101210021011110,100302124213224,100020100200010,100000024100431,100400000033202,102012004000242],
+        102312022030011: [110000204210130,100100100422103,110020134410001,100021140000322,110010011212411,100300020142022,102101002004300,102043001021033,103230010114302,101210211022100],
+        1111121000043000: [102033021130021,114410012310230,114000332303001,100022224312021,114044240023401,102101122004040,100111100013032,102121204101001,114422104140213,103042031400033],
+        110410003240300: [104111021244202,102100001444023,103220301400000,102124231401212,114202024111304,100210000430203,112002200201220,111211240004002,111200232204041,103201211404114],
+        100003112002143: [102240120244002,101003204000004,102204424033103,112010412020141,1002001101203410,104223421402434,110020102120001,123300114110104,120410102000030,1111320100340242],
+        100010010400100: [111320012221132,102302144110440,100002320411400,100143034304100,114021002331014,100041004200042,100032024202240,102144002001240,102020224000000,101242101020042],
+        132300002101003: [100001300102001,100220101204311,112033124022002,103040044010112,101013114001130,110022134210202,110110102042312,110440211340302,100001300000022,101004104010020],
+        1102000110131201: [101020000300112,102203344011410,100021324100000,100002020410020,102012220241003,111120214102000,103130020213032,101430211012120,100204021000012,103302140112020],
+        102120412004000: [101300340341000,100111341011011,102401001400103,114421030000000,100130200020214,102044001440122,102300021100000,102400304042142,102223314042002,101200040300300],
+        100010222022030: [101201111021101,103131044031101,101001401034300,120001020012001,102121042000004,114304304030022,100000220112324,111212420010002,114132020000020,103304000111011],
+        132032404422002: [101220040300414,102121211343322,1320004203402400,101003140301001,102410001111322,400020203022020,113210210400400,110102000002203,400100441040022,1302200002412211],
+        110000222100430: [114410024110002,111200210001023,114402014112002,102032022000041,100020000120134,110202001212002,102342022000024,114000222330121,101401204042023,100113021020101],
+        202010003104131: [103044010120003,100142011022211,101000401032212,103133031440020,100110021040020,102300121000004,114000242303001,102021111411014,103003101400121,114210002324000],
+        214023340241121: [101221020040220,100103104302044,102020004000014,100000211023014,100201111002224,114242410001010,102122140202012,114202044111100,102013420220240,114212100211223],
+        230021400233213: [111202004134000,111320012222200,102110314002123,100111121000000,111131124100300,102113100203200,101002100324041,102021200243200,101000004040002,120000010010420],
+        311002200232224: [114012012330203,102100020211003,100000214102101,102230121123030,103020031420410,103100124003243,102033200222311,102000110224002,100100104102000,111204302220322],
+        1010400043111032: [101100004002101,102121130221024,100031404344111,102001210223212,103113014002100,101002210342202,102034001100100,101400004040120,102141004000202,103030034003020],
+        1134100000000200: [110041030000202,114412002310123,102000104000041,102100034132002,102101120211200,121000000000100,114021014023400,111200440012012,102101020314221,142220010022203],
+        110000042232302: [101423400300400,100003101003001,114301120000030,112004000214201,102221002020200,103113211441220,102300104020420,100010320201332,110004224210020,100340111000001],
+        1001001011140010: [102141242001000,100121124234400,113000110124020,100200210002032,102200002021302,104144130014121,101221024231200,110303042210442,110114012012120,114224420001001],
+        1413040022003011: [102101324130010,100102004100201,101400300300111,100100204101010,102114020210202,101200200302210,102434211400021,100003000412141,102000032043210,101430001014014],
+        1041122000024121: [110023342101220,101001421031220,100021004310222,112220322030220,110313312021120,100220214333200,110330234422000,111000034110311,102200001002100,100014100124121],
+        213123410131410: [103024420121003],
+        104120201030001: [114300304001000,103204000110000,114203202330210,110214110004122,102300121000111,112021020220112,102000401102000,114212000211101,110021204411214,100024144201210],
+        322001302013220: [103030411422014,102412044040011,110021002124000,112200030203124,111200302220111,102004020224404,114201024101004,103243204020001,103412020130043,100400042201003],
+        130020004000100: [114000044020204,103044010120003,102320000221020,110142020400012,100142011022211,114230344103210,100030020104423,100102011010000,100000001021041,102000000212122],
+        102000032000030: [421010020300101,110020102030110,400220020302030,1320123230012100,421400202010301,141021012220010,401012402004031,1400122214300002,1200002114313302,1002220011001240],
+        1100012002230021: [110021220021121,100002120412400,103322424033024,100010130140100,100001214302342,102233204000002,110301020401421,112011011132021,112022004000001,101030240322011],
+        1003010200022021: [111223402220443,110430000400002,111121102240240,111320022200100,100300001002041,103032201404142,102203001120342,100100104302010,100201210430001,114022042300011],
+        113411421301032: [110040022130003,100030430422242,101120014204000,110014300001402,100100014230110,111002132202012,110201004241002,101000131142230,100104044230000,114022024012213],
+        130411041440042: [112224111100141,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110021340020022,101010001000320,110210020104031],
+        1042000032143111: [110104112010103,111102004100101,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421,112042110220004,112203221102231],
+        1120140104114101: [112144002012040,102110040210100,100014424203222,100120200402020,110232200421003,102140434004314],
+        1001200001101011: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1040043023022220: [112042210240113,112003022001322,100402322200000,102211400212122,101420111013041,111001024412012,112020022312414,100114110003220,102203040234024,103100334001032],
+        1044040413200020: [100401140034220,102140041342420,101013111000000,102102131340404,103011100120201,102002030240400,101322200340000,101301420312101,102013320200210,102000040221010],
+        101242221304324: [102040431121110,101221020040220,114111100021420,102212000200124,100300310140241,100103104302044,101041030320401,102141212000200,102042000222002,101203121020430],
+        1001041111000202: [102100001411312,114041010012000,112000132402200,103134244000000,114022210020000,114101022332103,110200014242110,110232044241140,103040124004000,102111340102001],
+        1002413022021002: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        1000022210010013: [102101324130010,102140000212141,102424114020143,102023021321020,102114020210202,101200200302210,100001300100302,112220234010010,114011012302220,100043031021303],
+        134212201022013: [101302101002110,103221220100201,102102000002043,100244401122022,110323040404100,111110234102140,102330104110020,101012220320104,102041211411101,102110000212004],
+        100340100212031: [1020110422203030],
+        1023004204100010: [102000214004032,114031004022301,103004324010014,114430000004001,114000042300000,102011004002201,102221144011031,112011120220402,100000104200032,111021200021002],
+        100401000101034: [112004202302034,102122214131011,102100104000040,100023031000024,100010044300003,112120224040040,103301410110110,100020004101012,102311011000200,101032001032200],
+        1400223342434010: [100032304102001,120300311344011,100013000001010,103441300124002,111233112220033,114201012323230,111100014402104,102100321104001,121000311034110,110303202000004],
+        1100101010110200: [101201104041401,101402011014002,114410012310230,101423011010400,102141100210112,100001410002012,102230220200002,114130200001000,100022224312021,101011104014011],
+        200002321334242: [114220040000201,111040032200021,103030040121410,110240134211002,110022102131032,102241044033231,110000312201003,110011022130320,103004004001222,103200314020032],
+        323310014122421: [102011301443332,101000024000234,112001002031220,101022200322200,100000101020001,110010314200012,110110202002010,100000314240000,110122021340041,102000022043221],
+        1013223040413212: [110400022010030,102130411411444,103100214000130,103103204000110,114040410020022,110000400030340,114142102344221,102404004001203,114200100000143,100004120102024],
+        1001012402400400: [114000200020423,103133114000010,101002000301002,112000302000004,100024210411201,100021004104234,100122010031003,110040401220110,102120020200301,102121301343040],
+        1020203430213120: [100002100124101,112003100241220,102204304000304,114003320044100,103040004011113,103030130100011,101110021040110,101040040300223,101124014000140,102144401410210],
+        1000413314131102: [114032234033303,114300124030100,112011204004112,100003000002034,110102022000200,100202031002101,111000004401312,100141401002001,100121114230123,100003120410040],
+        244003141120022: [111001440020003,110200020010003,100002214100100,102120104003011,102120402000014,102000200210032,100041000100422,114020002303212,102103132002023,100022200410202],
+        1104100004210142: [100100331000022,114222040214020,110200004210000,102032000223300,101000441140230,100142221012003,111300214121201,100100030402001,102202021303043,110132124400400],
+        100020010002004: [100022102100243,241221402002000,1030200104020421,1000102021230333,110344021203140,4002244101001011,100022020402123,101212413013223,100004424041022],
+        1121121410102101: [102121201340001,102200211120103,110400242110410,111302204123234,114132040223044,100030020423044,103013104002044,114211004004210,100404202200223,100034204310001],
+        1032130214302214: [102001444000222,100200004301323,110010030440201,110020004414024,101400134043222,100010400013202,114340312301134,100031220121003,114310242320310,102110021401100],
+        1011213412110330: [114011002300120,101221004042212,100303111000101,101410014021040,102011101321222,100010001023120,102002101120132,102242210200010,101100320320310,101000004211110],
+        1012000202400223: [102002040220110,102141220210212,111202024134001,100000014100202,101012104001020,103101031440430,111422202210212,110213142242220,114104332310202,101210120302002],
+        213023043010001: [114001330013202,111031034114101,103301034021201,114011114102030,103043311403202,100321210142302,100002001032110,101022401140100,100034220000013,100111211020234],
+        1044140023201100: [110443000000102,102430100200123,100040214102300,100002214202010,101424010303040,100034400410112,100432301011001,111020012203011,100100111043114,100000044241022],
+        1032002101243121: [102140024002342,102312120222342,110002004200112,102020010221120,112012000232203,100000241020200,102143121343400,100220001000401,102101004002030,102303130242002],
+        130020031300041: [102310000222133,114111000222110,112034040231012,114104310000002,102120001144202,102130201140012,100010204202202,112422320200210,112100211100021,110040030004102],
+        130231001400230: [101221204230013,110402412220402,114111000030014,110340342021001,110124022140001,103221401202301,101200120303240,101000311142402,110001311304140,111230402210020],
+        1222201432204100: [104421312102244,114131014101010,102240214041033,103010021422042,101110000010122,102100404000021,110323002022000,104123302100200,100034004212222,100103414300020],
+        1040142121420240: [101032111230411,103010110120020,110100032122000,110304002000013],
+        101322000230140: [102102430310202,102002301410122,101010000323030,101001414212120,102142020212310,103304004023413,100022201043312,111300032204432,114142200030000,100030001042331],
+        100200200031002: [111120014101000],
+        1101202141103042: [100000101040120,102323320240010,100122124300402,101022344002202,100031041030040,102112101020021,114322304002230,100010004200110,114313044003041,100030141000000],
+        100140444122022: [111200200000232,100101001011114,101430004040203,102210314111120,102220024122101,112022140234004,100143440001301,114102104121201,101121000303320,114110034120012],
+        122002420020423: [100002100100320,102043221012112,102024401440202,103200210100110,102440031411200,100023014340130,100113210103120,100041430100100,100432200030121,114121144001400],
+        1032041310004020: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        121000000401010: [100440000030040,100023101001004,102101000233302,112130010202041,103210210100210,102012404000211,101043004211000,112340340200112,100001000010010,102141010230441],
+        1020402012012134: [100121230031032,112000431120410,100122200012014,103042024040104,102304104110001,100104211044110,114241222321321,114021002302020,102313204114304,100013200100011],
+        1004002410242200: [103004204044030,114111042314242,100002210100000,100101001010214,102334004110210,101004004000022,102331410242212,102200301122023,101021111004000,110204042020220],
+        130230141020221: [100000400000241,111102214104403,100140024230240,110021340020022,101010001000320,113130020101411,101022021030201,101000031010000,110000400440240,100130334030100],
+        1420210410211000: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,112003100241220,102204304000304,100301104104210],
+        1430020331140440: [102001200221011,103101024004200,101000004010012,103024000103302,101301014220002,102202004011044,101012044004042,102020304000321,100104000101010,114040100011424],
+        143302343223100: [110102042010220,101020124000413,111210000001101,114013400011030,103004104010210,101220024041000,102010300201414,100202200003011,114330432320002,101413004041201],
+        101100411240000: [100111014100342,102112300201410,112123142010120,101002321032002,101121100013002,110240202042221,102010101411103,100010400002103,110201004240242,114200002321300],
+        114124122231102: [110102401201204,102400100230000,102414034040100,100212030414010,101200020303202,102020041321410,111340300010010,114120420223002,102013224003020,100002210201212],
+        1013203121010014: [103200001403001,100003044300001,111110400340141,103200001423140,100033334104402,124302202010112,110002004200210,100011004104011,111112212214110,101003000323004],
+        242110000000223: [100020220410142,110000412003001,102011331131302,114000230023300,102021204013000,112042024000020,110022100044100,114400200004310,110003000024101,102400401412102],
+        100030110410012: [110140332002220,100431240001030,114020204021302,114002120022004,100011004341114,101230000302010,111002202200024,112241010203003,110300032004002,103000204042111],
+        212140002022024: [110403302023130,110001004204310,100010311020030,114001004100003,100020000200000,100141230020203,101031121003021,100200120030203,103111201443022,110101214400030],
+        101210300314301: [104101321240004,100020204211040,103440104004241,110213010400012,112313000202012,103010144014002,101112020330001,100012020121041,100402002201240,100000234202000],
+        103431420040131: [100000311221002,101120321040104,110002300420010,110021002003020,101002004004012,101024000320213,110210221302403,111202020000412,103103121242024,110202401311401],
+        1040210321213131: [110000402130200,110210002110430,103024004010134,110102204202001,100141101040123,110422420030000,110004102001020,110040002032114,100120414100102,102404224041131],
+        110204341204200: [114201010001201,100030024300201,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100,110012404201130,102311210240013],
+        1134012004302203: [103102101422031,101421100301230,100003414100400,102022020204430,103214021400010,110100022010014,111110420014032,102300131102000,103144220102102,102300010220421],
+        1104221204000312: [112042002302024,102230010201400,110100232210231],
+        1001010120014112: [111410210001002,101023020301100,110200332041001,114000332302320,102100221341001,100040004304002,100011301000021,100100001040210,102014001441210,100013224103322],
+        1121202242010140: [102424204043100,100300211000020,114310200002400,103211220100010,101202201021310,103044004010022,114130020222342,112301032022414,102103100310300,102012014002001],
+        212223001031023: [421010020300101,110020102030110,400220020302030,401012402004031,1400122214300002,1200002114313302,1110002442211200],
+        1122020000323210: [100303101202010,100201244032040,112012000212410,110022134202000,112000102000300,102000034013010,111002200040000,112010102001040,103012100122324,100022234100402],
+        1011311222000000: [100131031020002,102323304112342,114003222201103,110240020100212,100022204300000,112012211120102,100101040400110,110414011212320,101002204001310,102203111103200],
+        102000144030020: [100144100410414,102022001101400,110232400010300,100312030012210,101120204202002,101043021124401,100003010000000,100000404100023,110014301320111,112413022010030],
+        100002300002001: [100102204300424,102011041100210,101013234000010,102002010224011,100102440024402,111003210004030,100200020320224,114300104034104,102002221442200,102040024010022],
+        1141342313200112: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1441002040042221: [122020000401001,103213202221202,1200300001400200,1422242000120411,1310011200200021],
+        1002104301212122: [102302024112212,103000020120303,100123000422310,100000040410034,100010030122310,100003314100400,101443104041443,111210102220243,114002410041201,114014212300202],
+        1000100240130011: [104404322124241,102032031130301,114030234020304,102200124012000,114002120023020,114421000001111,121400013334402,114413200000230,100103201040210,144000213202010],
+        100012240040012: [100222011211021,114034030020130,114031112210241,102120341340120,102422310203100,104134440011201,102311021104000,102104220213400,112021011112000,114224200210241],
+        101240000130121: [110000100422111,114010314101200,102341014010003,101000030321400,114132202312102,114322134002204,100002320104400,101013024002120,100021110200330,110322110010000],
+        100000000232412: [100023421041402,103101224000011,101010224000130,101144134001102,102200042000104,103002144042123,110012220002021,102304204110040,100210020410010,101000414002041],
+        1011140130320011: [100223214121011,112024121130304,110004022000404,103020210101200,110010012102144,100413124100101,111002132202012,112000111120040,100402300022230,111004012200303],
+        1040331020100220: [114202002324000,101400344004430,111002032144410,110043440012000,103422400130011,100022101014301,110140422120001,110030101320220],
+        110004011011110: [102120101340040,100024114300020,102424311110001,114003234102244,102112434004041,112430202020210,101412044042002,100030101230302],
+        1103103010402032: [101003204000004,102204424033103,104223421402434,110020102120001,123300114110104,120410102000030,414300003320310,1300113414104011,1300000000422020,1022122002201141],
+        201321003020230: [100030231000344,112311011101001,110100124402042,102120404134413,101100200330040,110040212000010,114102124000200,110211202030440,114440012312003,100000001024104],
+        302101132112303: [110202400003213,110001012101334,112020114004303,100001114302424,101222134011002,112113012300242,110343232021004,114131044002441,110040142002100,102202040232030],
+        1020301141112011: [114020000030002,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002,114310200002400],
+        102114011311020: [100020121020300,103432001210300,112440134041000,100210240013000,110401214242400,101044214042221,100033201031241,110010114210202,102141000313022,112401010202200],
+        200421432024201: [102234010200304,100314010143240,100012431020012,103042024012204,112210204003320,102200100204220,111200104100341,101124000303020,114402000000000,102201111111000],
+        204022420041320: [112012000220043,102414000203000,111101400022211,100024111043000,103301101400021,111320100000001,111101002213022,101032440340020,112002202000010,100002011021004],
+        1100104244331020: [144131233204044,114213002340022,120130001004000,110102030010210,102220211120002,114014010033321,101400104042212,1003022312322100,102001244001224,103441112000230],
+        120104110100000: [100410410002011,102101224002210,110311232120010,122203322100011,110330022021224,103021000110211,102201324110204,102102140230141,114024030010010,111300224101004],
+        1031414000430410: [110143110121200,102111421401032,120002030230003,102012021101203,102000334000402,101020324214241,103033000141023,111122310010100,100203424332142,114010300012240],
+        1000101010404210: [102222111120010,103200224033413,101210001201243,102300440221022,104120201242031,102320110240231,100100101011200,100133001220421,100122204301312,101022220322100],
+        140432120102012: [111130104100013,102220014033403,112012224000211,100420301002201,103401300130041,101000204011334,101401001100232,114102214101001,100020021040000,101040121034010],
+        100342201002000: [102010114022011,103340041403223,114002200000421,101020321002002,114302210010001,114030004104220,102443211401140,100000221020014,102003224000022,102301041000014],
+        110432321140112: [101000411020133,101414020330014,100201231000134,101010024000011,100331424210202,112010102030100,100232101202101,102204420200200,112100321104011,100011024312240],
+        1001022420021440: [110220100000102,102100321320100,102102011414242,100041004100221,100000000412112,110000010033022,102330040242220,102310400240000,101201340300430,111320312222220],
+        1001030200040412: [102101304002000,101030221000424,112000212303013,110000201302121,100403010031203,101110401101431,112134044004324,112130024001100,110402020104000,102122000310041],
+        211211212034020: [103000004002012,100002011042020,100301421002002,100202140000111,103200020111014,100240101000030,101003104212220,102302211002004,114030310012122,100043021042120],
+        221032403313010: [103100314001030,114101004121020,100040301042132,114010040023411,102001010222103,101021104212100,102102241341004,100000101030412,103031000121000,102020300220201],
+        1420301312012202: [110320202023400,111431110000042,110301030010140,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022],
+        1004400413122011: [102100330211131,100100110411000,101022024040420,100102041041010,102042041133200,100004001232022,114134310001022,103043401410010,103401144020023,100103010001340],
+        130230100301310: [112000222310334,102010104000124,100004001003032,102102100210000,100211024341103,100100104303313,112000001132100,101024211030001,110400002110220,114013402302413],
+        1000200302200200: [100002200101330,100000124302040,114000000014113,101210011042021,101122011100024,100400020020010,112420044040112,100422102201100,110200120003024,100002341030400],
+        102010001144040: [114200024110022,103012100110444,103002201240003,100211104104241,100103001220002,101000404012321,102230022023230,100014200003002,110320022024110],
+        110200114010040: [111323002200100,100021044202120,100442004304040,103102420121202,102020120201002,110001000034023,111041104111423,102130000233203,100014030122210,110220001312011],
+        1020330401141302: [111400124420002,110201400400024,102401000201121,111013232200403,102112220202010,102214104010210,112010120231202,101011101032340,101013411000000,102100001400004],
+        210041041102222: [100301031002201,100000224311320,102120121212031,112000400223100,102022031324020,100211111003420,100344041000232,103123314002423,114310332300121,112322031101041],
+        1240030220122111: [110222020012300,111012104400010,114244120001041,102120111142201,110010011212411,100300020142022,110102322040111,103230010114302,110010220000210,114010304010030],
+        1020021240140000: [111000100012002,110022140120012,111102010012102,110024140142000,100143040411011,110221322123012,110214044210422,112000021130124,114021002302002,102212104013112],
+        1102002041342001: [102342014111202,114102020422002,202013001110004,101200020302200,1320010210001300,200002003223300,104211122232004,112303040200001,100224410030410,1101040131142040],
+        1001044222104201: [102340221000300,101000130320340,112401314040311,100110020031042,102011004013000,110422102110221,111200122222334,100220124221000,100402002201002,111110004402021],
+        1100004201021303: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,102121100232012,114000222213021],
+        1402100032022000: [102012220241003,100402120030401,114211202324143,101200314040213,103302140112020,114000012303410,100000004300102,102120401022130,101001020331204,100401414322303],
+        122120100003231: [100023031021040,1000200300200300,1000012400200022,1031400000012040,110042001100100,400102021402220],
+        1013204030122134: [100122004300410,102000104012232,112400202020003,102000224000011,101212040303123,100021021000101,104240010040022,102030200240232,100011124202310,100030300124130],
+        233320004200012: [100024000110221,114130014001202,110010220103020,111004100022110,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411,102131304003000],
+        1022233030300201: [102101211411000,114110200212210,100102224033421,100104101200201,102021001411110,110041102012100,114222010213042,100120430411222,110014314410140,100022014302423],
+        121020001104001: [111104102242110,100002200410230,100044010200300,100003010413400,103334120114003,114032124013234,110112131124012,100440221001232,102330104110220,100020311020134],
+        1110110103400402: [102030000223410,111101312240400,100231124320130,114000010012243,100301314313133,101332011001000,103310401401023,101300130344001,114031020030012,102122024020030],
+        101430421314210: [100122200020013,100404404302042,114010010024103,100004004210020,110202220010410,102331104112002,104100010014103,114132002200241,102330144110211,100404000020300],
+        1021403341210330: [110401004221204,111112000011222,100322444314002,101003301020022,100102431021300,100001030100030,112012004004000,112044204000441,103141100104002,104110100014103],
+        1131222040201202: [110020000440124,101340424220112,100122211044424,103432211210302,100400100022034,112201401104040,100020230104020,114110412311002,113400100100120,100212324104022],
+        110004012140200: [102023210204300,100130101023140,100141314304233,110000004422320,100021304210300,100044304100100,101012341111024,103132204000234,100020001044140,102403104002033],
+        1010013220020020: [112110020230222,114212004004022,110110001000304,100310110420131,110001200432201,103012010110411,101034110320031,110140024221300,110041312130304,114300012300100],
+        111220100302000: [103443024000000,114030204021200,100141321000100,102000104014100,114002040020012,103200130134002,100102104230003,100014110200201,102304111004232,100021220000042],
+        1003320021100100: [111040032200021,114123234100223,103030040121410,110240134211002,110104000024100,110022102131032,102241044033231,101003221141020,103112000120002,110000312201003],
+        1104000220000012: [110231040000334,101024014004200,110432120402013,110213022123233,101231220303431,100030000004320,102013201103314,100210020430111,100230104321104,100220100434342],
+        110414243322032: [102031004002014,103140100210304,100024210103011,100002421031242,100000302211011,101212010301103,103103000121103,110441102112020,102020300201021,103040230104020],
+        100024210400401: [110404121141042,110033200101214,100200141000020,110000402121410,110222422114010,114100100000120,100102004033200,110331101334024,100320220424214,112021140222013],
+        1112010142121100: [102203104020204,102333001000101,100000131020201,103441224001010,101220434011130,100120201022022,110200400001124,114414012320002,100010000201100,111121024402221],
+        1040010033001012: [111102214104403,100132004231230,103043334040203,102120131401230,110200302024000,110021340020022,101010001000320,110210020104031,113130020101411,102041210224224],
+        1101002030120130: [110400234221021,102123140310122,114231044000402,101410030330122,111000144410222,100040001022000,110222241300101,101220300304400,103222120100140,112220024014003],
+        140014320300410: [101042410301221,114201010001201,102304000210204,100030024300201,100020120101000,112143144020012,102220310200014,103231224012042,100110121040003,100040300102020],
+        1221301004341230: [110441234224400,103100014031411,110000300424304,110104422010121,110013122130200,114020204102020,103121221400012,102022400211311,110242100010130,110142432042212],
+        1023340021011110: [110411010000101,404130103212403,114124400000022,1104100000042000,1100210001041103,1200020222023401,1310001001103311,110432010304000,102022400114011,1042431100100100],
+        1100022224000401: [110001332120300,102101211411000,110003000420200,110004014411012,112000120232022,100002320113100,112240200202201,101420021010003,100400122201222,100222110000310],
+        232411410020040: [102002014000220,102203004042010,100020001041410,102410004024030,114402320000202,114014112302234,102141231343401,114112000004001,101004421020002,114003002301122],
+        104012130021200: [102123220230210,101110004021320,102201230200104,114123042312203,103012101401220,103001334010240,100214324104012,101333201002122,103200021404423,102003114002001],
+        1400001240000311: [111000232113233,100200013102111,100021210100004,103134204000000,100104113102400,100303404100220,102220202001233,100400040010104,113222010104232,111041200040020],
+        120231220000024: [102403001342000,100102431021300,110200212041001,100033211230014,100001211040232,100100024234021,112000321112201,104122102100220,112034300240022,102213204040044],
+        1010022120300411: [102104410220023,320424300313211,100430200104001,1341420023200031,101040020314000,1101003130212010,103220020131102],
+        1020210001322101: [110130314400100,100032431030100,114001030023421,102223300202003,114400202314210,102022004010240,103012000100422,102023211411003,102202031002304,102240231110222],
+        111203220301101: [102140020210421,102112401342040,100010031232011,110010002200040,102200024024022,100222101000100,101002111141200,114304104033020,103000001410002,100223401000042],
+        100001111030342: [110214024430312,100011014100041,100212341003212,112010220224003,111110010022310,100200001001300,100012104313201,110212310000041,100040424310110,111301332200104],
+        300001030003040: [102340221000300,100220124221000,100402002201002,101011014002032,102104101122100,102423114022101,112002010221020,101131201110300,111012030020003,114200404001002],
+        1121000002032040: [110111001300044,111000002202324,111211010001300,114030020020301,111014014401303,103210001422303,100100000022131,112042111120340,100101141042243,100101100022012],
+        1011120333000132: [110021000410432,100042304102210,103202000110102,102020440220202,101010010320112,100042000000000,112000021122010,100021111043012,102122101023020,110124041140000],
+        222422401041002: [100032041021210,110004301222000,111202012222402,102001301120112,102040041320010,103203401400132,103142111441040,110104002010100,114142044120310,110220410000040],
+        224230240230401: [102202000201220,102203011120021,114330432320002,101000424210014,102103122004211,103022230124332,110114002014221,102143002000204,114404022311000,102010010221101],
+        1414104014031043: [100214230412031,102324101000040,114022024010120,102102300313223,110021100020000,114211032334300,114210204000010,111113312111000,102300104023040,100202400410110],
+        213030320002110: [100220040142222,110020120040121,101040000301210,102130034023112,103100001422200,101330120302103,102111301402121,102010310211212,102210104011024,110042012002104],
+        1120132400200010: [100000430122100,102000231122032,114020002212200,110131111124000,110120001000140,111402002210300,110001202000001,113004020134131,102304321002120,100101020403013],
+        204033200000310: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        1000202020044010: [101042410301221,100102024100020,110040344210011,100003320401100,100020120101000,112143144020012,103231224012042,101000001001104,100030301030114,100110121040003],
+        1000100110113302: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,100014204201000,102103321411004,100400001001300,114113000004012,102140114004004],
+        104304111001104: [102300401000244,102340140222011,101043004000042,100001404100302,101011241140401,102400131400312,101101014004001,110000022121001,110030111010220,111201002222130],
+        1044020201104204: [111030212113431,110001030120020,102001111011201,103222004032000,110044320441241,102233034000002,110410122010102,101122404022022,112130004021000,110311110410340],
+        1000402212000012: [114042032210200,114404220000142,101100214003002,102410420230111,100404342201400,114440210000102,100000120412021,100030101041442,102210020200021,102121100212002],
+        1021202231111001: [101113140334114,100030310422011,103041020101400,103113224004201,111300402200003,114141024004011,110022341300320,101400002040042,103010101241110,101002101141202],
+        1222004024222012: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,114110200212210,112000120232022,102041220200010,100002320113100,112240200202201],
+        100011300010020: [110002412130400,112011010223100,112110001102104,110140304404000,101000011003140,110202022121042,110000121102001,112301031103203,110222431302410],
+        1001033001300202: [110001332120300,110003000420200,110243234240200,110004014411012,114110200212210,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        131120124134240: [100024000110221,114130014001202,110010220103020,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411,102131304003000,113030232400401],
+        1213101110133100: [100100021040144,114101404004011,100102404100430,114142044000010,103020241402220,100104020022212,102023110212012,103321124024003,100040010010104,114210134114310],
+        1443101040023020: [101210010304011,103120400210000,114144004124200,110011424414202,110234012243001,110000214202000,100040011023003,100123031023104,114223212320410,101004020312432],
+        130200411001110: [110210221300113,110304014433122,110200004243223,101000204001222,102000010200200,100002330412031,114020042302142,113420011011140,110020122000000,112020402001012],
+        1142220430002010: [103300121401234,100122200020013,100400320033201,110011402100202,102331104112002,110121112010004,102020131413423,114132002200241,114013012240011,102330144110211],
+        1004100220302101: [102000001132113,103020200141000,100120010421220,100000201041300,101100300302102,114011200003102,101020104000040,102432101112141,114412142320040,102100044000000],
+        110210033021221: [110011414240022,102202310203222,100042001020203,111142010020301,100010044300003,114130210231020,103301410110110,112114324040000,102124031023100,100204104320231],
+        1000040200134210: [101200101021000,103000024014022,100040404102010,101020404210020,100001001021002,114200104001010,114040414014202,110002110021301,101032010322010,101000100340432],
+        101021323404101: [110130314400100,100104010021241,100032431030100,112102024020402,114001030023421,102223300202003,102022004010240,102102010214442,103022110142241,103012000100422],
+        1001003100310112: [101221020040220,110120144200000,114022412330004,101200221022044,100103104302044,101041030320401,110241112020204,101203121020430,100002004104004,103130021444021],
+        1140002220010104: [102120031140142,101021204010011,100404410022320,103012101410102,102131304003000,102220220201011,100222044100141,101400000300101,102000110222120,102134144003010],
+        1403211021421001: [102402124022000,100200200412034,102232024002401,101012114000304,101102120301114,102202141120400,110120224221100,110000041322002,103444024001001,103122404000344],
+        100100022210230: [110210400114203,101101300010301,101122200300011,112210201100012,102120200221403,112001122302311,101001211004233,102110314001121,102303011002000,102314100240010],
+        1000100201441100: [114101024120020,102004011440212,100000001021013,100011204300012,100101234330123,110024000432310,102012101443110,110032220022103,102102104000102,102302340241312],
+        1010012300121104: [100002200100100,102032022000041,100020000120134,110202001212002,114002420040210,102342022000024,114000222330121,100113021020101,100000014312111,102203214040300],
+        300300013100340: [100324140141402,110000410001034,103204301402123,110022002120332,111110230014001,100210200034304,110102111204210,100301101000021,102120244004000,110020140044140],
+        130000131310000: [111002100000102,114021010040140,114222302321101,110014024202014,110220130100010,100020011030330,102404221402210,110203022032320,101300004233220,110444031144430],
+        222100034100230: [110102042010220,101020124000413,111210000001101,114013400011030,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011,114330432320002],
+        120300021320132: [100032041021210,110004301222000,102001301120112,103203401400132,103142111441040,114142044120310,110220410000040,101030004010034,102201411100212,103100104000121],
+        1031012001013301: [102004204041000,100104341010424,100002320411400,103142210104020,114400240003003,101022001002030,100002104104001,114000212331142,102321014111000,101104040302120],
+        1004011201103433: [100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010,100004001000211,114230112330402],
+        1022431140324140: [102133011413110,114022424102243,101223020300040,102034324000220,102022400203211,101230020303000,111340130010314,110200422121211,101214240300041,110214220002020],
+        1240111020121000: [110112102211042,110431442110400,114011120021012,100100111041320,101420010300310,110000004210112,102334001004100,104100001240034,111200100000400,111321424123422],
+        1001200214012002: [110001202003004,103234101420113,400013004332041,102114101444001,100022121031020,103140024002140,101004224000300,102141010230201,100012324201224,100020210101002],
+        232001300103214: [102001404012100,102122214131011,114223204100010,111041202200140,100023031000024,100020004101012,102402000201011,102311011000200,114220000000024,100013040100000],
+        1014000403002220: [112200102024122,103000034003300,110302322102041,101003414040023,110202222130000,103122214003002,110012102130001,102010010200000,110200300003210,103110034001104],
+        100101301003230: [112000001123004,103400100131022,101004141000312,100030121043301,111034332202000,114300014030310,103304401402003,114142102200122,114010234030120,102110004000012],
+        100002000042001: [1300422220310121,120032010212320,1023422111011102,411001103222300,411311131413022,1220101103414143,320440200013001],
+        1034342000020200: [110130314400100,100104010021241,112102024020402,114001030023421,102022004010240,102102010214442,103022110142241,101002024000400,102240231110222,114023142202040],
+        1123410221410224: [110401140004202,110040002034100,110044020020202,110301311303102,110201434430102,101002020342002,103200001420012,101201021021111,103210000112442,114020132334212],
+        341141400041030: [102104004021010,111221000010010,102320001000230,112211222041401,102302021000041,102110111410032,110011021320030,100402214322223,112002101120233,110403412221122],
+        1110340032032312: [102001030224000,110224032120040,100240404100140,101201030301210,100340230424131,110001004210440,111002010001321,102042404001104,114020204020041,103213101421223],
+        1124000110100304: [114210200002420,111131414401020,100102030422220,102223100204131,114300420001431,114021114021002,110100021200402,100030000413102,102323104112200,114001212300101],
+        1031001004021124: [103203201100220,100021224313320,103420134020000,102100344000130,110223200102231,100020000100311,112221010203222,100304311002100,102112201022001,114110000210010],
+        101442000044002: [100000024341200,103011004040001,114010000040102,112022230230101,112031002000022,100000300202210,100412000433214,100210124030101,111200210001022,110112130003104],
+        1003221221100420: [114011130043110,403102030210220,102122014134004,102122011343402,102040032400410],
+        1441220003200110: [104101321240004,100020204211040,103440104004241,100022404242424,112313000202012,103010144014002,101024414220000,101432221011020,100000234202000,100023221020004],
+        303001001012002: [100102024100020,100003320401100,103033044023040,101000001001104,102430010202411,102140031410024,100001301020220,100000100010002,102240000204030,101023004000311],
+        203000024021000: [112213000200301,100003224334120,110204130004030,110202120003032,100322004314021,100404000020012,102343301100440,102410434000220,110110440020002,101101000330302],
+        101000022141301: [103111001422000,111244302220204,101400004022100,101114000332010,112112211102024,114031212300211,102013110201200,102111022001024,103210431422030,101011311030141],
+        101220210030110: [112000124022430,100212030412303,102302120210122,100400300013000,111010012201220,101002104002020,100300304101302,102220211302322,111322300013200,102202001300342],
+        100134224400001: [101221422120021,100001000002210,100400320033201,100004130002301,102020131413423,102144012001113,114431110001011,114243004003002,104130111240040,102422314024300],
+        1030200430101420: [114100300002413,101403204021000,110400012110211,110102141123102,110130001303042,102121000201002,102200201123212,102122320204201],
+        1004240010210020: [112210010201431,102102030214401,103100024002220,102021420233130,111130410020021,100044004210004,100320104321221,100003104100240,100112101024230,110010024420000],
+        1113023000401222: [110020120040121,110000100022040,114004142244000,102002004012310,102130034023112,100302304310204,101330120302103,102111301402121,102010310211212,102210104011024],
+        141120000004300: [102242304042410,102000201131020,1010120030012200,101024411001024,221104221024023,102123332000002,100202211200032,100142410401000,102131120310242,110002304201031],
+        1110302441024024: [100114234102203,114023224010002,110020320412002,100300301002020,103040424010400,100010104210010,112203010200014,114400444140020,114203004113000,100000404100021],
+        1020020042103010: [100002100100210,102420424042020,100010001032223,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100102020411200,114221030000011],
+        1100221400010212: [101400004022112,103002221400000,103110020210000,103001010101001,100022141030334,111020142144200,102100201414400,101313201003110,102303001102431,100141334301022],
+        211040010200200: [102424204043100,100113220020101,114031000022030,100300211000020,101410401010030,103240001403000,101202201021310,103044004010022,114130020222342,100042034202031],
+        1011201102000201: [101210321020222,100022110021010,100122044230200,103423000242341,103121002402240,120412001020102,101140304001120,130300211110200,100201202200003,100141000110131],
+        1140412010102012: [110104112010103,111102004100101,102202414041044,102140014001101,102021100220101,100230120001003,114000040010421,112042110220004,112203221102231,114022400020320],
+        1112000010202103: [114020010030200,100004402212111,104000011101040,110214202044002,111111000020303,110020041012320,103123434002000,111000214410000,102122101120300,103210010100241],
+        1123111001000240: [102100014132110,110232232034400,100024214100000,101013001000203,100104044100201,100000404301003,102100001400002,103202101404021,101000104000440,102023401100001],
+        122244000324122: [103224310130411,112210400414000,100102101220123,100402210013023,112200302030311,100000001210103,100202141010030,100220000432000,100000210112011,102041320202034],
+        1020010442013204: [102101004000411,114221312340014,102434121112224,101200210300413,100311204312442,103000020100131,101211204201231,103210021401223,111130412210000,100011300412123],
+        221230142003200: [103311011404143,100000014211030,114430104142400,100220121003120,103220114040342,112032000201314,114021034021244,100002000120011,102110101141003,114001114121130],
+        322300220440000: [102442211414022,110122001010214,102101204000010,111231012220013,110022300420031,114230230000123,100101220101011,110000141123103,100222024320003,103323001400013],
+        100002020002032: [100030100410121],
+        102443031042202: [103241104032021,100020114101410,111221222223134,404220140010113,1244000013132404,422002310200202,210111004010010,304130030001002,112102014020004,104112143430303],
+        223002221300001: [111304340002030,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,100043024210301,102014001130100,114022100010000,114321004030021],
+        102302024000021: [102000001132113,100041000010302,100110004103122,111321314133000,103031300144042,100120010421220,100000201041300,100000111034100,114011200003102,103132114002002],
+        224011130402140: [112142301101040,101000130320340,101100000330120,101214440300301,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440],
+        1004100002111200: [103122114004113,102242301122200,110030110122402,102143432000102,114001110033210,102013120200110,110120011014412,100011111022300,114032300011302,100234004033234],
+        1240310001422000: [110300000402020,102110221412210,103330421400224,102431400204010,102112042004203,114030100040000,100120431012000,112210204002124,101023410321122,101022030320100],
+        1010202012241000: [110041030411301,103301210142043,100002024200142,100400014321101,110033041200104,410110432000414,100000011020021,114002102300210,100034000410212,100304011002220],
+        1041101330000221: [102000200220320,101322410300004,114101004100000,101010221002100,112020104002142,101303104220020,100021030410001,114210204110100,100024141022000,101000010341231],
+        330304014040400: [103212014020132,101021120323020,100102101000203,114111200034310,102001111412134,101032201032000,103230040101112,112212002031124,100101001013000,102110234020204],
+        113042113000040: [102001404012100,102302200210010,102340120222440,114223204100010,111041202200140,100023014313010,114021040010311,100020004101012,102402000201011,102311011000200],
+        1031010414000000: [110100000124440,114233242330032,102012004002430,102020000204042,100241101003430,101001224000033,100101244232013,103000301221001,111020122111214,101012111021003],
+        210001023422422: [100020001041004,202421100022041,102100111403011,1000042010002402,1100001420031333,124000002040110,433020311213122,1321202200220200,130030004001124,100040220123030],
+        111030413000240: [114012012330203,102100020211003,100000214102101,103100124003243,102033200222311,100100104102000,111204302220322,111022434120140,103021024022122,101000220311120],
+        132000022100131: [102110140224010,100022121031020,100103240011013,100020210101002,100042420003120,101020120322020,100024321020243,110112410431040,100100031002000,103000244010320],
+        1002022242030141: [100022004302311,110101001301201,102104104001020,100011314203014,111133104102443,110041121310100,100420230030100,100402000022324,112332210202010,100210211211214],
+        100233100400000: [110220301202400,110210024220020,100401424300314,103101001422002,100040120000031,102002104011244,114200142324000,102100041413022,111140122114101,100012000101100],
+        1040012322011210: [112004001122300,101301124222004,112204220200011,110013202120001,100230040410200,103210004031201,100030300422112,100033001230040,102002000242023,102200014042201],
+        1420000112022344: [111040120022202,102141000230040,101001300340322,110100224200101,101210242120124,110014342002102,102031021440000,103040201222041,103021424001214,102100204000340],
+        1003403140221202: [110000212000300,100000010202003,114234324112000,102400001110102,120413040002400,102300234110002,102210014111401,110000401310201,110001004413010,102303104110202],
+        1002200202000230: [102012201321104,101002011001110,103012301401041,110043034212101,100022130100210,114442140003011,101001301000011,101200034044124,103042224001110,102110040230322],
+        220102002132202: [110342022000001,110100121224222,114403000001001,112311212021024,100030030422421,101120020304200,102020121321033,100000421021000,114132212313220,102020004000400],
+        140030100240101: [100420244300112,101012001030010,102230121123103,110202010012201,100221440000230],
+        1010240402000022: [100004101032202,112100002011214,114401022311200,114020004020300,110114130114210,100004321021120,100003040102022,102300420220003,101400211012100,110012112003243],
+        100030322102010: [100000211023020,101230042120212,110301022104110,110014101200004,102120441440200,102021000220100,112302302021203,102213224000403,100104024300122,110102142040030],
+        220112312420330: [112400104042431,110032412204130,121230313021014,111242402020001,101032401114024,110314040011014,101400414021000,114101012201420,104410222102000,102424040202123],
+        140333200401210: [101041441032123,112110200433212,103001020100110,100030041220222,100022004203010,101000044012401,103312300141010,102000300220020,104130230010032,101201300300343],
+        1000013100021200: [114210200002420,103010000100410,102203240202202,111131414401020,100102030422220,102223100204131,114300420001431,114021114021002,110100021200402,110000022203101],
+        130420120232011: [100000004102121,101141104004013,102303000241200,111120032212032,100012014202201,103242024032020,112012000220000,114002100044002,114033012301032,100220020410020],
+        112002232431024: [110000212001040,110020000431012,110034411301222,100132044303043,112002220220201,100402020013040,100001140200004,101014121000220,102120231120442,110021221012222],
+        210400430020223: [100001230201101,111102012220413,101101131132022,110010102132024,100010100000042,104120211242040,112220104002000,102223004042102,110410312121010,110330130010041],
+        1044210401142120: [100200440031411,100112224301402,103310101401010,111200114100011,101322224220202,112003000230001,110002120141023,103021000124113,101212020301403,114340022321132],
+        100114240104301: [100232214222204,100040324331403,112104212010101,100001104201201,102300221002020,100002101020010,112010202000202,102033024010010,100004001000211,114230112330402],
+        1021000411012432: [102322014113341,101022104001221,100040201012040,110021422000000,101120030330110,112021004003303,110331012224112,114100222310230,101002200301130,100011120000004],
+        1001040400024411: [112224111100141,100040134340044,103030411422014,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110210020104031,102041210224224],
+        111313004403400: [102110111410144,100031010010121,111141012240014,101041104222000,102203044043244,112000202310100,101012031033100,100400030013102,110000122101140,101210000302442],
+        100204240122101: [100440444301004,103304014020032,101221121020230,100004110000301,101310004223223,114113004120221,111210402244301,102100011341140,1120022020242320,102320231000001],
+        310100212100102: [103000144000400,100110011002040,100140011002400,124001030020034,103214000212400,134312110020403,103130121241210,124002000123111,100041011030000,102010121122221],
+        211420010120301: [100002100100210,102420424042020,100010001032223,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000,114221030000011],
+        100000010143230: [111231002242010,101010211001011,111220030010210,114042034104243,110123111300000,100004030411141,100412030034000,114000214012010,103232114040140,114010002240111],
+        100000240303020: [100020220410142,100222311000201,120202201010210,112042024000020,110022100044100,114400200004310,110003000024101,102020031103041,100003341032400,220202121014102],
+        1100302131422112: [100041000411231,102011001320032,102140040210040,114004000040100,102010031444104,103202300102400,114103200002100,102410010201202,102202244040132,100000001021001],
+        102122001241041: [110001112031124,102214100240020,111012114400321,102114001122300,102120044000240,112100012011413],
+        1100310201402143: [103100030100010,101400004022100,114031212300211,102013110201200,114023010024000,102042321440100,102300121004222,100042000102010,101401101012402,112000230220102],
+        1002200241040201: [101041301000320,101210004011003,101230044012202,103242311400421,110000310134014,114000012334010,114302200002200,100200024301301,110010204412200,111202010001410],
+        122300110322110: [111121100010021,110310034424102,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241],
+        203110340210130: [114011220041204,112022040242001,101043121111400,101100004022130,103123314002423,113004022020033,100100121000430,100421110431421,110030042203103,112020004002100],
+        1002000411204201: [114210304111002,102030010222333],
+        131001311001222: [100110114231201,114142204001320,101001020310040,112202104011100,101103044000242,111211030000211,103012304042020],
+        100232041430001: [100023104312100,114330144030100,110120314220210,103102201422301,111303330011200,102310401104120,101100304000032,110002142002040,112342000202234,112412104042222],
+        102043213000102: [101221020040220,114022412330004,100103104302044,102020004000014,100400001001300,114242410001010,102100200210002,102000220220104,102003321120000,114202044111100],
+        110440401004130: [102430231400211,102004021102101,112002012030102,114440240003000,112120302010202,100020010000104,102124200204223,102223211121031,110012020042102,110200012121210],
+        114312003000104: [114400344144312,112120120200440,112210040204030,112213110411211,101030400314212,100103114003211,111140014100212],
+        1000100012202232: [111000022202402,100430211011410,110010340040012,110014032101430,104421312102244,114200322333401,103010021422042,100000001022401,112312330200200,112020004000202],
+        114120334414202: [110041030411301,110001041213031,101110044200100,102411000200000,110414300030001,100030020011022,114100122342002,111202012222402,110033041200104,102000221442214],
+        240300330410011: [101041010324010,101000004210020,100011230101432,102210314111120,100032300010000,114140404123402,102130031410200,101224111004040,103204231200203,100010300414000],
+        143021320031002: [111022412140224,100212034221414,100222100402024,100121301023030,100020224310403,110000130020003,100020424102200,100014000022201,101121401110420,100200001211010],
+        102103030240101: [100223214121011,112024121130304,100202221212300,110004022000404,103020210101200,110010012102144,101020200301303,112000111120040,100402300022230,111004012200303],
+        231122344112000: [100011314203014,100210211211214,100002134303110,110041214411012,101000101022043,114420240001400,110032124211302,103022004000030,110211122020222,112400122020014],
+        1004212204000210: [102021010243000,100022041024214,140021143000030,102000021120110,112300101130013,114420304140020,100102031001102,102200000200400,101002301002124,112011004023221],
+        121140124341410: [112113214020100,100000130013400,103224041400220,100001321032243,102104244000010,103113010102100,100110301022230,101122100331113,112002040220020],
+        120041121012002: [100413011000000,110001202003004,103234101420113,210330042103020,103202004031314,422202100011300,102114101444001,100022121031020,102021211440022,100024101020044],
+        1420410200222041: [102010004001300,111223042243230,112122034041020,100000030022004,101202010310030,103001024020104,113001202210003,112212342010400,111000304441102,111122300030202],
+        101441103000032: [102040431121110,101221020040220,114111100021420,102212000200124,100300310140241,100240134323001,102141212000200,102042000222002,101203121020430,100030010102102],
+        1020322230020101: [112113214020100,103300344012201,102010202004402,100000130013400,111130312211003,103224041400220,100001321032243,102104244000010,101001010300404,100201104224131],
+        130030010304231: [110011011212100,101134030011000,112000244001222,103220211421421,110430014221230,100044130000101,100102110402220,100021041031203,101140204001010,111300000014233],
+        1020013022000001: [101210320301302,102100221340112,100114104101001,114002244103320,101023221000031,101400014040400,102012034000402,114221004002212,102100122002001,101000011021414],
+        1043332020010012: [110004020020022,100043010120010,100123044300022,114322024034312,102143432000102,102040010200101,102200434012013,112000301122111,100021301302122,114001110033210],
+        1044042103201010: [111101122102222,103000114001000,102242024030234,100003344214000,114400300000221,103104024000023,100002104201130,110120204222240,110043014410220,102322420210320],
+        101230231324114: [102132400232131,100114234102203,114001232300102,102323324112410,114400112311040,100422140030210,103000041402003,102000141133020,101141111100022,100001021003113],
+        1000220030201034: [103010000100410,102203240202202,111131414401020,114231020001120,102223100204131,102340202000001,101201410300004,110000022203101,102323104112200,111222222244101],
+        1030401222010020: [103122020213112,100104010021241,114101100211240,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,100022301000112],
+        122220103141240: [101020204214020,100131144232400,101001004220021,110232241101002,102104101340430,114020020001014,102201401001104,101003200300401,114132204142000,100001024314010],
+        1001143144011002: [102102241341004,114110242200201,103002020101431,102020431101132,101404104000404,100012104210032,100300021000040,112000300230010,100001024102120,111100022244144],
+        1004121201021313: [101221020040220,114022412330004,100103104302044,101041030320401,102141212000200,101203121020430,103130021444021,102100104002224,102020004000014,100000211023014],
+        1121000304342022: [101003410300310,102020114003042,100220001203033,100023121020104,100401404302031,102400024020302,111101114100040,102401124020410,324200002000200,112400224011021],
+        100031211130430: [111001440020003,102001000212142,110200020010003,114121000002140,100002214100100,102120104003011,110123042010000,102120402000014,102000200210032,100041000100422],
+        124020130400020: [112142301101040,101000130320340,101100000330120,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440,100033230420102],
+        141210102200030: [102100001001020,100143134233402,120011202033000,100003221233221,110021302100210,100100000004341,112032024022220,112002204021024,130342130221000,110032022014300],
+        123012411210140: [112000112000031,102123214020000,102022124012030,100143220410040,114002320022312],
+        111043020140033: [100040401020114,114202400210000,100302014210100,102102010214011,100043111020130,103112004004201,100122210402412,100002031210114,110213300002210,102402200200000],
+        103320000134013: [102203004042010,114203042330220,100020001041410,114004014011110,102410004024030,102032012000101,102102231400111,114014112302234,101004201001232,100002020101023],
+        120000220101210: [103034010121101,102302200210010,114003344011001,100023014313010,100002301021040,101014201030204,102411201112404,102100011320200,101203001010111,101000314000042],
+        120131011033211: [103300004021200,102122214131011,100023031000024,103230134011412,100012004101221,100020004101012,102402000201011,102311011000200,102021021101204,100231020102202],
+        230000104002204: [110211004240041,100001140200004,101014121000220,114000002300010,100211021201202,110220212104000,102141341340331,114234000000121,100042011022122,100011024104002],
+        1112430020203213: [100121214300011,110000002000322,111020330020323,103000224010010,123004131002200,103001014010032,112400142022120,112431022020401,102411024022203,112220402021203],
+        102211010302004: [110420301340222,100024000010302,101103031103004],
+        112120110300031: [110033200023234,114034120024020,114202042330012,103024110101112,100120244232122,111434000000313,110202000012302,111010012202230,112400100203420,100000004303002],
+        1003210001202113: [102142221342202,102420000202033,101012400343401,100020101020404,100002411021201,102110010210330,100012020410400,111111102240001,102122111402420,102001041100103],
+        102132043014311: [101042410301221,114201010001201,100030024300201,100020120101000,101041404002420,102220310200014,103231224012042,100040300102020,102400110230001,102101011342100],
+        100101221000304: [114021010023030],
+        203140024002223: [101020000320011,110400014223001,112040222311040,100100101011200,114214220001140,102204404111433,114040214101433,103144001420031,101022220322100,130040244231421],
+        120112101203144: [110201344402000,102323041000400,110020212130021,102103401440120,114300140000220,100124004100122,100002421220110,101120100303302,103000210102212,114001124020022],
+        224114322002000: [111020232200302,110130201011011,103120214032200,110001020120322,100100021013214,102312034020114,110431140100000,100214424300324,110014000110222,100110040031200],
+        1121024000230231: [101140130013320,103124001420200,100204210031132,100023001042200,103224034003141,114202022320120,110442122023340,110020240400120,101022044001032,103101404000040],
+        320003121333121: [102001301120112,103203401400132,103142111441040,110220410000040,101030004010034,100002111020202,102001104001420,102303031001004,100121004300001,100000341201004],
+        1010020401211020: [111424104420210,103202421200002,101112140303013,112212200204110,102302230241114,111202202202000,111113200032410],
+        1003022113040001: [110210134244100,102121041441000,114102022200000,110233010002020,111203034103022,102101304000012,114020202241323,110004402131000,101240024012131,100020114100404],
+        131101000214201: [100004214100234,110402410002000,102001011442200,100324200110130,100342120144000,100100031003220,100200034020100,100000041021200,101200100301000,114402014140102],
+        213303013002420: [110020020001220,104120000021110,110102030403010,101040010314220,111211114421220,110000000011102,110400000004402,104101420012000,110132241240004,102010411120012],
+        1000032140003300: [102110010210104,100040004340001,100021234303000,110420020103322,103100204000430,100034221043231,101140030330020,110030242131210,100340204211100,110142214201120],
+        140001010421240: [100003030003020,110410000104042,100014014203233,111422100034314,100000040413000,100001034310012,102030414003000,121310232003222,110011300143002,100220021000033],
+        123220031302140: [100130320031042,103110021442200,102010004040000,112433112020200,100042001020203,112221200410000,112023032000020,102000201101332,100111304300020,114132420004104],
+        140002122110020: [100414204320344,114012012300010,102141220210212,111202024134001,101000004003224,111302120011012,100002314210021,103101031440430,114220102332012,100000211030342],
+        120220000202013: [112411140200242,111201202221200,101001201000220,111123002210402,100011004203023,103001241432010,102022020220023,100110001000040,101010020304020,100010001043003],
+        100111320200130: [102120410202221,102203031112000,111240012241220,103002001420012,102034031324100,103001404013000,102102022002404,102310320222212,102300041004030,102100024000422],
+        1022104112013400: [100024234201100,102113300230021,100010044310002,130000420243230,100232104120201,110112204224100,102212234021233,100100341202102],
+        1120000410100100: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,102042000222002,102001011100100],
+        130001004011024: [102010124012100,114131102312120,102000111101030,114142022200000,101102204023404,100440100030210,114202110002002,102110004001320,114202322324020,101403100301000],
+        1100122212200242: [100310304310342,110140044401202,100010041031020,100042400001023,112402000200101,101010020301243,102030001103000,100040021031201,111010130022401,110224120012221],
+        220022341020003: [100310304310342,110140044401202,101300124221002,100002030410210,102231031123103,112402000200101,101043314210310,100314420140013,101401204040200,101010020301243],
+        102102100000043: [102300041004010,103000140101310,112400104044001,102310204023400,103111240223100,114401010001000,114001310020023,101113001101020,100021401020000,100203310430032],
+        1142324213123030: [100033004310000,100404202200440,100243220432021,110030120020044,101032004211321,110223100002121,114330004034210,100132220400121,110102004200021,103001121222240],
+        1012100420144031: [114420112320212,1012100023110102,1020343020202224,101012041142400,130001344030034,411204402322000,403240003100140,140441120210201,203322214210110,320440130020000],
+        124120201231200: [100222004320102,100110004103122,103020200141000,102414034040100,100120010421220,100000201041300,100000111034100,114011200003102,103132114002002,100412200002013],
+        121130111100011: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        1420230201001033: [114011130043110,403102030210220,102122011343402,102040032400410],
+        1000141230400021: [102102241341004,100000041020230,102030011324204,100001024102120,111100022244144,112221201100134,103400304020142,114410012311040,100022030101111,103101000212001],
+        1430002230014000: [112303341100100,100004024311221,110300440000022,100110101000111,101220141010040,112033004000010,100113310033004,110401220400210,101222240300200,100124014100400],
+        1041230001404343: [112142301101040,101100000330120,101214440300301,101121100332142,102011004013000,111200122222334,102301024113440,100033230420102,111110004402021,100000030000001],
+        1100031214442010: [100024000110221,100110020031042,110422102110221,114130014001202,110010220103020,111004100022110,101002201140040,100211000412142,114040210022000,111001344400222],
+        1011233114410200: [102010020203010,102033021130021,102001241410312,100000121042240,114444012310100,102330021000131,110400240002411,114432422322332,102000320222120,102210241122001],
+        101002100222010: [102300010242203,100020410410021,102400201404120,101410121102004,102402224000010,100001104012111,100011320420210,100302014104012,101110101110020,103010200113110],
+        231240214120003: [100430021001320,111410210001002,103214301421201,1000001214032041,101023020301100,114000332302320,102100221341001,100040004304002,100011301000021,100100001040210],
+        322244041332122: [100024000110221,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,100211000412142],
+        1202020010240120: [102142221342202,102001200221011,102420000202033,100020101020404,100002411021201,102021014012210,102110010210330,102244221114031,100012020410400,111111102240001],
+        1121040002000003: [111220002220100,101044120322004,110114410003233,112144312011433,101410044021332,114020204101200,100013031024000,102012014002001,112302412022221,100140014100401],
+        1100340100010440: [112142301101040,101100000330120,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,100033230420102,111110004402021,112204002031203],
+        130031024034001: [102020200223310,101001400301113,100002120200101,102014111102023,102432114041004,102100431342023,101301014220002,101012044004042,112410300200001,100021201020001],
+        1134031014303220: [100001141221200,110241101203132,103001001422110,100300200420220,102111320321320,101020431000212,100302120421003,112202304014001,102020341100213,110421120403200],
+        1031322432311201: [110000104200413,113141002412032],
+        1000000000420104: [103100301242100,100140211000041,100331204212000,102001204011033,110121102212120,114112212343020,103000210111110],
+        200412214103301: [110001332120300,102101211411000,110003000420200,110004014411012,112000120232022,100002320113100,112240200202201,101420021010003,100400122201222,100222110000310],
+        1010132020020210: [101133001104410,102301001004020,1100000411441420,1002203010011112,402001100011120,100020321030202,402202000003002,1113101130040010,1300120104000102,1324240003020201],
+        200441400202301: [110321031234422,110302100111410,100410434302212,102023001440404,101023014004000,100020010101201,110412042010210,110010220121014,102312344020020,110124411120222],
+        1010101120402041: [114401200000003,101221000312044,111001314111000,110323142102300,100040120003030,112111004022140,103110214000303,100104001013112,103112204001240,101013410304010],
+        1404413003142302: [112020200242131,110240024241203,112432120204400,100021420120102,100104041023201,100022214101010,110001340112402,103040421244210,111111014402340,102301204011320],
+        122102003102133: [100014401210011,102323304112140,110021410020203,110411044221200,100003034100001,114200222340000,102000010200014,102110402004000,102423031402210,101000040343001],
+        1042123221023212: [102132400232131,114001232300102,102323324112410,114400112311040,100422140030210,103000041402003,102000141133020,114212344000432,100001021003113,100013001040200],
+        1430220101402142: [102432004021410],
+        1420342121202410: [100004204302330,110000100422111,102341014010003,114132202312102,100004400100414,101013024002120,100041244344014,100021110200330,110322110010000,103302034020140],
+        200400224202012: [100133214230003,110240040001040,110100401322012,110302014420400,111401002210202],
+        1011101201024400: [101004014003121,111212014101213,100012020022402,102313324114200,112420124010230,111122020033401,110111020032001,103001230104021,110021102010001,111310000001341],
+        1121204432034042: [114200212322001,100401210020002,112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,110030222130000,101022440300020,101402010301000],
+        1001000021034041: [102041310200042,110301030010140,104100002101431,110221000111302,101010001002000,111330020002213,102011440201423,114011212320331,100002204310140,110110210011002],
+        110023042240131: [102100011410300,114410204142310,102022000213102,100101421010233,114423414113030,111022100022132,120022141000020,100003001040112,103103001422442,102000404001100],
+        200022020001311: [100141220000211,110042202002303,100320011001200,110002002200300,110443002010003],
+        224401100220202: [103122114004113,102242301122200,110030110122402,100011111022300,114032300011302,102100000313104,100234004033234,101222221020440,100011111021031,102002204003400],
+        1410000332231040: [112012012002100,102401024020221,111231012242301,114444004140210,102220210203210,100000120120001,110031214200342,112433204041220,112120304021020,121000442023140],
+        1020202200301343: [100033114200011,102201130200131,110100111221242,114020202201002,102100300233312,112002024004122,111021044400403,101231020300003,102203210201342,111201002200020],
+        1043210210001214: [102300120220103,101210021011110,100001424100120,100020100200010,101020200320000,100020114202320,100400000033202,101131014023031,112102400204000,110003204210204],
+        1102032121202033: [102003224011000,102304420211002,110403042110030,100101400000132,100032424312011,101110301040312,102204010204023,100220000432400,103011024000103,110100104220021],
+        220024203101002: [100440000030040,100023101001004,102001014013004,101201104040034,102101000233302,103210210100210,101013101033100,101043004211000,112340340200112,100001000010010],
+        124100032040200: [100012120201211,101410044020102,102011014010000,101420031011004,100000014310020,102111001341321,100022204300002,102202122000302,112100222300311,100321100443000],
+        140222200013230: [101302134233230,100000130010033,101030404212000,114102224000201,100022021041122,100020001042002,100013011020311,102103331400000,100120041020012,102012204000242],
+        111100234220320: [101210320301302,100440024301100,100101041040330,100114104101001,101023221000031,101400014040400,102012034000402,103341124011404,102100122002001,101000011021414],
+        1000100300110004: [111101010010203,110011000022102,103021220104200,100004104210221,100021020104220,102202410240103,400014404414011,102120001343001,100112004101222,114202332330220],
+        123221213100210: [111124004101012,104102040011120,114103220220104,102120004001310,102430121110340,101021204000200,102020121102120,112141104020201,101200111020111,110001200422320],
+        103034201102242: [110040011323003,100001024201214,103041221412320,103433121201311,130014300140410,110113211301114,103000044041243,110123210022200,120000031300010,121012002003322],
+        313122200220030: [104103201240410,100011001021002,110000141012003,110112301300000,101040100004242,100300204010001,100011320043322,102204100232030,110110012110224,100003000100210],
+        102102110004001: [110330400010040,100101231004020,110010100022010,111000100012002,110022140120012,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        110220242100124: [114000034010043,121021032342113,110220210110004,110221401304401,110420001101321],
+        204200114002004: [100002121043000,100133204300040,102001024011010,114021112304224,101302321002232,101010120320311,101201101001302,114030212300112,100020301020200,101000000323000],
+        1442041201011210: [100032041021210,110001041213031,102300324010203,110414300030001,102100142002204,100030020011022,102040011121100,111202012222402,111322234130000,102040041320010],
+        240011033032001: [102331021100100,103223014033210,110001311210334,100002001211230,220321332020001,114410102321111,114012002212100,101100234021102,114203110001031,114121104101103],
+        320202320301230: [103041220111410,101100202130022,102004201032002,114101012343012],
+        234000101024042: [101012000300043,110422011240010,100010004101244,110100012142010,102011114001033,110030042003121,102120001340020,111023020021014,101010001002102,100000000100221],
+        124100100111212: [110010100442102,114040002330340,102130014134000,100010114102101,100041001020232,100003044241304,103010014020010,100434044100040,100004204211224,102304200241010],
+        101111020002300: [102310000222133,114111000222110,112034040231012,114104310000002,100101220021240,102220011122100,100001001034141,112013032002214,101404441100012,112123102010143],
+        1021210013303111: [110102401201204,100212030414010,101400004022210,102031021441200,102300031004340,101200020303202,111340300010010,102013224003020,103013020123142,112402000200342],
+        110000132011220: [402000401204030,114124020222032,100140201000222,110110000004210,101400010303002,104200202141001,130030220200012,112200110000221,1321002023100013,1103040030102440],
+        211100120200012: [102102031320011,102223111000042,100041140201301,102140041342420,101000410321210,102140021410400,101013111000000,103011100120201,100000120202410,102300004110122],
+        1442012230111130: [102110300311400,102101200234301,102302241004232,114100222340001,100423004100310,103210001410203,112014002003102,103020341402213,102021100240220,100021404302040],
+        1133310214404000: [114040102210432,100031120101224,100034004211240,112040200233002,102113111343110,103234100101221,114002220010031,100010111040104,103103311424020,101030010320024],
+        1104210302033040: [110112320021204,100034114100102,110330002104200,114000000030300,114101012201420,102112100210100,110011111104432,102000221034000,102041204000000,103310314020230],
+        101000000212120: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,102001011100100,114402104142102],
+        240022213020113: [100200101000000,103110431441100,102101324130010,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110,101400300300111],
+        110033123001102: [114132202312102,100021110200330,103214104034020,100400000013010,110222201200000,110302400012002,100103004000123,101230234011000,110404010003212,111020014110103],
+        1023023400200011: [102013024000211,114021004011100,102140140310001,100402022200102,111010302203001,102110111023103,100102434300310,100413300430300,114100102341011,114024200040223],
+        1002001000031010: [111220002220100,100000241020022,101133410300302,132200010004401,100030044202001,110114410003233,140200430112430,112144312011433,110012030002010,110000040024442],
+        101004022130342: [112014212301401,112001400220201,102112311101420,111040102231022,102200220232004,102200002000103,111034214120001,110000012201110,111203202222013,103100401240301],
+        1001004301240203: [102023000220003,102332320243001,101004204212040,102202014030001,100444021001102,110201400000100,112013400220104,101022424011430,112321041130330,102113100201211],
+        1001041022401440: [103140114002241,102000301100100,102024011413201,101300414221100,102331201001140,102101001342004,102200230211200,114001042203020,112220022044223,102104411412302],
+        1120034100432201: [100412004102200,100224004100041,112110302300103,101000140200002,102200404003330,103103311210320,112410004041120,110140001201040,103210000131020,100400040022210],
+        103224420030002: [101000221034203,102103004021421,114130002312044,114200014001411,110010042001410,100222044342300,400000220124000,421200120000010],
+        1130012401013113: [100033114200011,102201130200131,112002024004122,100410040030230,112120110200240,111201002200020,100012020420232,100000101222004,100100011204031,103010021223130],
+        130301200121102: [110032022002020,100400110020244,101042001021012,101100104002023,100124021201021,100400000010020,100411201002420,112213021100032,110002004413040,101030404003400],
+        1032010030042331: [102012021321102,102141000230042,102402201110020,114044020020230,102000230224024,102321001000211,100010001040020,102103120210312,110200440000121,112400204040200],
+        1144220213313100: [101020000300112,100002020410020,101000001111200,111120214102000,102113200210140,103130020213032,100040041020102,102323204113210,102403031110014,114000012303410],
+        1434334000034241: [100002004303100,110130010102101,100212034221414,102000041101100,100042004301301,100012021031014,100000201032010,114010204101202,100404000020000,100010210410420],
+        122440000320104: [112012012002100,102401024020221,111231012242301,114444004140210,100000120120001,114210224102122,102100112004142,102130004020041,112223242033100,110031214200342],
+        1100300320130210: [100110214103200,112020112300102,114010000021104,100103121010020,103202300102400,100000001021001,102202044110341,103322000144000,114030424122003,112013300230202],
+        1000000212201230: [111112000011222,102403001342000,101003301020022,100400020033040,100102431021300,110200212041001,112044204000441,111210224410302,104110100014103,112310402020014],
+        100000404140203: [100023421041402,101144134001102,103002144042123,110012220002021,102304204110040,100210020410010,101000414002041,114034422302101,110421104242000,110220302043002],
+        121212230444021: [102403004042342,111122004101222,114020040013100,114000222213021,100000020401302,111001100020413,111301204111233],
+        112200123010400: [112124004022322,111300210014020,102103201320411,100100031043410,101033214211000,114001100024243,111000142201220,110141112044000,100034244303010,102003104000032],
+        102001124020313: [110110200001000,100140211000041,102302004110231,102203004032420,102001204011033,101000114000032,110330042104010],
+        100021010030303: [111111000014001,100014041042003,101433010300204,102114321401000,103113204001423,100002414201103,102302010212201,100122234300420,100400320013200,102021424001210],
+        114042414400102: [100002020100002,102011014001111,102110410200214,103222024031400,100230041210111,200023002000100,103233140101001,102120011022221,102100300201031,112100120200212],
+        1202420101404142: [110340014422102,102140004000100,100231004220242,130020100202200,101202010301321,103000000120240,100021210200200,102304024110004,100400102040013,120020430310100],
+        1012011001000104: [101011004212201,110032022002020,100214230430124,103031234000122,100400110020244,101042001021012,103230011412301,101100104002023,100400000010020,100124021201021],
+        102040001310021: [100032041021210,110001041213031,102300324010203,101110044200100,110414300030001,100030020011022,102040011121100,111202012222402,102000221442214,102040041320010],
+        130411200111124: [110400000002213,101101230331040],
+        1032100440000312: [102002130222022,114010332302001,102020220201140,110021021120041,110044410433321,112110022014320,114123100221401,100203310014042,112000221110010,101410300301303],
+        1111210014110112: [102224101113104,100312331004000,103301244010210,100101031041022,100142431013000,101000031001011,100000240003101,114202144102100,102102401412242,102311110222320],
+        130100202002204: [102200211120103,102101204002343,114132040223044,100200411000410,100404202200223,111202000003000,110232400010300,100131201202420,100220111000200,103100110110403],
+        1040201443220342: [101220040300414,102121211343322,101003140301001,102410001111322,403111002011011,113210210400400,1140104002020100,110102000002203,110011022100114,1010000000034010],
+        1020411101320021: [102102000213403,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,101002424214013,100012101022110,100034110410003,100400222200110],
+        1144220000000000: [114132242201400,100033000122213,102140011140002,110110402012311,100041200201020,101422000302424,102204024011121,101101430332010,102401240201330,100300010420000],
+        221002000010021: [110301011320314,111004014402201,100132024030302,121310400440314,120100331332002,100001000001210,111002204403002,132303424001013,123320003100311,111002002142200],
+        1000310012201211: [101420104040010,101201201022032,111301210041010,114340002303220,100021204100214,103144224004012,111344320041124,101120011040200,110042004410444,102043040200002],
+        1030042024010100: [100300110110121,102002322010030,100321101000003,102121041101300],
+        112241022420200: [102132400232131,100114234102203,114001232300102,102323324112410,114400112311040,100422140030210,103000041402003,102000141133020,100000104102100,114212344000432],
+        100322220141000: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        140000220120124: [100000131032010,102300011004200,101010001030220,102100404023424,100012200101131,110032302102400,100140204233112,101042141032030,112414042011121,111020134112040],
+        121200141102401: [112010002002030,100010401234002,100002334202400,100023004304344,102102010214104,100210021003100,101100104022212,102112004000230,112000011110231,101022000320113],
+        322000014100120: [100002101021120,102102012003220,114110004121301,100104100422041,100001044241012,102030420223110,112002220220002,100200011000020,103120321442020,101444321101021],
+        200230204201114: [103130234002321,103302040111403,100322100143040,102020001440401,100030240102022,102303320221102,102011221440020,102300001001300,103311034030000,100022401001413],
+        1210140042010010: [112142301101040,101100000330120,101214440300301,101121100332142,100000400000241,111102214104403,100132004231230,102011004013000,111200122222334,102301024113440],
+        1100130021002201: [122001010302041,102223044011234,1004130302142412,112021122222211,1301222204300302,1300100202010022],
+        1021112020424001: [112303341100100,100043020123004,100110001000000,100000011120003,110300440000022,112020001110030,103421114002100,100200200430302,112033004000010,103134410122013],
+        102303000232301: [100104302001300,1301223001003430,1302120110232200,100021204230002,1401214001003110,1023121121030343],
+        1033201020042121: [101000004210020,102210314111120,100032300010000,114140404123402,102130031410200,100010300414000,114310134003100,114132302200001,114011014014042,100013004300240],
+        1120100203000132: [100021000104004,100002200022012,111140204103210,140004010302423,114200320003120,100200113201000,141220400002200,100044231103400,100411033204412,110000001210210],
+        133021042110020: [103000004002012,100002011042020,102110030200120,100301421002002,100202140000111,114001032300011,100240101000030,101003104212220,102302211002004,114030310012122],
+        1120231232100210: [114030400020232,110000011220401,102112340210300,103001024000200,110001031300042,114100214000010,100000104201200,103000304010211,102110044002000,112104142300201],
+        1203000001120304: [100232121210011,112022200234200,110043132100300,102220120203200,100002004201122,110132031134031,1220302241034202,100240200430040,114110342312140,1202111000310100],
+        112040400320300: [102120221022200,100032011000241,102311011000014,114000030020101,112044414003133,101010300300110,112031121113040],
+        122002002221023: [102300000211330,100340111000000,101211411020304,102314311100010,112432002023000,100122401023041,100200101000101,100400142200202,101311420343002,100201004220340],
+        1001020210310120: [100000210100030,112210322040121,100402042200000,110001440041003,101402010301000,100000220111021,101000430320220,100401022201110,101100001110030,102210011101110],
+        101021001312213: [102000402041014,102041410242244,102101220214011,100022010411004,114000424102300,102323201000412,102212434110001,114240044000100,102141020210132,112102314020000],
+        220000000210202: [100301300121100,110042400130000,100021300101201,104101201240100,110000011012202,101001040302400,101244324043222,112102232300222,102000020241101,112311000204002],
+        1000001024120010: [110200002031302,102040021121030,100000204130001,100412441010422,101010200312020,101040204210210,100000201034001,110000324412304,110000201230100,112020024000010],
+        1022230100012100: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        130100320202304: [100322014312444,102022024010214,101030004002122,100000424310110,113030342402110,101000331020102,110340342021001,111042010024001,111223010011043,113000200130000],
+        102220224200222: [111001440020003,102001000212142,110200020010003,114121000002140,100002214100100,102120104003011,102120402000014,102000200210032,100041000100422,114020002303212],
+        101120241111204: [102112200201012,102321104111003,111111004400103,112100022300110,100200410434002,110002022130324,102004221132241,100010000002102,100221124121143,100414300433033],
+        1141030001400100: [114410002324204,403111002011011,1140104002020100,104402130010100,103100001242220,404200120320000,101201220402420,1040212001001234,1323104441242212,1001120000022000],
+        100200114000013: [111100414100001,101004424001020,100120134234441,200010322231000,100203411001100,112132020203121,100000004211010,100120030402000,112123134024011,101010000313133],
+        1011402012100420: [102142221342202,102001200221011,102420000202033,101000004010012,103024000103302,100012020410400,111111102240001,101301014220002,100000421024110,100104000101010],
+        1110210222231122: [100200201002303,100043104240004,110422102121011,102042204010212,100023001030202,111000200040314,101014404011012,101014001001410,112000000221100,112030010234104],
+        102231442403400: [100231401213132,114210104113314,114021232300112,103001000120444,101144024000232,101302121004422,100000010011430,100110000000000,100114420000140,102320021100120],
+        120102020232100: [100024000110221,114130014001202,110010220103020,111004100022110,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411,102131304003000],
+        1004221011034003: [110011111104432,102143421000420,100300000441223,100000001024104,100104041000002,103102000123210,100104421021212,101012011111122,101120011140202,103100114000402],
+        124131130120010: [110300120403013,110131002010202,101010010320020,102410124022400,102300424112201,101020004001002,100030031220030,100010100420004,100120300002212,100112211224031],
+        1100222000410322: [100440031001120,102020200223310,103220011420242,100031201030331,102032012000101,101001400301113,112102102302000,100002120200101,102112011401424,111242110002213],
+        1424112110000203: [110310001202220,102300321004202,103003441432012,101340141003001,101210100300100,101014424010103,102311410222022,100404000033120,112000112001400,100004110012001],
+        130013214040300: [110040112132130,102221041100201,100204004121023,110111111010000,100413304100413,112134000201310,101002401110142,112230122030224,100110130000123,100200201213011],
+        102123130022002: [101222101202341,110301442021010,100010024302100,100000011020412,112041000220020,102022400210202,102003034011323,111300000001323,110000002001040,110101000121214],
+        1022303220040011: [100002100100210,102420424042020,100010001032223,103020031403100,102200401111200,102000430221040,114003104031111,100100000422320,100102020411200,102100012002000],
+        1040240023122001: [102400100230000,102114022004023,101022121001000,100213310112333,102302020212101,102300104110002,100104201020032,112402000200342,114303340000001,100030004104210],
+        1000000344001020: [103114001441122,100422004320024,114211110023303,111000302230100,102300011002030,100120220000101,103001101422012,4000113102314022,1400100000042343,113234032301042],
+        103424220312220: [110112110030020,102331414110004,112000322311331,102003041130020,104100122102020,103001101240031,114211140213100,110201030002222,102212010202013,101102001100033],
+        1103010110400302: [114124400000022,1104100000042000,1302001134003203,244000303210100,103100240003304,110000011101202,1310001001103311],
+        140404030301404: [110111041011032,110243310101220,102221230200001,114100212200003,100020010022143,100101141010322,102100311400022,114003102303200,100000044310330,1311120031020142],
+        121400400000310: [100020300200110,102342110212020,100042000200211,100024024200032,221123404200214,100021024100301,1101210010010223,102042000211301,1300004102024404,100000241033100],
+        1142122203300140: [101042410301221,110432300102000,100102024100020,100011004102400,102304000210204,110040344210011,100003320401100,100020120101000,100003200020112,112143144020012],
+        1013003111000104: [103300034021000,103311011404143,101011010320431,103041414001042,102441324022342,101041301000020,103220000104122,100220121003120,103220114040342,102040124010141],
+        1002031042114021: [101012400304201,100031044300340,103212014020132,102102030214401,102021420233130,103220300101010,100102104301413,111130410020021,101022000302211,101232020300432],
+        1043110110000102: [102214011111041,101020341034234,100002401040201,102113101342000,100212304243333,102302424110100,110002010042440,102022401412124,100121210402002,102212004030221],
+        1001331032004111: [110001422030011,102144314002302,100220024324023,114200112340002,102343014022001,100211000430431,102142004001013,101213240301002,100140200410200,100020020120200],
+        100000402043242: [102211230244321,112121214040022,100010101030000,100004004100120,112002100233204,102200121300400,101030224004130,112400024011003,100000004214021,102012141440022],
+        1430140040400140: [111030212113431,102001111011201,110044320441241,102233034000002,110311110410340,112101202012010,102112314002011,110000121222112,103020040104002,102004004000010],
+        1101003002401013: [102002120203400,100002020120200,102141004001412,102143000210010,102120221410141,103241001400040,102330124110411,102303342001023,100000024100200,101300124233021],
+        1134041311041020: [101010001003010,110203112030000,110010034202123,101001334211011,100100310403103,112200010410210,110442004241010,101400304022340,111230112220110,112130400202001],
+        1024004010201221: [112401024044240,102001000200221,100021010004200,103213004042404,114203400000000,102002214003000,100102104300111,112222420202010,114014124030001,101303104233204],
+        1010021300000202: [110241024242442,110444010032242,110300112023012,110224200113042,101000020301410,114000102210200,101041001032310,103100100100104,102121414000042,110024030001401],
+        1022200021121321: [102113300230021,100010044310002,130000420243230,100232104120201,102212234021233,100100341202102],
+        134103120400201: [102302440220001,100104400403240,100020111221020,110010122102321,110002322101200,102220124000003,101020201003002,100230300001042,100311334020020,112400022020023],
+        103320410200011: [100011004340114,114300204032002,102101101140040,102000021444112,100003010413400,103334120114003,102102030210111,101201041010123,102140341343300,100130204300200],
+        101000000034003: [110130314400100,100032431030100,102022004010240,102023211411003,102340200224222,114002014033200,100004301021110,101010124001000,102111244000012,100400000034231],
+        1010041121304231: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,103220011411101,102042000222002,102001011100100],
+        211402012042204: [102240120244002,402010003200010,101003204000004,102204424033103,1014410101001020,112010412020141,1002001101203410,110020102120001,402000143220001,1022200220012110],
+        1024402042014412: [110441140102024,101004120224442,100413311002132,110210301200101,110400241240242,102210101121104,110023102103200,102400140230123,102112300222001,102000024010002],
+        104033122104203: [102001204003131,102101041340032,103010110120332,100012020204300,100001104301010,102320110243020,101002020304011,102432314021013,114001400022003,104010000000320],
+        1000000210013001: [101301014221122,114220040000201,102102204022310,111040032200021,103030040121410,114040210022000,100404400013222,112010420241002,112201010203210,100000214310412],
+        1422024020131310: [103000140141214,102110000210300,102422021113012,104220041321240,101021321034010,103422421110341,110001120421122,101440000330201,100112044302010,100000114300210],
+        200101430023042: [101321001000010,102042031102112,102410111110002,114102302311211,114034400040402,112122334022424,102122000212204,100422021002002,100010100102032,112010344023013],
+        121000110044130: [103102010212440,100021120412010,102002344013100,111200302214000],
+        301200000024111: [114020000030002,102430401401200,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1002044041220102: [100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,103202014031021,110212424242341,100101014300100],
+        120100240203013: [110040022130003,100030430422242,101120014204000,100100014230110,111002132202012,110201004241002,111004012200303,101000131142230,114200010213030,112001204023241],
+        1020000000320004: [101032111230411,103010110120020,110100032122000,101020210301131,110304002000013,110200001314040],
+        1003212301102334: [100042304102210,112202000411103,103202000110102,100013030100002,102020440220202,100042000000000,102334021001211,112000021122010,100021111043012,114003022300020],
+        143014043212013: [100012001023022,101104414002010,102112012004120,111112242211204,110422020000111,100000041201200,102003340204010,110003004420010,100030201031300,114110410231111],
+        100014200010414: [100024000110221,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,114040210022000],
+        104220102141320: [100011231042030,100020034100101,110004424200024,102111144001232,103312300110101,101403004022114,102000441132020,102024044012212,102222244040141,111001012203002],
+        202402000201323: [110403244220202,102001210223212,103113014002100,103030034003020,101144010014213,110120400402324,100402340010310,114022234031002,112010440244302,112120424043000],
+        1101110101002030: [110301222101110,102230040200031,110122001010214,102023301102400,100030414300112,114043140010022,104120110010402,111010214402000,110303104423010,103140104002400],
+        1100110032402300: [100024000110221,101301014221122,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100141021004020],
+        1020010000100113: [100122004300410,114443330001442,102000224000011,103001104010010,101212040303123,100111201014214,102024001010002,100021021000101,102030200240232,100011124202310],
+        1000100110200003: [110111111010000,114120014004003,110000031031240,100002244111003,110131311200401,110441222110003,110000120020421,112010204002340,100014200402310,114110440000200],
+        220034132222212: [102334004110232,110311331003000,101020240300003,112300032000100,112021334001000,101000100322140,100144430411240,111000024401300,114010010002314,102321040213311],
+        143132242124002: [103114204002100,114230004110101,102142002000030,114000024101202,100100114302030,100100014302013,102020121130000,111310000002001,101022000322402,100002114104410],
+        1100020000202210: [100012330001024,100020134300020,103102000100210,111224340011202,101140004203010,101220004013020,101002004010200,100001020120320,102120011022221,102100300201031],
+        1140022243233000: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        1003410102003110: [101141314000221,110033101314000,102203111103200,111000000001211,112304041103131,101041014010212,100400310013004,102220232001303,110020102202100,110301120042202],
+        1121012101041301: [100011201020234,101221000302204,101040010311213,114100200002111,101000034210022,101322201001022,112420042020110,102110120210211,101022310300133,102014400223314],
+        214201002230210: [101001011114020,100030044100103,102012040223003,100002110014312,114042004100020,110320042021132,110012312014200,103000000110000,112000202301020,100200110002212],
+        1030020004011140: [100104010021241,114002014033200,100004301021110,101010124001000,100210224243223,114020214022000,100124011040300,102103020232040,114114414122002,114102102344110],
+        1402020020440003: [114010034012014,103200031411100,100010004300024,100000324340102,114443200000122,114000102300102,114444124143021,102101000233100,103030024020041,112100334020030],
+        110020003122121: [102101211411000,110032022002020,112032040234431,101004310324302,100102224033421,100120040400011,100400110020244,100124021201021,114011120010030,100200044121414],
+        1003312101421000: [110011111104432,101003201002421,102034004000133,100104041000002,100102240002022,102112411140024,102113000210043,101120011140202,100222200010312,102114101120004],
+        223242040210040: [111432404442442,114421102322111,110241022112013,102110010230101,102111401120001,102401224021023,111002004401000,100000024102020,110002232202002,103014044010100],
+        102000320311023: [110414402020021,102142030224211,102011011131130,101000034000220,114312012300300,112402032010131,114102140221100,103210120100143,102112411342231,101010024213100],
+        1144013000030010: [102000020223013,114040102301100,101022020340004,100020241043022,114413232320000,100100001040134,103002034011114,114441124140100,114440200000000,100002004130101],
+        220444412203411: [111142010020301,100000144104100,101014014000004,102110021341000,112440220203204,100100104102141,101033141030001,100001144100001,102111210230204,101003400322022],
+        100000033110323: [100003011041040,103200141404212,114014010043112,110104140001020,114001112300222,100203141001002,111000312112404,100400020022110,114122440000024,103000020103121],
+        1424010020100024: [104130242103012,110100221223104,101022024010004,102000101132400,102412101112121,112023140212112,102404200230330,102110244000130,114000312301300,100102304302000],
+        1020221120031000: [110120144200000,114022412330004,101200221022044,101041030320401,110241112020204,100002004104004,103130021444021,102100104002224,102100224000210,102103321411004],
+        123314020421000: [104210402020230,102020230211204,110403022010001,102331004110020,112400204040200,111200124130121,102444210232043,100002110402000,112111240220303,110413002221000],
+        1101010402212203: [100014100100001,102100004130301,110100001200320,111120004100414,101034024000101,101243024011000,102200230202120,103340410140122,100010021221221,111012202111021],
+        1040320000224321: [112314301103022,102000222003200,110112211000311,103100001440000,112010402302400,112040400213330,100100404232002,111000122144002,103010141244132,101032301032001],
+        1004102104014200: [102301004110004,110402420402001,110021021210300,110404000000012,102000101120123,110020310022021,110301322104142,100020311220412,101121021020012,101004301001120],
+        1402002011201113: [110011411102000,100022001022231,103100201440230,102314032000332,100002001002004,112002100214012,112112424020223,100002134302300,111120000020100,112020020231002],
+        102010201033224: [102022004012201,100000024210130,102034221103124,100034024104211,100014030200221,100020134212021,101201004203204,112001120220130,102010101320314,102102230203330],
+        114201403032204: [101000004000241,100120000410020,102311000240202],
+        132001440041043: [101004120224442,100413311002132,100320421001431,101233021020010,110210301200101,111131102210013,110400241240242,101001024210000,102210101121104,102000324010303],
+        1013001222410000: [111214100000104,100430221011100,110422010000200,103112021442033,110044014410012,100112434101120,110030231214100,111121012243322,110100144404220,110004001040434],
+        1020121032342040: [101000041031301,111221212223401,103214400131240],
+        1112003201020140: [100042301001230,110002240134040,100020200023001,100040014310020,114000014100101,110031324200020,112202304002043,101110310331140,101003311030410,101000201000000],
+        1004412014011021: [100004001021111,101021004214202,103022021431010,100003000104203,102101220214011,102114320203000,114001112300001,101003104212220,102120231343021,102311110240101],
+        1430110020341110: [100031224102002,103000021431010,100030100104000,114032002301221,103321004033302,111332432200404,110013234211140,102100221341020,114020004100033,102220020200000],
+        120032410221422: [102044314000340,100000210100004,132200430040010,122333101001221,131001104024402,103203211411200,101003210300230,103004004012040,110320010100000,110003000143033],
+        1002000121311220: [101220300304010,114203412342202,100010031030401,100101001010214,101012014000204,102334004110210,110203100100102,112032400230000,114411100002000,101004004000022],
+        1114000414100400: [102142221342202,102001200221011,103043404000202,102420000202033,100020101020404,100002411021201,101000004010012,102110010210330,103024000103302,100012020410400],
+        1001130132121100: [101301014221122,114110200212210,114220040000201,102102204022310,114040210022000,100404400013222,110012130410040,100104101200201,111040100020010,112201010203210],
+        1410122202341013: [114010200040441,102011001134111,100000344100100,102302011002003,100012441030002,101022114003000,114024210021201,100013001041311,102323014020022,100120001021200],
+        1433002000024010: [112411140200242,111201202221200,111123002210402,100011004203023,103001241432010,102022020220023,101010020304020,100010001043003,112142020420000,100140001042400],
+        124102122003001: [100002121043000,102200031002000,112201011040200,112040101110000,114143223021220,101102312120003,1203020102314000,101043444211200,101210000300324,1301400104300023],
+        110010233130000: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        210302001041220: [100101024303332,100013201020230,112300101101010,114301302323032,114200304000002,1300040101002020,123310121130130,143442111023013,402014100021201,1022003020311200],
+        1200300210101130: [112202012024101,114000240030002,114002322300200,100043101221020,103244034020020,100142401000440,110021202200101,102422010203030,102202101300002,103230031200102],
+        1100314214013301: [100024000110221,100110020031042,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,100211000412142,114040210022000],
+        343202010004200: [103222114034232,103221204032410,100004004102410,111121004103434,102112041020001,102202014042012,100010001032200,100221110101420,102441030231300,103032000144301],
+        1002010010013340: [103020031403100,114000044020204,102302331003300,102320000221020,110142020400012,103131420221204,102120141343312,114321114032200,100142011022211,114230344103210],
+        100101010121421: [100110020031042,101301014221122,110422102110221,114220040000201,102102204022310,111040032200021,103030040121410,114040210022000,100404400013222,102320234030000],
+        211000110104320: [110301222101110,102023301102400,100030414300112,114043140010022,104120110010402,111010214402000,110303104423010,101221420303120,102000324040402,100100401040001],
+        120302301110101: [110300120403013,110131002010202,101010010320020,101120101100112,102410124022400,102300424112201,101020004001002,100030031220030,100010100420004,100120300002212],
+        201402003042204: [114212012310002,110001420000233,110000230010221,110202110113000,102200301110320,110001040000000,100324114310222,100422020030044,110002242100100,101220100303222],
+        230244020001220: [112020042344001,111101122102222,100241000430420,103000114001000,100003344214000,100221201210110,102322420210320,114124040000002,100112001021112,102110104000020],
+        1020004121021033: [100430014323000,112100021100243,100020224101220,100212101003134,103030014000020,100020024100324,101230011020020,114010214032000,114111240001012,102012201414304],
+        240021120110320: [102020112000020,100002204310230,102430424022023,112110012010100,101040001021020,111010120040120,102030004000432,110021002014130,114010130032101,103031000100122],
+        120044210000302: [102101021412120,110024020421011,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012,101010404010000,101000411001330],
+        101420000132212: [103034010121101,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311,114140004123122],
+        213000021301220: [102011114002011,114101042202201,102144201402040,100014201021012,110000214214420,114021212301131,112010112000311,110030441223002,110440002111230,103002044010020],
+        1022001442221000: [114010200011100,102312300220000,101142014202110,102310110213220,100012001042030,102000404000400,100013040404011,102004004004200,101002134011001,100300300421030],
+        1132130244110420: [101221121202421,111042022141200,102300220241031,101441101010020,100442220030040,100100241020020,100002004342004,102312200240012,103010330100320,110341420400423],
+        1044123221100003: [101004010304203,121200013012000,102122210230200,111001410004002,103110411212041,110023000042010,110244400212004,114410104141020,101002021110410,101010010323022],
+        1000222200012004: [100001024201214,103433121201311,130014300140410,103404001214121,110113211301114,103000044041243,102300002103012,103204104020400,103202341200300,111400202101243],
+        1020201000000102: [103402021210242,101143011131002,100001441032301],
+        1422401100001213: [103300021400021,114212222334101,102303214113000,100101310400220,111223010011043],
+        113020033000101: [100110020031042,101301014221122,110422102110221,114220040000201,102102204022310,111004100022110,103030040121410,114040210022000,100404400013222,112010420241002],
+        300143320002020: [110013030403023,103010204010010,112003002030002,110401231001202,101031211140304,114230110212040,100111110400003,100000034301140,102111011142022,114132142312022],
+        100012211024240: [101023211102101,101012104001020,102022001101234,101210120302002,102000304001202,100010300121000,101233100300011,100001314100400,112101201102130,101004040320002],
+        1100331204103000: [114420112320212,1020343020202224,1010122010001200,1303010022004241,101012041142400,130001344030034,400000133010010,203322214210110,403240003100140],
+        1002220100012020: [100032041021210,110004301222000,102001301120112,102040041320010,103203401400132,103142111441040,114142044120310,110220410000040,101030004010034,102201411100212],
+        1100104411021114: [102202201120000,114301022320021,103030404010000,112100102012303,111302202204022,112003402002003,102012044013241,103234004024024,110012010122100,100101004232101],
+        1040012233000202: [110311011200000,102122100201100,100120100400303,110202202032022,101020330314241,110242101314034,100101020400000,113112010233312,112004200210302,100023041230312],
+        1020434431040110: [112000130230100,114212002340000,102203204044020,110412004242114,102120012000012,111412104420221,110002220023400,113201230210100,101012134000100,101000304001213],
+        1101001244010020: [100041000411231,100013014102414,101004204210100,102011001320032,102140040210040,100034134300203,114202000000000,114312012320120,102010031444104,103313300113232],
+        140100120021021: [100040010001010,112003031110244,102014004002102,103102214000020,100000004211200,102022401131220,102301234110020,114011410020033,114312104030000,102332401000010],
+        1240012103022112: [110021000410432,101010010320112,112000021122010,100021111043012,110124041140000,103300021402104,100010044101002,100001000100403,102344011000202,100020124100010],
+        1400440000000120: [103122020213112,100104010021241,114101100211240,103012011434022,114102102344110,114010002300003,100112110020301,100000004102124,100022301000112,114121030220301],
+        1422011000000201: [1034004021300110,102001034010113,1100440001000000,1020401400011242,1042410022214002,114222442341000,1042210303140101,101313330340001,110044101320101,101040201121012],
+        1000034310000311: [102141040210012,100002230102232,114110012310040,402023203200200,422202004012314,1004020103113032,111000000001024,110230020421020,400020112402100,101010124002440],
+        133143012100100: [114000242200010,102011201412140,114000300014032,100041121022141,103012204000012,102100100220230,110400032220312,102000211410100,103334010111101,102010200223020],
+        1142430110043132: [112001232000034,111203102223243,114112434000040,114311400000224,100040101001132,102113232001100,101110044000400,102102021002000,100101021021101,112001010242211],
+        1101310100024300: [103021024013303,102001034010113,1300102201211020,1300022002310414,101313330340001,1112301032024000],
+        110032413122402: [114001000020102,101020040300010,100213001000212,100002004212420,102121014002022,100141404233000,114131002342130,110002022003101,101020001030204,100403122201202],
+        122114020014230: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        122410322020002: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,102044021101411,101100104002023,101042001021012,103230011412301,100400000010020],
+        200012131210203: [100201104211021,100020104100331,100432034100300,114021140030212,110420241240103,100030200001122,100004341223313,101200101022022,112011011120400,112211200411024],
+        130001321113022: [101301014221122,114110200212210,102102204022310,100104101200201,100002204100101,100020300102123,100120430411222,110014314410140,100022014302423,102221101122111],
+        1212102022410221: [100111211021233,112001022300000,100203210003004,101214000012021,110003001024303,101000044001103,113411101044400,110110011240242,113020002200000,101104010310340],
+        1402400121202023: [114300304001000,110023401320200,102301224110000,110000312001020,102133211401043,102010214000003,100010114200031,103002010100104,100220310430010,102410110232000],
+        113121200120004: [101022014222024,100032000101014,103030104000102,111311002224001,100032134101100,114201024112001,112010024023002,100000421024110,102130314134001,102011211102101],
+        1401420201003400: [114132202312102,103214104034020,100400000013010,102142020212132,110222201200000,110302400012002,101401140300144,101230234011000,102202000202411,111020014110103],
+        1141024241430004: [111301240010310,101300400310002,100000311221002,101120321040104,100303101000021,111001212232021,110002300420010,110021002003020,102202110230404,100240011003010],
+        1420012001304124: [114010024033002,121000042140301,1300102201211020,101201001024132],
+        1120003422140130: [114002104014300,102000311102212,102010004040000,112433112020200,112301312020123,102000201101332,102231041120104,100111304300020,114132420004104,114100110220013],
+        1222140100122003: [111034014401112,111302202200213,100030241043214,101421001021031,101300400313000,101220040310221,102320030240003,202030010203100,111101422241002,114431310000020],
+        1430041300203020: [110000411313130,110400000001201,110000010430211,110001212130303,100103301002044,101221311022241,110100231202400,110020102102000,100000201022030,100402021012201],
+        110232022201000: [101001040340004,112022334022101,101011324004222,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230,100004221041210,111103212211022],
+        1112000320000024: [101032111230411,103010110120020,110100032122000,101020210301131,110304002000013,110200001314040],
+        1032100004421232: [102340101000014,111203032220113,102140200212214,112241010203003,103010101412020,114020110001011,101031140301430,100303021003013,101133001110034,114004000021113],
+        1004021000312004: [102042310203001,114010022302104,102002401444410,102300200220002,101141430330003,102121211343322,112111002010002,100020314100010,110000000040030,110130144202012],
+        1040324200242131: [101032000323012,100002201031130,102003104011100,110444300101200,110011024414011,100011104344414,103300204014142,104133200011000,114203022320321,112234142031230],
+        1002101401014100: [100032041021210,110004301222000,110414300030001,100030020011022,102040011121100,114310000001232,111202012222402,111322234130000,102040041320010,103203401400132],
+        112013004010200: [100221414100030,101042234210011,100001124311011,110322002100130,110000032003020,110011404202441,100431344122010,114120434002420,101022000302412,111000102202120],
+        134312030143303: [112003000224300,102043100242004,100430214302020,102012004014321,112410112024141,114100100000120,100000044230421,112041031110300,114121204120122,101000301142210],
+        1400041101200320: [114423100001142,100040214100420,111304104130300,110221030000000,100402210010221,114000200023022,110200420000411,100012101214010,100022300042040,100300421202043],
+        1044310140020021: [104100002100221,104310001300102,102000321102310,112000044002102,102134044134410,101202001022000,111300220000230,114110032343001,100110101040020,114012222301110],
+        103001000111042: [110430000400002,102124231401212,103032201404142,102243044041110,100100104302010,100201210430001,114022042300011,114113000220431,102101041412000,110022411321002],
+        1142200100121230: [102113020210002,102031001441000,102011021440030,102121124130314,112032400230000,114200002320110,100142110410122,111030002200011,100124024031000,110002020024020],
+        1002100022012030: [110040022130003,100030430422242,101120014204000,100100014230110,110201004241002,101000131142230,112001204023241,100104044230000,114022024012213],
+        200002000024220: [101011004212201,110032022002020,100214230430124,103031234000122,100400110020244,102044021101411,101042001021012,101100104002023,103230011412301,100400000010020],
+        100002014220224: [100102000010243,112300042020334,103012200100120,110402000100440,100011110200210,102131020200344,101030414210000,102201004111020,100000211020431,100442024301200],
+        134310010102002: [111210044131101,101242421020211,100000001224221,112301111130031,111204200002001,101242000300323,111141010000303,110210031200000,110100112141101,111230044134200],
+        1430404024014400: [112000112000031,102022124012030,100143220410040,112024000213011,100103030001121,111000004400110],
+        1111030010301130: [103100030100010,101400004022100,101421100301230,100003414100400,102013110201200,102300121004222,114221004002212,112000230220102,112010022302321,102000324011143],
+        133220000022012: [101042010300204,100001021231414,111222034100421,102012304011012,103414304004120,103120104002021,112110102310101,102000101102200,101020034211130,111212224410011],
+        1040030243120202: [102022200223242,112142000203203,100011210102401,112010102001413,114423224140221,101200004200201,101411400334310,102244110200013,114140014120332,102200111120010],
+        131020030000000: [101011411020120,101000010201420,1320010021102402,201200032021040,100040011432042,401000020221031,1440003320032101,100201001100200,110021020011204,1041011113104304],
+        1131042034110330: [110211010012201,102014000220330,100010110000100,103122210103032,102310114033120,101032134211200,112113001100100,100030001042002,112024100240013,114204302322004],
+        1100031110040021: [100310120141002,100004001021111,103022021431010,100003000104203,102041410242244,102101220214011,114000424102300,102323201000412,102120231343021,102212434110001],
+        222004301010330: [100024000110221,114130014001202,110010220103020,111004100022110,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411,102131304003000],
+        130202311403002: [114034220041220,102102031403230,100024004210111,102002100222202,103343010113030,114040202214201,103200234030122,101001100320224,102140020210040,114121114121401],
+        132140024010423: [100011011020440,101011001103200,101002121000111,114023314013200,102040104000040,114022120040112,100000201024213,114003422304142,101400031014311,102110230200201],
+        1004302302144101: [101020024001041,100200201000001,102100000210002,112224232044014,112002100240200,103032004012111,100001404100110,110131022014120,101213110310042,112000002000110],
+        1402400004023031: [102202204040010,114200402332011,103333040110114,101022200343023,102000000221222,102011014001111,102101001342004,102103001414002,102022011101012,103002014010030],
+        213034032030421: [102020314012030,112014010202200,100000000410010,103201000102140,114220100000331,103231001400100,100101024101100,103012131430321,110414002024222,112321001130024],
+        101201440241104: [100024000110221,101000130320340,112401314040311,100110020031042,110422102110221,100220124221000,114130014001202,111004100022110,101002201140040,103030040121410],
+        120202142213301: [1122204031101014,1001412211040002,140011220320300,103144011212002,1304032042210300,1100220200041014,124211403120110,214301004122000,1003124230010302,1003033202212100],
+        1040020010132001: [114043010040031,100000101232023,100110044032141,100000021030000,110030102131421,101000204001222,100243331003301,100023200423040,103231010103110,100002404204111],
+        1022301000020002: [114000024100022,101020030332430,101022004214304,101001231032003,101001020322010,114112244122013,103310220113140,102443421400110,100043041020120,114200202330330],
+        200000200130000: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        124300020100404: [1300422220310121,100422321032021,120032010212320,411001103222300,411311131413022,1220101103414143,320440200013001,410000244003240],
+        212210122040221: [114021222212030,100020044100000,112440102010141,102024011104230,101003134001003,112000032314010,102131011120000,100220010412420,112012122000100,110000121024413],
+        101211020120212: [102111024000402,114321002320001,103220011411101,102001011100100,114402104142102,102311120222404,114020404020132,101220111023331,114220014111304,114400202310013],
+        144400423212012: [114231202331202,100003021234044,111102032220111,111300042200340,101010041032322,114020042300022,100021421020002,102400004040100,111120204100203,100122101040022],
+        120002310030424: [111042000041011,112040232002301,100023124103021,102120411023000,102000000240101,102020040223423,102201110212212,101111201110101,100031030000000,102020214011010],
+        1022001014201412: [101111104002440,112110020420002,1042102110020300,111403000002120,111001212200010,114131000001010,100032321230000,100400020022430,112201200203302,100400032200431],
+        130044340234131: [100100300421022,101204121022310,100342220042002,101012121022204,114022002212232,100212220001141,110012102000311,112422000200003,102010004010020,114004104110000],
+        102131002430004: [110100012120201,110020204200342,110002022002032,103303031402100,100004214301320,110302004430024,102023301101100,101000340000101,111203002221000,111143344100203],
+        1043014200300422: [110000100422111,100021110200330,103302034020140,110201021201020,102100101320344,102331131001113,100021104301202,111121302103104,103314201402401,114221312332014],
+        210002001114021: [100030220100110,100002114314022,102000100200100,102020400244030,103112100101020,114402102312001,110001102103432,112033300230131,110102002011031,110032402130011],
+        111304114430331: [112142301101040,102340221000300,101000130320340,101121100332142,112401314040311,100110020031042,102011004013000,110422102110221,111200122222334,100220124221000],
+        1122024011010110: [102424000230222,102102100210000,100002420121000,102001301320420,110202012033100,100004401020202,102201010202021,101210321000020,102002411102300,102200434122241],
+        1402110011421000: [101000141031222,102000421131000,114404020003022,100421242201010,100012424200031,102043120222040,110200200001000,114023024101231,101410114043204,114241202320300],
+        211022010223200: [110210114434301,114220024004132,100020100101101,102300310242221,114230012340300,112002030232410,101002214010010,111123224101232,112104020200001,102222001000203],
+        1001011142003122: [110212022124220,100003100410042,100222034340301,101440044041401,111210012243010,102130124000000,102010421413322,102114020210302,110240301111040,102113131343200],
+        1020403200202212: [100430020001120,103000004010400,100200021001113,100100301000012,111222004100001,102110010202221,100120001010201,103212111402314,101231400300040,100002204100020],
+        100020000202203: [103044301431001,102101142002021,102010220220022,103211001412040,101004114210003,100403304320200,102213241100111,110200024432011,212240000101000,100022202042210],
+        1100141402200232: [100043014203003,112332000411020,112230024010203,100000004244400,110024001211221,102012201441404,100131014234134,112000120241120,100030224300202,112202140201200],
+        110320003031232: [100113220020101,114031000022030,110110200001000,102302004110231,102203004032420,103001000101304,100020110423022,101000114000032,110330042104010],
+        221100101043122: [110020000114010,103202100102142,101020014000210,101002330300234,114012200021133,111000402224222,111230202241100,101013024014031,100242021003200,110100222000112],
+        1044100431110022: [111122100010330,102302231004020,102110031342012,103001000141212,103211324003020,114014442200003,100103121044231,100101201041310,132012000000230,102320211001220],
+        140022330311203: [100301300121100,110042400130000,103020124010320,100021300101201,111200020004203,104101201240100,110000011012202,101001040302400,101244324043222,112102232300222],
+        1143120003240000: [114101024120020,102004011440212,103140320213200,100011204300012,100001021221000,114003134011032,100101234330123,110024000432310,102012101443110,102102104000102],
+        112030000433004: [110100111221242,132344004001203,114303202300104,102100300233312,111021044400403,101241000303240,111330012201120,111021222200004,101000030312102,111001320002031],
+        122300210010412: [100422000031421,110302040102004,101402114042420,102220021120430,111341300012200,100102000010243,112410034040040,111302304130401,100024334203210,103031410122401],
+        302201120300411: [114031004020241,102232401114310,110010412000231,110120324200000,110401014240131,102000004002400,103120120120122,103042204000321,100122004233201,112102311102012],
+        200110400100000: [104110021244203,100200004301323,110010030440201,110041002130210,110020004414024,102103022002001,102102224000012,110322100104010,102100102001032,100142431013000],
+        131002012300012: [114042304100001,101211240301300,101012220324031,110410412110241,114203134112000,102000000221441,101023230330104,100130124030404,103014140101101,111131132101000],
+        1040014002021103: [102301211002042,102343402000000,102004044011020,110423400000221,100121221000004,111402144422140,101400011102010,110220001100213,114120200220012,102213224030422],
+        1000433000212130: [102040431121110,101221020040220,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102042000222002,100030010102102,103312241402001],
+        1124032330300131: [112203011103444,114000322300011,100002314302420,143310043400402,100120014234012,101104300333034,103202434024000,100302034100120,101023124012440,100023020000304],
+        1021240141202021: [100043014203003,112230024010203,100000004244400,100131014234134,100030224300202,112202140201200,112001124000003,100204004122414,100003234202001,102311000240102],
+        210031201011421: [110202012100020,101031241000010,102303010241010,102120231343224,111342020011220,100314114322101,114404232310120,102230130203001,103100034001310,102021401324232],
+        200220002202000: [103200211420103,100202304341102,112203242043001,114110012310420,110104434402221,114323424033100,100030034340432,100402300022020,100004001021001,101020204002120],
+        1021100200121000: [102330004110200,100000004134002,111202404440010,110100331001102,101020031001112,112422020201002,100100001202011,114104030222003,102320241000010,114220200211110],
+        1100040012111022: [114213134000203,114300020001420,114133230000102,102400100202230,101021120323020,100102101000203,100001021030011,112410220202110,103141210104024,103200110102141],
+        1002210140313013: [102020100211004,100300031003200,101023000340120,101020200302021,102021030221122,102241210201000,114040222301101,102140110210424,101201000300222,101002020342202],
+        124101000140330: [100024000110221,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411],
+        1000311010001022: [110241024242442,110444010032242,112220001100200,114014130041210,100001041031013,110224200113042,101000020301410,114000102210200,101041001032310,103103210111220],
+        111222444412200: [110300222104222,100002040410130,100440001000012,100403011002204,110202414214022,111002420031340,112432142020024,101103012130233,102320304030000,101112241010002],
+        120022401312010: [114040100030400,102301011002321,101012011022300,100401401003240,114100002340040,110003301213002,103412224020402,112033311122000,100210001002210,102110120202141],
+        240011012000022: [114400022321400,100011101222101,100030411042022,114304212302401,100000014201221,110200030001040,102312021101141,101010001022001,100020111222204,112022400231120],
+        1003443010100003: [100140101044224,101120004023340,101000211032200,111010130002222,110200300000010,101210000300320,102120022000224,101310120314012,103114014004102,111213130001022],
+        300030002203003: [114200212322001,100401210020002,110001440041003,100010111022102,100220300410430,101024201114010,102412220200003,110012222000144,100201214123301,114302122323101],
+        1000202400203210: [110001332120300,110003000420200,110243234240200,110004014411012,114220040000201,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        110012304000042: [101220040300414,102121211343322,1320004203402400,101003140301001,102410001111322,400020203022020,113210210400400,110102000002203,1302200002412211,400100441040022],
+        224200000220000: [103111001422000,101400004022100,100300041001121,101240004011021,101114000332010,112112211102024,114031212300211,102013110201200,102111022001024,103210431422030],
+        110013020043243: [100114004100001,114102300004024,112102201102030,103222244003021,102420011111224,100020004300114,100340114211043,100033001220020,110232020002221,114233002340141],
+        1412301200202400: [111304340002030,110102000401214,100100111044040,103140014002031,102024102020000,102224241110003,112003020220120,114113014000010,100043024210301,102014001130100],
+        112341102400140: [112302112020021,112010032340022,114120304000212,100141410402200,114111202313213,101042041021001,100010031232443,101211414040000,100242024100000,100114020414244],
+        100100340021203: [112142301101040,101000130320340,101214440300301,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440,100033230420102],
+        1403020230013200: [111240220002100,102010111102410,101000110322242,110100001014311,102404110230202,100010020101222,101222104010140,102120400200312,102001144004041,102304244110431],
+        1011101011001300: [100001141221200,101023001024400,112020002311112,112000030210340,102201000203202,102111320321320,100302120421003,111200300010114,102020341100213,102010002000404],
+        1001320200302310: [101111140300020,102140200212214,101031140301430,100303021003013,112141320423240,100220014223020,112300140200131,103204200110201,101012134000100,101100034201000],
+        130310031021023: [110400112011100,100321004011041,110002342100014,110241024242442,110021312002040,111101042244210,110441010002400,110124002040002,114203104001000,114302200014241],
+        120120021320220: [100041000411231,100013014102414,101004204210100,102011001320032,102140040210040,100034134300203,114312012320120,102442424021234,102010031444104,102341021101200],
+        1000300034321112: [104100002100221,102000321102310,102134044134410,101202001022000,111300220000230,100133204300040,114110032343001,100110101040020,114012222301110,103120440104110],
+        320113202410010: [103000001004002,103012000142231,102344210242220,110102021011203],
+        100340003310300: [100301224310100,103002104012101,114021000012031,103220130211414,100012324202240,112101102012030,110003410100312,122000430101030,114000022300301,100311000141022],
+        113231120202140: [110012031011302,111200104411001,102121200313040,111011104401124,111201004131300,100300021202320,102224202023120,110334102021144,110304202202001,110421000003000],
+        1024222012010320: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        1201111102102101: [100004001021111,101021004214202,100001010014420,100003000104203,102114320203000,101011001103200,114001112300001,102040104000040,102311110240101,114002002300302],
+        102104300404420: [110441234224400,110310020040401,110202204430020,110310002221402,110030002130201,110242100010130,102103320232241,100200000000210,110200222111020,110220044210202],
+        1141121340202000: [112202000411103,114003344011001,101040100302002,101203001010111,100310034310200,101000314000042,114003022300020,100031201030102,114201104114111,101041001003300],
+        1000300210004143: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,102042411104200,102321410240300,100021014100124,100130244302034,100122040012210],
+        1001000204022133: [103002001240043,112023420232024,112002002003003,110002120000000,102340001102023,101202101000104,102100034001000,102302121101002,100400230021400,110001200421021],
+        1122211200020042: [110414402020021,114020014110120,102142030224211,101000034000220,114312012300300,112402012020000,103322241400404,114102140221100,103210120100143,110000121300012],
+        1010020022012232: [111010204402020,112010201112142,100030134100201,112012424004111,112000020240130,111201000003100,112000204000044,101004014210342,103210000102340,132424430000000],
+        1102434010413110: [102340221000300,100402002201002,101011014002032,102104101122100,102423114022101,101131201110300,112002010221020,111012030020003,112000011111003,103210230131414],
+        120102000220100: [100002100100210,102420424042020,100010001032223,102111024000402,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100102020411200],
+        110212320000212: [114402020004242,102242304042410,112032012004300,101001034002001,102000014004040,111020004400234,1010120030012200,101024411001024,1042012320010021,221104221024023],
+        1102110000340210: [110230102122422,102300400220221,100013024201330,112120300420042,100100104100320,110404200003201,102101030220010,100020100411301,102001001133110,110102141201112],
+        301300000140134: [100002100100210,100010001032223,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111,100102020411200,114200302341234,103002110100200],
+        131320010420104: [102101211411000,112032040234431,101020004000000,101004310324302,100102224033421,100120040400011,100214044220201,100400110020244,100124021201021,114011120010030],
+        104044310001031: [101444024041143,103020001400040,101023020301100,110200332041001,114004020010203,102100221341001,100011301000021,102014001441210,103204321414213,101004200341000],
+        1003001222001421: [102011214000000,110100104403201,102214204040420,103023141400000,101001100300012,100403022201202,110203222040110,101011001031001,111300030040030,100002201032120],
+        120000222023001: [112302112020021,112010032340022,100002104302110,110030222130000,101022440300020,110204434434200,102110224000013,110040030001400,114020210031032,100141410402200],
+        1010040042020303: [102000220220104,100030004102002,103110114000220,103200021402002,114001200041204,114020114010322,102030401014002,100000020102121,101000201001002,114004220040304],
+        1011004302140100: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        130200300211032: [100210014322020,114010224101022,100030131042200,101203004042010,114221000210214,101410044041001,1144030041011004,111104224102244,103400004000422,103130201421040],
+        200010033320200: [111200200000232,101200101021000,100101001011114,101430004040203,103122104002013,101020404210020,114200104001010,114040414014202,100000024301031,101032010322010],
+        111222320210000: [101301014221122,114220040000201,102102204022310,111040032200021,114040210022000,100404400013222,112010420241002,112201010203210,100000214310412,103042320101230],
+        1112023202030221: [114002104014300,102000311102212,100130320031042,102010004040000,112433112020200,100042001020203,112023032000020,102000201101332,100111304300020,114132420004104],
+        1012320020133003: [111112002210022,103222004002001,100003421042112,114240004110231,102024021130010,103200224020100,103013024002104,112012010230002],
+        1100000042242020: [100010400022200,102420221112201,101224044041002,100010344310042,102103214000210,100402012200112],
+        221201000122124: [114002104014300,102000311102212,102010004040000,102230130203001,112433112020200,112301312020123,103313404030100,101400201014000,102000201101332,102231041120104],
+        102000221422040: [101011004212201,110032022002020,100214230430124,103031234000122,100400110020244,101042001021012,103230011412301,101100104002023,100400000010020,100124021201021],
+        222402023100200: [112204410414103,100014030414202,102012021131340,100210104104000,110020401211010,114201214142110,100403000022030,112000301120301,103101104000000,101214010302044],
+        1400100000000411: [100002100100210,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,103020031403100,102200401111200,102311120222404,102000430221040],
+        224203010441120: [100202221212300,101001204211221,110004022000404,114240210000130,111240000001101,110010012102144,101020200301303,112000111120040,101120204202002,112030012300122],
+        1001000013420411: [110432300102000,100011004102400,110040344210011,100003200020112,101000100340001,101300240310420,102100020214203,103000300124010,100030301030114,114211410004214],
+        232110311230110: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,112002104003412,102211210242000],
+        1002131400444241: [100002201031130,102003104011100,110011024414011,103300204014142,114203022320321,114201130210110,104103100010141,111101222240010,103110001420420,102000121100012],
+        1200010304020112: [103114204002100,114230004110101,102334021001211,100001101033010,100000001024010,101000304000400,100100014302013,101204031024110,102020204010341,111310000002001],
+        1003423010013402: [101112141012322,100100000401020,100211104104241,100103001220002,100400102200124,103000211221141,112201001104000],
+        122012300113332: [103000000104034,101022121000241,111100004100400,112310032020303,100020014100010,114230304101022,102423124023042,102421000201200,103014121401311,100400002201020],
+        203220132340402: [102122401340101,110021020001220,114420102323300,110112030401012,111112204404021,110404122110112,110403010000304,114100040214000,102412044040011,110411004223302],
+        102002323000400: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        121131020121131: [100242430032003,101412131010213,102020010200102,100400000020210,102202010204130,100032000002120,100424011014010,100003040422420,110202344240014,111101100020030],
+        1032234110020402: [101221121202421,111042022141200,101441101010020,102022031321021,100442220030040,112310010200312,100100241020020,100002004342004,103010330100320,101033300332204],
+        1430002030101012: [100310120141002,103214010102022,102324014112020,102404021403141,103022021431010,103200020111014,100010004313001,103104200210410,100002200410030,100121031014040],
+        1000010140210402: [100041000010302,112004202302034,114210400000112,111321314133000,101131024020440,102031014002010,101000134220400,114030202300100,102300040210200,101023001021100],
+        102211000430322: [102202004042024,110140001010224,100000004300000,110000000130104,110112401320042,110020022003000,101011100331002,112030340234011,100010010204302,100310201003011],
+        1121320023011220: [101031241000010,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110011300010031,110002401102404,102300010221010,110221021202011],
+        1103013112032040: [102201000240040,101141104002200,103320300114001,100101000010002,110240302100000,100033411000232,103021100002140,111024112200320,113110032411002,111223220012232],
+        124143012001001: [110040112132130,102221041100201,100204004121023,100413304100413,112134000201310,101002401110142,100110130000123,100200201213011,102030000221134,102201032021231],
+        111012000214304: [110000112003030,111310220042301,112410434041401,110300024422133],
+        1001214121413200: [102300120242120,110444010032242,112220001100200,114014130041210,100001041031013,102430001113001,110224200113042,101000020301410,101041001032310,100042424214220],
+        102041023034012: [102310031100100,100000214102101,102230121123030,114020402303041,103000000104034,103020031420410,103100124003243,102033200222311,100002021020001,102000110224002],
+        101201000224314: [100030231000344,112311011101001,110100124402042,111120402212201,100101021021114,102120404134413,101100200330040,110040212000010,110211202030440,114440012312003],
+        1000201103200131: [102023324010020,114000004103003,111131002212014,102110100233222,102120311402124,101042421021120,114013204013220,102000100221400,114241204001213,100044024200432],
+        1430200401000200: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        201034010042420: [101321001000010,101010424210144,102203011120021,100401140034220,100130014300042,114034400040402,100010100102032,112010344023013,114002002300222,102102131340404],
+        302000002041301: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        1111012022001404: [102101211411000,114110200212210,100102224033421,100104101200201,102021001411110,114222010213042,110041102012100,100120430411222,110014314410140,100022014302423],
+        1040133013000211: [102131104023111,102420130230104,103000004010400,100000004310002,101021014224121,100012114210011,111301000000031,111200304131014,103020200123211,100000340120221],
+        112203022421400: [114430324140000,103100010212020,110000440420040,100402200033000,100022010100002,100043404304202,100102014301210,101011000302004,100041121022141,114233000212030],
+        120001010004103: [100001300102001,112033124022002,101013114001130,110110102042312,101004104010020,102001014003100,114121200231310,100110101010234,100243201003120,110010002004203],
+        110000202301012: [114124400000022,1104100000042000,1302001134003203,244000303210100,103100240003304,110000011101202,1310001001103311],
+        122203001121112: [102342214020012,100220024324023,100214104301120,104130011240303,103400100131022,114100212210001,114143200211211,102320234112041,110402101344233,101001011001300],
+        1040002130100000: [110010000111020,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101,101022011003022],
+        113210420410210: [114400034111031,234010311030401,110002201200100,103120044002023,101121420321412,102210004034010,112423030200001,101010111030103,100430020420000,100422210013104],
+        103010201110000: [102001404012100,114201204111222,103300004021200,102122214131011,100023031000024,103230134011412,100012004101221,100020004101012,102402000201011,102311011000200],
+        1030120000033000: [100301300121100,110042400130000,103020124010320,100021300101201,104101201240100,110000011012202,101244324043222,112102232300222,102000020241101,112311000204002],
+        130010111420131: [114212012310002,102004004002321,111301022200213,114002114102311,110000230010221,110310012024144,112031000230000,100012024301000,112012240221124,110302300040021],
+        1002200021233411: [114024002200340,1040124303014404,131403134400030,114211022324201,421004021010044,403114413114010,1300214003010004,400010020041221,1020104432243040,1301111304022013],
+        1030123301010410: [102323101101400,220103022224020,101230330042220,1304100402114410,410142111403201,1002022230124020],
+        1100342212220312: [102300122004231,102321401000212,102042444010014,102330311004110,114032110040320,114003440040210,114423100000411,110040104210200,102442300230020,103120010100120],
+        1010021402000102: [100014100100001,102100004130301,111120004100414,101034024000101,101243024011000,103033011400312,103340410140122,100010021221221,111012202111021,100103144302200],
+        1032003300010022: [100140201011204,104010100010424,103010014013304,102103030201001,101203104200224,100010221031023,100140000024021,101223024200014,112240404012020,102000220204011],
+        1004030022200104: [114410024110002,111200210001023,101101401020424,100002200100100,102032022000041,100020000120134,112422100200404,110202001212002,102342022000024,114000222330121],
+        1002334042024203: [100000041040000,102401141113031,103042420143020,102304314110202,110210400002012,113032012204012,100002134300030,100130414300000,112310002020302,100204311000400],
+        141310223100102: [102211220201114,102101004030220,102003001132213,102100204030012,114041040023020],
+        1030113101412220: [102043200200021,1020000323020202,102310100201021,110230121300210,103020334003020,103024401243320,101100400321330,123004100001230,102100430314220,100103011004230],
+        130012011302123: [101020210300204,112203122042414,103021210110121,100000401020012,110203100002414,114002100002414,100200321001303,101211011023023,102102030200304,103020224040304],
+        102040033020001: [102213210210004,101220121101403,112210141104023,234010311030401,100003030202011,110103420020232,100010041001440,112423030200001,102302421103304,103220010130113],
+        1040020123000011: [110401004221204,100322444314002,100001030100030,112012004004000,103141100104002,110341300400201,100000104210240,100224010102312,111120032213101,100142201023312],
+        311204310140201: [100100121041013,101401211012010,114000010041320,114120204003101,114401322310000,100000000101012,101020230322012,102103120200023,112004302030010,102100001400332],
+        1031313301002322: [102133404134022,130000220021033,1040014000334201,100020110003100,131114110030130,1120023242400240,113000343131000,410120000124111,413200300004130,101310000020110],
+        1000322112203200: [112004001122300,101301124222004,114010204101202,100041234101100,112204220200011,110013202120001,100230040410200,100211211002001,103210004031201,114142200220014],
+        213400103001001: [131402001003121,100440420024144,114420000001024,102030414000201,102402000202120,100304111000014,103300031403210,100022131043110,102010021413001,110010001011032],
+        1000002010004002: [110104112010103,111102004100101,100122004300410,102202414041044,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004,112203221102231],
+        1440340020021130: [102030004002200,112414102011010,110014012001011,110022410420343,100100410401030,102000040222041,100400430022423,100201314104221,110420200000430,112323332001000],
+        1044422001133000: [110401004221204,111112000011222,102403001342000,100322444314002,101003301020022,100400020033040,100102431021300,110200212041001,100001030100030,112012004004000],
+        1110113020400001: [112021201120101,101142124022010,114202002320113,101000104002203,102430001401230,102103422004103,100010024202200,100020004212223,112101002304200,102102021143222],
+        1130110031113040: [100020120021020,103001101422010,102014400223314,111012340040202,100112304000043,102100411121420,100013014310022,100002210000012,111001400043101,101414220302220],
+        1020032401220203: [100023421041402,101010224000130,101144134001102,110012220002021,100210020410010,114034422302101,101000414002041,110421104242000,110220302043002,102322004112023],
+        133131004200044: [101022014222024,100032000101014,103030104000102,111311002224001,100032134101100,114201024112001,112010024023002,100000421024110,102130314134001,102011211102101],
+        1133110320024010: [114040102210432,100034004211240,102140121410131,112040200233002,102113111343110,103234100101221,114002220010031,103103311424020,100001010412000,114000304104142],
+        1040030403040020: [110200004243223,102000010200200,100033400410104,110210001310230,100010144303000,100413300430300,110020122000000,112020402001012,103144401421000,100133404030004],
+        103001001101000: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        120402400010003: [110000001324024,101020111001331,101000001111200,114010040023411,102300404024300,102110001342011,102001010222103,100040041020102,100000101030412,114420142322140],
+        130200040100400: [110021220021121,103322424033024,200003230020033,100010130140100,114101104124300,110040000440000,110010010431112,102103201412111,101140114004004,110210004212240],
+        1100240221002300: [114313304002310,102004110223232,112204010411101,103202404003021,103211010211331],
+        1000243221002300: [103202134021411,102321011102100,100330104310102,101101000331232,103120234000102,114011004123232,114402022314101,111110002102202,114001000022103,102012102002404],
+        130000120101201: [101212000301013,100000211020034,101000000323000,102024034002302,100200321001013,101000124221041,100022214202002,113000020120100,111202020012102,112031000210110],
+        1020310142120200: [102121221343020,101010101022202,112104424022201,100013211002142,1300034431310021,102210104000000,111023100040110,103113224004201,102211204000440,102203211104211],
+        1122101022242012: [401142101000022,1342140400001210,1203210010100211,400114001102410,111011220004001,431232000323104,100221110031000],
+        103124002412324: [1020102233442023,110001440000224,101404203243201,1132012124324031],
+        203214212220130: [100020014300000,111000302200441,1340223401102011,114100200214010],
+        130440124000200: [104120011242011,114300000000002,110020002104100,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102,112400034040002,101041100300001],
+        1400120100004432: [101440004041120,101031214000041,114112020212203,114302020003041,102110014030002,110201200000101,110110000032030,102001200204101,102033340222200,110042402132412],
+        1020013040344222: [112121214040022,102401221402002,102102011342302,102140200224200,101001244010120,101030224004130,100000030120242,102110400210023,100004020411201,110144100400420],
+        1000320121000120: [100003011041040,103200141404212,114001112300222,100203141001002,114122440000024,103000020103121,101200024010043,101044211032201,100011111032203,103021440122032],
+        1044212030003200: [101001040340004,102424204043100,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140,110020124200230],
+        120213310220222: [101020414010211,101120204002140,101142004000232,101020024002022,112002112002220,100012304300004,100400320013200,102041314012004,102010001101101,103001314000242],
+        202310110441022: [112142301101040,102340221000300,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,100402002201002,100033230420102,111110004402021],
+        120013000200101: [100041204212120,102113110210240,100341130142101,112423424042102,100320431000002,102100300210100,411200101402221,102440100200000,1302011220000002,100401430030420],
+        104300002140120: [110012031011302,111200104411001,102121200313040,111011104401124,100300021202320,110334102021144,102224202023120,103410414000011,111212120001103,110201102230003],
+        1001221003044032: [100440104303400,102122000214201,102220241100202,102024240221040,110320011200230,100342024100204,101422034042201,100011114300334,102300001002140,110040122000002],
+        112014040222200: [100214121000000,100042034200032,102011041100210,114323000000130,101400240300010,102412241111002,100424104302020,101013234000010,102002010224011,103210014003000],
+        1000434104411110: [100312331004000,103301244010210,100101031041022,100000240003101,103001220100000,114124420032020,112012012002100,102314001000244,114100000031020,100003124211410],
+        121001011123100: [100003030003020,110410000104042,100014014203233,111422100034314,100000040413000,100001034310012,102030414003000,121310232003222,110011300143002,100220021000033],
+        1000000302320041: [102112432004423,102402124022000,102032204000102,101001030310014,114222122332021,103004041410020,101004004211001,101002000323021,114000000021014,110200202231210],
+        1043002012101012: [110013202003320,101031241000010,102120231343224,110030332100203,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220,100020010200022],
+        101021202010042: [114210014110000,112020042344001,111101122102222,110034004420011,103000114001000,100003344214000,111022214113044,102322420210320,114124040000002,100112001021112],
+        1000002002141314: [100214230412031,114022024010120,114210204000010,100202400410110,103021004001020,110223300010103,110202024432022,100111141040220,113004400141240,100043004101001],
+        120334102130204: [101242011000124,100202340430142,114420242311240,110141001301302,101200200300310,114011402303024,112124000203110,102020004000040,100020030104002,102110201342301],
+        112130414022120: [110021100023210,103122000100403,114103412201420,110014300041302,114241000002004,110020310022021,101121021020012,110321001330010,100000300100000,100400214321121],
+        211320022102003: [111200200000232,101200101021000,100101001011114,101430004040203,103000024014022,103122104002013,101020404210020,100001001021002,114200104001010,114040414014202],
+        112100210130102: [112004012000201,111312014124200,110132211004000,100022000000314,101103044002141,101410410301140,114103234000402,114140020210200,110201002224022,112002101122002],
+        1000022024020021: [103122020213112,114101100211240,103012011434022,101032010342004,114102102344110,114010002300003,100112110020301,100000004102124,102000034013222,100022301000112],
+        220101402120102: [110102224201130,103301201402204,100021020124002,102104131412412,114020312300021,102400204043012,114010102300010,114042014014024,100000000200102,101011011000320],
+        220440442104101: [112142301101040,102340221000300,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,100402002201002,100033230420102,111110004402021],
+        1021100114242002: [114032104100141,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,102021241324040,102000111102000,102300441002012],
+        1002430021400001: [100022024212302,114104002204400,100040410000030,103203400100320,101211311002032,102201210232332,110202032123200,110231200114010,103210011413012,112411014041022],
+        1001204122440221: [141000211410012,110101322000312,100100001004210,111101104101324,110111000003302,111044114411101,100124114331032,114110220020020,101202110301231,110100022230000],
+        1021001410103041: [400124411000212,100002010410120,1321022130413330,1302001134003203,420023000041240,104231102420022,244000303210100,110302040021421,1420221102104240,1001443041410021],
+        1101000333002042: [111102110012000,111142010020301,100031201030331,100000144104100,101000344010212,101033141030001,100104400021023,102111210230204,101003400322022,102200421003014],
+        1111002020002210: [1200300001400200],
+        101013202230004: [101202000300323,1202120201221210,110400323041022,1134000004202341,100000144310420,411011320001004,1400102001010010,1002004011000420,110004004413303,114131042311202],
+        1020001020041134: [102334004110232,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,101120030010320,114124002341030,110302322102041,110322210100140],
+        1140322000311402: [103442110132330,112010420232040,100032114202001,100220410101001,101023024210000,102140322001242,110000442001100,110201401201230,112013124020300,110000020440133],
+        102430210141402: [112004000212242,101002030320032,111410302212101,101001021001221],
+        1012140012122241: [110220122044010,110042304412204,114020124021122,100002201003312,100110214103200,101030320322101,114140002313010,102230121120000,103300001402013,122242202003000],
+        1101403140140000: [100300041001121,101240004011021,100120014100010,102303030241010,102202144110114,101013220320021,103002020142122,114231042331020,114200324004201,102010424000320],
+        100100042014203: [100231401213132,114210104113314,114021232300112,103001000120444,101144024000232,101302121004422,100110000000000,100000010011430,100114420000140,102320021100120],
+        1243004213402001: [102304030220001,102141124004222,112042422001032,101010001000432,100134101022112,103310200110020,100020031030323,102140041342001,100001001032400,112100022010403],
+        1140110020021401: [114020000011320,111020032203301,100031001030010,101000210303342,103433144040432,101440400302320,103000121424330,101204004040140,102111021022024,112010222001103],
+        1132400004020033: [102223111000042,102320200221110,101000410321210,101040401032021,114200004110030,111102324104110,100030124212213,114210102320112,102304331000110,101301420312101],
+        1022020414111011: [103000210120000,101211031002000,111220000010211,112010122302144,102141002001403,100030101031100,100011244102344,100101020412042,102321034113010,100031300101240],
+        102243002344030: [102121201340001,102200211120103,110400242110410,111302204123234,100030020423044,103013104002044,114211004004210,100034204310001,111202000003000,110011340001104],
+        1030132020032001: [110004020020022,100043010120010,110030110122402,102143432000102,101031001004201,102040010200101,102200434012013,112000301122111,114001110033210,102013120200110],
+        1000404024211431: [101204400304011,100020440122040,100301020420101,102002202000000,102101414130243,100040211031313,103004001400210,111100034100301,111213002240400,103003004044030],
+        210133403121024: [103043404000202,101001400301113,103101024004200,102014111102023,101301014220002,101012044004042,112410300200001,102020304000321,100021201020001,100112240020023],
+        1043313043423032: [101133001104410,114202424001100,114113004120221,1100000411441420,1002203010011112,101211011012300,100010300121240,1012004033012200,402001100011120,100020321030202],
+        200234040022202: [110020100042220,102123000230200,114200302320443,100401111000221,103302010140122,100010001001122,104240202023232,114030204021200,114000022210140,100141321000100],
+        1122002320000201: [110102224201130,103301201402204,102401121113302,100021020124002,102104131412412,114020312300021,101320040302031,102400204043012,114010102300010,114042014014024],
+        1011100022032120: [102300001002440,112402034013000,101011020320030,112202040411432,110013020024300,112101120201010,114124200000414,102010211120200,100400202201400,100403120013010],
+        122100001114100: [102000121122000,110011424414202,100040011023003,114223212320410,100000010411010,110232011000001,100130004033423,102111301413000,101002120323040,111000212203022],
+        1040230030404323: [100030324200410,114202244112111,102110202001010,114200020003431,114041002212302,100043200102020,103332044032320,100212024322044,100140004102001,114101024122320],
+        1011120021000001: [102342014111202,114040002330341,411010033020221,114102020422002,1224320120024001,200002003223300,100224410030410,1101040131142040,111100001002113,132220124203004],
+        214002020133001: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        1423020021400000: [102242304042410,112032012004300,101001034002001,102000014004040,1010120030012200,101024411001024,221104221024023,100010410420002,112000034000041,100202211200032],
+        210402131102001: [102040431121110,100400002201113,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102111024000402,102042000222002,102001011100100],
+        103340001102200: [102120031140142,101010224000130,100404410022320,102220220201011,100222044100141,102134144003010,101004020311013,102210304030340,111302024132000,112134124001023],
+        1010123012002033: [103004201421221,1331041104430100,100104114230000,100202004104140,103020441400230,1032220014300112,103222400100400,1002200000203001],
+        1002004140011141: [112012111114213,102230004030112,100100221012100,112102000202302,100130401022113,111103304400022,114112402340003,101000431144041,100341101003203,100400230022124],
+        204200441000000: [103130424000200,114010204012441,110012031224104,114000240030002,114002322300200,103244034020020,103201034020234,102422010203030,114013402304000,114043342241044],
+        102034001104300: [102112121341220,110030004200002,100223211000000,112031110240010,100100414230101,102140011120322,112002220230430,110134022013042,101320231003040,102110011142012],
+        131301024120302: [103101224000011,102200042000104,103002000104400,103002144042123,110114021000012,101012000320441,114124414000000,102304204110040,112020004002110,111221440000011],
+        110011002000401: [100310120141002,103214010102022,102324014112020,102404021403141,103200020111014,100010004313001,102010200221000,103104200210410,100002200410030,100121031014040],
+        111000342102030: [103222004002001,100003421042112,114240004110231,102024021130010,101244001000204,103200224020100,103013024002104,112012010230002],
+        101230221310100: [100043014203003,112230024010203,102032114021101,100131014234134,112202140201200,110213000004112,103002011433141,112001124000003,100204004122414,100003234202001],
+        110213311302121: [101042410301221,110432300102000,100102024100020,102304000210204,110040344210011,100003320401100,100020120101000,100003200020112,112143144020012,103231224012042],
+        102042113001310: [102442411400220,114021100031031,110200131210002,112011210220001,110001001020401,110022000020132,101100014000041,102442340230020,111201002222001,110102000022000],
+        131100002301141: [110302302001423,101010101022202,100013211002142,110104000024100,102211204000440,100200001001420,114141024004011,111030424400000,114140044002043,100031101031110],
+        112030200001000: [100141220000211,110042202002303,100320011001200,102002344013100,110002002200300,111200302214000,110443002010003],
+        104001114001030: [102102241341004,114002034102120,103002020101431,102020431101132,101404104000404,102030011324204,100001024102120,111100022244144,112221201100134,102322014112302],
+        1040331033212300: [100000100100200,112041031114021,100140330020001,110400240002411,110030001311103,102232104040041,101002424010442,101220004013020,102302041002022,101400424021221],
+        1042421000002340: [114032104100141,101213114040141,102210101002412,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,102021241324040],
+        1000222014242301: [102431111110001,1003002030122040,1320124301012211,120204110000223,1110002442211200],
+        1001002101100000: [1440100023013130,401210002011000,1014200301032410,1103013112041021,1001102321230101,110200024240110,140320413003120,121000110000222,400014401213001,103000001421223],
+        1131200314042412: [100400002201113,102420424042020,100100000422320,102100012002000,101320224220103,101302131002410,114140120222220,102233200213120,112020020234202,114031030020422],
+        1020401222100301: [111101144102000,102110031342012,103211324003020,101010020320000,102300310242221,102024101321401,100402132200000,114020000020300,103000001401041,100000134100202],
+        1000112304314214: [103034010121101,101440004042202,114201000004122,102422411113113,102201024041200,100100204101010,101223301020130,111141312211004,100341044310403,103002010121201],
+        1422103031100402: [101001400301113,103101024004200,103024000103302,103300021402104,102014111102023,102102024000001,101301014220002,101012044004042,102020304000321,100021201020001],
+        102010401201111: [110132031134031,102300200220002,100020314100010,404002010120214,100100012111201,1001412211040002,112100424020221,102102001341100,1304032042210300,103144011212002],
+        120300001000010: [102011201101012,102300304110030,114412000003141,103020041420212,100112011040011,114033300041020,100401024300321,100102030423010,102101004022104,101432240300300],
+        101003140222100: [102012300212321,112400202023020,104400100142023,1320024233112412,102230004030112,1002022012411300,214021333002200,1200301010403420,112102000202302,100130401022113],
+        100320020020201: [110113314221413,100040134340044,101123031111011,110120424221121,110240411110010,110001000142403,101022011140403,101401211012110,101000011010204,114324022300000],
+        100211000031004: [110003032000110,100120014234012,112011002002110,100331204212000,100000211232020],
+        1420402000300204: [111102110012000,111142010020301,100000144104100,101000344010212,101033141030001,100104400021023,102111210230204,101003400322022,102432201112110,102200421003014],
+        1004021011000000: [100030010011002,101021301022041,114410002324204,1043303323011400,1140104002020100,100402300013130,104402130010100,101201220402420,1001120000022000,400040001020004],
+        101203100100022: [1002022200102230,1012221001334200,112023142311002,100000030000011],
+        1000223000204220: [101221121202421,111042022141200,102300220241031,101441101010020,100442220030040,100100241020020,100002004342004,102312200240012,102012210213203,103010330100320],
+        1021202440220002: [110241024242442,102300120242120,110444010032242,112220001100200,114014130041210,100001041031013,114212102310100,110224200113042,101000020301410,114000102210200],
+        1200024201401030: [121000042140301,101404203243201],
+        122041022231143: [100111011011011,100030040101021,114310102300021,114014112300100,114030034013101,102400124020001,100102224234101,101013004001421,103000014011004,102010321411140],
+        132020211002032: [100220034322312,100203104322011,112002224004011,102110000210014,111101142110100,102000411410342,102310314114031,130200211400203,101302031000033,102020124011141],
+        1041031242330420: [111300210014020,100100031043410,114001100024243,111000142201220,112102100423402,110141112044000,100034244303010,100120000410220,114100322342010,102000214002210],
+        1002440310320031: [100440024301100,101023221000031,101400014040400,114101000221221,102013000202010,100031130410243,100110204101020,100010000201210,103222221410230,101233100303204],
+        100000010004433: [114112124140000,100000021023020,100100220423210,110044220021000,100231020112302,103122411441211,114102004002022,101110204004210,103414020133020,102022121324011],
+        100043200100130: [114400022321400,101302340312230,100011101222101,114304212302401,110021324200010,100401200010140,110040142002100,102300001102240,102312021101141,101010001022001],
+        123243200040000: [102011011131130,112402032010131,112310431102204,101010024213100,102010001101021,111122004100320,110001122003123,112100204002200,110143012040201,110020002102332],
+        200410030402211: [100402400013000,112340002022202,102310044114012,110101004223000,110300400000232,110000002010200,100130014234331,110030224201200,101022441110111,102210000313010],
+        1101020022222031: [100100021043102,100010141222300,114302004001202,100100000011011,101240311010402,110020001210223,112131000201420,110230032120002,103010100110112,111014030043044],
+        102332002003200: [100023240103222,110021000110000,111111224130002,110212310002021,103010334000010,110131222010140,100010000044200,110202001111010,101202240300202,112112034040112],
+        1113102102202000: [103220011411101,114220014111304,101030301000221,102003111413120,100023101043203,114200122340300,114201022330011,114020420030200,114143024003322,114021444010222],
+        1121000204302033: [110144240011020,112000244001222,114441114123013,103220211421421,110123230124040,114000012334102,101000014012442,111022210021013,131000001020102,102101214030204],
+        201011020101103: [100010400022200,102300001002144,102302444110110,103001000142003,110310004424232,100402012200112],
+        1012300422010310: [114300020001420,114133230000102,102234010200304,100001021030011,102200100204220,103200110102141,100021030100001,102203301003030,102334201001100,102010104023003],
+        1444002210011001: [110010100442102,100012341220120,102130014134000,114100242200433,100010114102101,100041001020232,110133002013103,100003044241304,100004204211224,100000220410320],
+        214012400114202: [112142301101040,101214440300301,101121100332142,111200122222334,102301024113440,100033230420102,111110004402021,100000030000001,112032420240110,101104120334002],
+        1102220101212100: [103012034041202,101201111200422,110322311300120,103340404020014,110010204204104,110104101003002,102100040202020,101333011000041,100032131220310,101201101022211],
+        1411044011011022: [110140001010224,100441301014410,114001024010010,102101224000013,111212204420203,110020022003000,114230020000033,101012004002440,103110400120002,100310201003011],
+        112110003040002: [102440014022301,110302204420101,101000001110403,102000011102224,102111041342000,102303310241230,100221101003420,114241200001240,110010004211300,102110024002001],
+        1100032034420030: [114441040001202,114422000000123,100010330010200,110412000000421,110221004213100,101112314020004,101023300320033,103100020121000,102220104012021,100143204020213],
+        1001123001021002: [100402430032210,110202222220410,131342330212024,114111040212210,114030120000104,110211000022421,113000022402120,120000211034230,103220001202000,111242022222024],
+        1040110010301041: [100011201020234,101221000302204,101040010311213,114100200002111,101000034210022,101322201001022,111212010004002,112420042020110,101022310300133,102110120210211],
+        1143121040001241: [100004001021111,101021004214202,100003000104203,102114320203000,114001112300001,101003104212220,102311110240101,114002002300302,100000304301120,114130210000231],
+        101002002112013: [102000100202041,101021041001434,111200024131220,111203034440323,100112401020300,110320222000043,114101000210402,100100000400120,112000211131111,110103431221000],
+        1013040200112002: [103321411401411,100042010200121,101000010300200,101022220302103,111010200000412,100004300100000,103013241240202,112010000243420,101010001000231,103032214000202],
+        1000332100000000: [111000122201420,104134121240044,100011004102400,102100020214203,103000300124010,102302001000120,100004120101032,100002221040242,110210044431141,101112030300043],
+        313414212313021: [100412400433000,101120001042201,100003310142001,103014120104032],
+        120003100340403: [110022000023010,102410141403032,100003214201113,100013000204021,100100021010323,102001000221040,103032400121000,101004104002142,102221000202231,102101210234111],
+        1120041023001012: [114200044114004,102202010204130,100424011014010,100220101204311,100003040422420,102100430233212,101010224210000,103003210141014,110421222011222,100021100002100],
+        103013440000011: [101011220324041,101300000310200,114220110001121,100031004311400,110020011223233,110013000002041,102220004001014,102141302001013,100401302200302,114200102320214],
+        100000210010211: [101133001104410,114202424001100,114113004120221,1100000411441420,1002203010011112,101211011012300,100010300121240,1012004033012200,402001100011120,100020321030202],
+        1100011011112232: [100220100110400,102403004042342,101024001034211,111122004101222,114020040013100,114001012300002,114000222213021,114102330210021,100000020401302,102103214000210],
+        203202412301230: [111020030040120,110002000134011,101122040304410,100302121000100,112003402002003,102000104003032,111011402203004,303020404011031,112011114002003,102012044013241],
+        1144340003301012: [103211200100400,102112231020231,100022004300020,102030304001101,100020420121003,114201204111002,112010122302144,100000114103021,101310000310240,100120244301401],
+        240231221203204: [102001404012100,1010400230221020,102302200210010,102340120222440,114223204100010,111041202200140,111300400002313,111101040014040,100023014313010,114021040010311],
+        200220344200022: [114110242200201,103002020101431,101404104000404,103020031420410,102101220231020,112220020204222,102322014112302,102110114020042,101432044040142,101000220311120],
+        1101202100011414: [100000100000432,114200104110001,111220100000032,114214040002011,100121324230300,100121111000220,100113434000102,100033320410000,103001424002424,112021410241120],
+        1002222010200010: [102420101111121,101222041041012,100032124210042,103222000100010,100100000021020,131213314114102,110020000000320,114010024020443,120011100321000,101210220304010],
+        1121140001000134: [102024001120110,110010002034300,102100042002040,110230402031010,111420004443424,101020411114000,111330024132300,102000310203004,111114332100303,111040002143023],
+        214000410443000: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,104130020011020,101114422122000,102001314013400,114110414140400,111201100011141],
+        110010211021431: [101011000322203,110241022112013,102110010230101,102041004040002,114423004144120,101010024214000,102203000200001,112424024010030,103014044010100,103224004020021],
+        1113113011034412: [103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,114201204111002,112120214020030,112010122302144],
+        1102211011314121: [112300212023031,114144004124200,102000121122000,110011424414202,110000214202000,100040011023003,100123031023104,114223212320410,100302114311412,103000004044020],
+        112220142032321: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421],
+        1020011332020310: [101232314010241,100301300121100,103020124010320,100021300101201,110230022122031,101000444214021,112102112301130,100414004300100,112102232300222,102200000201120],
+        120200002310401: [102404004041224,102200041120220,103220010101140,101140014001001,114101002200223,1034110304101100,110021041330000,114321140000202,121102001120113,103322000111220],
+        110000010320010: [102100304000010,101240100304114,110022114410310,102100110210040,110310124400123,110000040022323,110201400000100,110400204221003,112000000241102,103001001422040],
+        1201301200001200: [100000014100202,101012104001020,101210120302002,100140004230101,102000304001202,100010300121000,100001314100400,110100224201000,110140001120211,114010104100013],
+        100200402320001: [102221200204022,100004014300341,114100212211004,100104234230043,102101024000110,100401301001200,100110000414024,100011104104000,101234041021200,102411110232201],
+        231021100222211: [112102202040000,110100104404110,102110042001043,110200200400310,114100002204212,102003000212104,102000100220240,110013001200012,102030204000041,102110021341014],
+        1020023302031401: [110433012110300,110440201342022,112243340202002,101000204003420,110101240024120,110300310011030,100230101001020,101440130332003,100400024302030,103100010100001],
+        100244010012300: [112113214020100,102010202004402,111130312211003,103224041400220,101001010300404,103340004020422,102410220200004,103113010102100,101224044041002,102211430202033],
+        122201001302000: [100001311221321,111012024112012,112224010200122,100402000022000,110011242202000,102213301104400,113030342402110,113000141022010,101000331020102,110340342021001],
+        1112002214041102: [102102000213403,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,102100040220330,101002424214013,100012101022110,100400222200110],
+        1400011312102034: [114102300004024,112102201102030,103222244003021,102420011111224,110232020002221,101000140310132,100001311234020,102013102002210],
+        124041141201002: [110201320000011,114210000004140,102030004000212,110400121004031,112214002024310,110441014220002,100404322200002,102000331322102,112402122020012,100302024101020],
+        1402040010133140: [102004204041000,100104341010424,111020002202333,100002320411400,101000100342143,103142210104020,114400240003003,101022001002030,100002104104001,103302030111430],
+        120002440100022: [100000110410000,110211100000033,101200000304000,112014402034232,114222422332100,102000000211031,101400221012300,102110000210220,114333212323001,114102300220012],
+        100033320110020: [114020024104430,101343331004220,100140310020221,103110440210000,101204044010203,100123200410410,112023230230101,100403002201210,102101404003204,101020204210110],
+        1013300211000002: [101001000322303,103120004002000,100021441032202,100031000422032,102404120202300,100001304100000,103022041401232,100213114342042,100002401030040,100212001002030],
+        1042032400230001: [110120144200000,114022412330004,101200221022044,101041030320401,110241112020204,100002004104004,103130021444021,102100104002224,102100224000210,102103321411004],
+        100000320411041: [102100200234203,110203204241122,110001214200042,112002242001000,100021111211003,100010210101012,112010204003014,102032220221210,101032240320040,112001302302020],
+        1112124202104004: [102003004000040,102011101131021,100021100013401,100204011000000,111010110042210,100114200020220,114401004122120,103123200101000,110023031204100,102431411400001],
+        120020322311001: [114000034010043,1040014000334201,110220210110004,110221401304401,102220000230020,100111204004442,100212211003002,110420001101321],
+        1023043111021124: [102213210200210,111010014440002,102003001104112,102202121121022,114244024112212,100140110020002,102004110220430,100040211020022,102402220203024,102011330201112],
+        222004010332022: [111103240020200,110022201100020,100141214304000,101430001012430,100011204100020,102410220200004,102100211340043,112100311104022,103443104001332,101422214042012],
+        1002001131430213: [102041020220100,102023031321010,102220020201230,114010214013020,100112404231200,102303021004001,100003001021410,110220122022202,102001024002421,110201020010102],
+        120033442003020: [100122004300410,112100124023402,112400202020003,102000224000011,101212040303123,101020044011003,100030300124130,100001100013110,103122000211420,100032301041204],
+        100104130044021: [102041004012012,101420211014000,100344224100402,111000012222023,110401230001013,100230001001032,114212102341020,100023001030203,110031220000101,110402102112223],
+        124400422041340: [112002002000410,110111041011032,102221230200001,114100212200003,100020010022143,1341242223200002,103001044021102,100101141010322,100023201000300,100000044310330],
+        1121100002001103: [110301222101110,102023301102400,100030414300112,102012204010044,104120110010402,111010214402000,110401440001204,110204310112224,110303104423010,110340022023321],
+        102200421040121: [110401004221204,111112000011222,100322444314002,101003301020022,100001030100030,112012004004000,112044204000441,103141100104002,110341300400201,100000104210240],
+        120100140312100: [102001001130100,124020002020003,122222120003214,133332002141010,144000013213001,124010030100142,111032444402403,110103201001321,102011420200123,102311430211100],
+        301000320101102: [100010134300002,110232320002010,101000001031130,101202444044002,111310200002200,100121044230302,114014410023000,1021042101032324,102201301123243,103000200101010],
+        242402320041410: [100000044204004,101020224210014,114202244101041,112423102010012,102112022001414,101212214011134,100001121023210,100012101020002,114204120000200,101424010301210],
+        140220021012400: [101030014001004,110144102001321,100020304102100,100013010004000,112020022000410,111232100010040,100010004203011,110001420003002,114000202301203,101202200300020],
+        1042310240200011: [103212424020104,112010140202000,102001020220240,110344041332022,111310002200011,110020200120001,100211244340000,101020414001030,100102001021001,103402204002011],
+        122210200410001: [102424204043100,100113220020101,100300211000020,114310200002400,103211220100010,101202201021310,103044004010022,114130020222342,112301032022414,102103100310300],
+        230000101110231: [110100201000100,100001024102310,111111024404430,114200020210110,112211402032230,101140301101104,100441431010310,103313134024222,102202404040003,110031330430031],
+        103203000123410: [1411024442020100,1002230121400101,1004130302142412,100100001004101,1301222204300302,1300100202010022],
+        310100000202000: [104100012102004,110021232000021,100401241014100,110301322104142,100001140000010,102003000212200,102420020204200,102000200222121,110033002000020,110343014421300],
+        100240322411304: [102210100313100,100004420014012,102240210240022,101040401032021,114200004110030,102024124011010,102000324013042,100030124212213,114210102320112,114234004112000],
+        1001440003002000: [102200130202201,102414034040100,100212030414010,100412200002013,102133001404002,102020041321410,102300020220011,102301324112020,111340300010010,102400101111034],
+        1102104011120220: [100030324200410,114202244112111,102110202001010,114011404103142,114200020003431,114041002212302,100043200102020,103332044032320,100202121000302,100212024322044],
+        104044020014020: [102000402041014,100142010410011,102041410242244,102101220214011,100022010411004,102323201000412,102212434110001,114240044000100,112102314020000,114010002304030],
+        1020431032314000: [100102224234002,140102120200000,110400444243022,110131001002021,203201100012000,122001000320022,121104330112000],
+        1202430010012000: [100120204003012,1100440001000000,110202102121400,101000040300001,200304020022101,103400200120410,102022034012314,101443040303302,233002100331010,102432330000101],
+        121004320240100: [100021014100124,102012200200030,100131024303001,102203314011321,102231114040010,102314022000031,114023034100101,102000214011041,102103120200023,103010300100303],
+        122002442000024: [102030004002200,100040014210402,112414102011010,110014012001011,100402040012140,100100410401030,102000040222041,100400430022423,100201314104221,112323230202030],
+        1000120010042423: [101020411140204,114203410002220,110312201002000,112000014000010,102201321104400,100131000010024,102101421120103,102223100230002,100140104103041,112103232310200],
+        130201214001032: [112020000230440,110041014413112,110004002133140,100040031020241,101100104000222,100411400030100,100002000102100,114340102322021,102120221120200,102100211143330],
+        243420000000000: [110102042010220,101020124000413,111210000001101,114013400011030,102202000201220,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011],
+        103232013004010: [114042304100001,102210224012020,114313302321311,102212300202110,102210304013310,112101020200032,112002002030004,101220000302410,100024414212001,100004210412101],
+        240224001042004: [111104102242110,102210011101414,100002200410230,100044010200300,102102011401410,114032124013234,102143020230411,100102014301210,102043024010103,111133102212220],
+        1000142401001012: [111201032220400,100200004301323,110041002130210,114203000004300,112401024044240,100022120412132,100000321031423,100031220121003,110322100104010,114302102300200],
+        102001002413010: [104120011242011,114300000000002,110121100004131,110020002104100,110210014220001,102111400202120,102000301101102,111400214442024,114100124002210,111122200021102],
+        104204240243134: [110320442100100,103022421400100,100030000104003,114020012204013,101020224003300,114422000000001,100411410002011,101200220300302,111201310013231,102100101320311],
+        1022020201123203: [110213120001100,102040044001211,100220301003101,102214011111010,101003041141301,101120100320100,110310130114040,114140014100000,103211001202110,103121311240102],
+        1001110041211001: [102102000213403,102334000243030,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,102100040220330,103040001430220,101002424214013],
+        1012201010101030: [110103341120422,112122024023021,101000021020100,110042022001000,110104112012000,112001204001021,111220102222123,111101220010010,111020004404000],
+        130110401024000: [100010201030300,112420104040020,100233014224240,100403430013124,102030001131120,102221414000020,110110200001000,110004210004223,102302004110231,114224210210310],
+        1001120112130233: [110320202023400,101000304014100,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,101123232010002,114421242204443,100000301221024],
+        221010001010100: [100032041021210,102300324010203,102040011121100,114310000001232,111322234130000,102040041320010,110104002010100,100030024303023,102042204000300,100001134100120],
+        1021222040101042: [110120144200000,114022412330004,102343230224321,101200221022044,110241112020204,100002004104004,102310140240012,100014204201000,102103321411004,100400001001300],
+        1003021311121402: [102310324112030,100410130030232,103220101421001,121110020100002,100002104204000,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100],
+        102003241000110: [110401410402040,110023214202401,110232202123140,110022040430124,101442404020304,100214401001202,110011000042000,103300201404300,100222100432020,101423434023101],
+        1020034311314120: [100024000110221,101000130320340,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040],
+        103013110312104: [110200002031302,102002020243020,114002002300201,101403220331230,102040021121030,100311314310000,100000204130001,102041130200101,100412441010422,102130224131022],
+        114100120300110: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        120340020411044: [114410024110002,111200210001023,101101401020424,100002200100100,102032022000041,100020000120134,112422100200404,110202001212002,110001014204010,102342022000024],
+        1144121210002211: [100000410103200,100001240410410,101042201000011,102030001412241,101001204010220,100004301023143,114223200221140,101012400304201,100031044300340,103212014020132],
+        1000101410001201: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        1031321230013320: [1104100000042000,244000303210100,1342101023000230,110000011101202,1310001001103311,100114020214211],
+        1402000220232130: [100001124102222,102242220202120,102122101340003,110420000002231,111324314134002,100400100022003,101300200311010,114420002322000,102321021000002,100020310010001],
+        1042042022102221: [100021300101110,110201031111320,103312300110101,101403004022114,102000441132020,102024044012212,100000021030412,111001012203002,101012144004034,100141401042400],
+        212022040144100: [101000021010022,100022310120003,112004031122404,114341322301120,100040234212230,102210214110002,100020204103212,100000100104142,100200024301424,100101344302232],
+        200021001010022: [112324002020202,100120221021011,111242212222022,102022411100012,101401140300101,100030124210101,103220200100320,101030004004303,114000020034200,100121211012110],
+        1014110004023200: [112402022014222,100220114100003,112022102003100,114202124003110,100202024031022,111200002212011,102211000230103,101101000320100,101000030304240,102242321302022],
+        100012121120100: [104100012102004,110000010120043,102102011413000,100402431012022,102403404004110,102031024013013,110044020020202,102122410220401,110301311303102,110021232000021],
+        100200020013000: [112012111114213,102230004030112,100100221012100,214021333002200,112102000202302,100130401022113,112001421111242,114112402340003,100341101003203,101023240314000],
+        1110400243001133: [102030301440420,102120002000022,114020002300011,110201420003020,101032104004010,100011304210101,112200011102100,102001010221021,114040004102100,101000011003023],
+        1023000221020120: [114102344121242,103232014032341,111432404442442,101022000320120,111140130020034,100410200433120,102302121000021,100100104032130,100032014300110,111300224132411],
+        1020003132132122: [102231102020200,102120201140110,100331200141014,110112204224100,100200011002042,100113004000041,110224102230230,100120411200320,112401344040043],
+        1102221301211233: [102020004022320,103220000212021,101004100323331,112212004041042,112100310203000,110212400010120,112002032340202,110140011300001,100004200020200,110003004202020],
+        211104312410011: [102302214110044,103041014030230,110113122120330,102310101100011,110030010432322,110041202203140,100021404300231,101100020320003,110332242220220,101042134001001],
+        1040243110000420: [112004202302034,100042001020203,102002320220202,100010044300003,111321314133000,100004410120102,101131024020440,102432101112141,102100044000000,101011211003002],
+        100321110122133: [112002002000410,114100212200003,1341242223200002,103001044021102,100101141010322,100011200101123,410010230000210,1303200314211000,1000413100310100,420024220002001],
+        1120020200002201: [124010311303140,111001202231001,120300040232022,132000401201221,122012440110401,202220202402001],
+        120004010200102: [100102004100201,102101101140040,101012320320322,103100214001400,111230032242001,102121001343030,102324031000000,102040001130013,102102001341000,110012004422032],
+        210000003211411: [101200014013241,111110202213102,114421224140413,103320400110021,102041000220322,101033244000403,100400104302144,102114001341002,112121004020022,111002024400320],
+        201020442221200: [101010111002141,100120400410010,102402204020020,102132424020001,114031240044000,100022200100110,114341400001011,103003044004000,101102020333110,101041221030000],
+        1020404220023402: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        101000010240102: [114221312340014,100311204312442,100001024100241,103000020100131,101211204201231,101123001100112,111000200012220,100000110100200,100012000022100,100020034200301],
+        240230023041130: [101200101021000,101430004040203,103000024014022,103122104002013,100040404102010,101020404210020,100001001021002,114200104001010,114040414014202,100000024301031],
+        1040431223011021: [101202000300323,1202120201221210,110400323041022,244410001402030,100000144310420,411011320001004,144200003100020,1400102001010010,110004004413303,114131042311202],
+        110021203300311: [101001040340004,101013004002011,101300011002044,112022334022101,101011324004222,103210241422022,114411312312124,103240001403000,102202204040220,102121010212140],
+        1000112411110201: [102102101412200,103003000142012,1002201014202430,100112430012432,103330400114023,102403004020222,100002301031043,100040321042021,100302224314022,1211200224022400],
+        122010130420230: [114040002210432,100010040122204,103314044033003,102001420220112,101422214042012],
+        104303002211012: [114020200020222,100012001023042,110213022100021,114424424144210,102204321003224,111222002224302,114100104030132,100010320000004,111002024110031,110201304431033],
+        130004204220341: [103001111221030,102301112004021,110000011012202,100201230412211,111010002110212,111121022221002,102000020241101,111112124402010,112312041101012,110012212130021],
+        101000020023321: [102011201101012,102300304110030,114412000003141,114120430002002,103020041420212,100112011040011,114033300041020,101201220300012,100401024300321,100102030423010],
+        100002340242412: [110020100042220,103443024000000,104240202023232,114030204021200,100141321000100,110022222000011,112410004012302,110202410003202,102000104014100,103000101432004],
+        1022220200001400: [114210120210212],
+        1042112003433210: [111304340002030,103140014002031,102224241110003,114113014000010,100043024210301,102014001130100,114321004030021,101200210302201,102422131400024,103210304000030],
+        1402320014010440: [110020001310000,110214024430312,100011014100041,100310201003000,110412121110214,100212341003212,110142300120000,112013212032000,112010220224003,112001040231401],
+        321001401100112: [101100230013304,102330420243012,114011024102042,114402212310021,114230200210013,101030320340141,100300004314400,110020312200022,111302222202200,101021140300031],
+        1000230212300000: [112142301101040,101100000330120,101214440300301,101121100332142,100000400000241,111102214104403,100132004231230,111200122222334,102301024113440,100033230420102],
+        310004202222302: [102110010210104,100040004340001,100021234303000,110420020103322,103243100130140,100030101232000,100034221043231,101140030330020,110030242131210,110142214201120],
+        102141311122102: [111040120022202,102141000230040,102002400430000,101001300340322,114020204021302,101210242120124,110014342002102,102031021440000,111011022203010,100001000100020],
+        103134110020202: [102114020210202,114040204014042,100001300100302,101221031020331,114301120000200,103230004030322,102102001341000,102440000200011,102100020210004,101220004012040],
+        100010120022100: [100124124103003,100100221002000,102140200230020,100201220431101,110011002133011,112200402020210,101000000310110,112001000223004,112014020212002,101112041141231],
+        1142222400204000: [102012001130022,110003024202043,114102222344020,101021410302022,110042104411102,103200211200414,101220120300000,101103204001012,102002000211420,110040042123002],
+        101001124031043: [110304421230212,103024210102000,101322020313110,100132121023143,103022011112124,104001013140002,1001200132020010,122310321010040,110001340020010,100120110401000],
+        1032131124400003: [100033000423140,110000102001204],
+        1101404241110112: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,112020012002031],
+        1100024033201201: [102131104023111,100414204320344,114012012300010,100302000140001,101000004003224,100012114210011,100002314210021,114133104120204,102001340200322,102021014004211],
+        120122000000000: [100304201000221,100112021020320,114212104110100,103010001422020,102300124023122,114221004100020,100002100124101,102304100210334,100403210010142,112003100241220],
+        1100122114104021: [103130311444100,114102134122020,101040004010012,112214410201300,111343012200000,102201430201310,114113100210210,110413402111101,102422000200303,100000120412410],
+        1100202002243010: [100021214313034,102121111023020,110000212134440,103010020012322,1341322100304120,103002020124010,1011000000040202,1300040400201021,102120010221204,102100111403011],
+        121301012034141: [111001440020003,110200020010003,114121000002140,100002214100100,102120104003011,102120402000014,102000200210032,100041000100422,114020002303212,102223231121242],
+        1023210031000001: [100440444301004,103304014020032,101221121020230,100232121210011,100004110000301,101310004223223,114113004120221,111210402244301,112022200234200,102100011341140],
+        312014222022200: [100000020004101,110130014400011,100220040142222,110232002101410,110200021210212,110131021240303,103100101442233,100000031220100,111010000021300,114200444140203],
+        1113201200402000: [110020010134221,100004020411020,100300321000010,100000421021322,112331012023100,100021010100320,101001030303000,110031210000110,100431024301030,101222321204303],
+        1100202001103010: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,102020111100200,102042411104200,102321410240300,100021014100124,100130244302034],
+        122002220020300: [100024000110221,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,101002201140040,100211000412142],
+        1010240142022340: [102020044000030,111202320012012,114221210003003,100003001020010,112101422301001,110040014213300,100320421002220,100120320410204,100200144320012,100021404340024],
+        1120303401230212: [102403100202003,102302011000002,100140004230101,112142210422404,134402020100402,100140001004340,102140012001300,112042012001000,112040004003000,110002202000200],
+        121130302020200: [100001024100241,101123001100112,111000200012220,100111124101112,100020034200301,101424011010011,100003044302003,110430034224001,101010200310212,114141212344400],
+        1101010012402142: [100010400022200,102302444110110,102420221112201,101224044041002,110310004424232,100010344310042,102103214000210,100402012200112],
+        1000232020203121: [101403021010233,100000011024010,110002210102120,102300431002131,110001211310124,110002204210114,114304444003432,114301002301103,111040300024441,111100220030000],
+        100313042020042: [100023101042010,102112310210202,114221224002403,100013310123100,103202014031021,100101014300100,100012021032040,100400242201410,110300121301133,110420032110400],
+        1410001201240030: [114220040000201,111040032200021,100404400013222,110000312201003,103042320101230,103004004001222,100311000422101,110020204421032,101402031011101,114130004101132],
+        1440013030000111: [111220204101421,110042120021013,112200420200200,101001010300011,114012020044224,102122401340101,110021020001220,112001024000200,110112030401012,112020012002031],
+        100301010204032: [102143124001400,100020440122040,102002034010400,102020030220401,101002121000111,112404002023002,100033134104200,114003422304142,101432024040221,111001404112102],
+        124402010411222: [100034304101213,114002014100310,103044010120003,100020020121132,103311100112220,103133031440020,100110021040020,114000242303001,114020402331130,114402044140023],
+        1020200330004141: [114313304002310,102004110223232,112204010411101,103202404003021,103211010211331],
+        110300002203010: [110012000141104,140300020110000,100003301030120,100101004230030,103044004034040,102412140201410,114034000012210,100341231000131,102200414042021,102021112004011],
+        100321002002300: [100002100100210,100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,103020031403100,102200401111200,102000430221040,114003104031111],
+        100310010321124: [103114001444241,102140001343104,101000004010022,102223000204140,111324002200000,101301031000000,103122340101040,102012114000000,100001214214401,101001004003040],
+        110032110212121: [110444010032242,100001041031013,110300112023012,110224200113042,101000020301410,114000102210200,101041001032310,103103210111220,103100100100104,102121414000042],
+        1100024401100200: [112014002002044,100421200012012,101441201011100,100032321230000,102320000212000,110122240004011,114001204104041,101240020300231,101000200312024,100001221232120],
+        102002211230222: [101020204002030,114023010024000,114000204101231,100000400412200,111100232241200,100001020121021,102111024004010,103343010113030,114040202214201,100200001210240],
+        121142410401003: [114220040000201,111040032200021,102241044033231,110000312201003,103004004001222,101402031011101,100311000422101,114130004101132,110123121301400,111342000010313],
+        1001240402033020: [102102000213403,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,102100040220330,101002424214013,100012101022110,100400222200110],
+        1101410003400203: [102334004110232,103013000104404,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,114124002341030,110302322102041,111300202200414],
+        1004202203130302: [112001222000410,101044334210011,102100141123000,100222104100230,100230201002203,101200410300011,101001040320001,101441244021202,110442111340444,112001240220022],
+        1121000234302040: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,102044021101411,101100104002023,101042001021012,103230011412301,100400000010020],
+        112011210121320: [102110231441040,100113214302002,102412004000132,110000002133140,101233341022410,100100124100031,114120224120140,120240000020201,102203104001001,114210134003124],
+        141201003021321: [100113220020101,114031000022030,102014002000401,103103241421322,100300211000020,102104304023201,100002224244002,114310200002400,103211220100010,101202201021310],
+        200241001410222: [100122420031012,102202401114113,101021001031113,100100124234311,100022004310010,100320140043202,102403320201130,100123341012403,112413022010001,100000021034001],
+        1000420403122001: [102021024000010,102300010242330,102000401120420,114042014014024,100000000200102,114011102210402,102100200233123,101012421000011,114300100000041,102222014011300],
+        1401140104022240: [102010202004402,111130312211003,103224041400220,101001010300404,103340004020422,102410220200004,103113010102100,101224044041002,100040400401001,100320114314042],
+        1420030130044012: [100032041021210,110004301222000,102001301120112,103203401400132,103142111441040,110220410000040,101030004010034,103100104000121,100321001001010,100002111020202],
+        1002201204043011: [103130000213404,100400200034310,100043001221100,100221201212000,110133421001002,114212102341020,111022112202211,114130002310330,111221402210202,100422122201040],
+        1020120231221102: [101301014221122,114110200212210,102102204022310,110012130410040,100104101200201,112201010203210,102021001411110,103042320101230,110041102012100,114222010213042],
+        100001001121021: [110400112011100,100321004011041,110002342100014,110241024242442,110021312002040,111101042244210,110441010002400,112220001100200,114203104001000,114302200014241],
+        1030043000324201: [102303010241010,102230130203001,100001221021031,103313404030100,101400201014000,102231041120104,114031010040010,100010101020404,100011000410110,101300144220010],
+        121014121114103: [100030100410121],
+        104021142114400: [101221422120021,103001024002110,100001000002210,101210300302302,110100012120201,110020204200342,100000220011133,100010104312120,102144012001113,110422030400241],
+        103000020420000: [102033021130021,114000332303001,111224340011202,101220004013020,102121204101001,114422104140213,114032100011421,103030140101012,114210032320241,103130001442000],
+        1100000312010000: [1100440001000000,100200100321211,1042210303140101,114222442341000,120011302331200,1302421010300120,110044101320101,102432330000101,1010213000040012,1320030222200024],
+        1010022000402020: [1024002314000141,1010432014422122,1000020210001012,110321200010003,1341420023200031,1341200201004020],
+        1404324332034203: [103202004001120,103021024013303,1300022002310414,1112301032024000],
+        102002233023024: [101112104200011,103032221421243,100120004300002,110302010102310],
+        202014031200020: [100124024230030,112402334040422,110000012010111,111411200002012,113400201011402,110242004420320,110110000031430,110432042223202,114100112344003,113012100143132],
+        1120010022011300: [101200011020000,100031224102002,102001024011010,103042141420430,103000021431010,114023024022000,114223224111120,114022234100400,104100100402032,114130120222102],
+        203020041020004: [103030411422014,103043334040203,110403010000304,102120131401230,100140024230240,101010200320244,113130020101411,102041210224224,112200030203124,103202120102101],
+        141041400002401: [110240001202102,103200004030010,101002100340212,114200012321223,112000030210340,102100020214203,102201000203202,102302001000120,102111320321320,102010002000404],
+        122040010020010: [100121230031032,112000431120410,103042024040104,102304104110001,101342300314204,100013200100011,114104200220022,100021221021201,110001244204302,112130011100011],
+        1040330331243020: [130000220021033,114000034010043,1040014000334201,100020110003100,101310000020110,102220000230020,410010200103023,1001024230020021,100212211003002,110420001101321],
+        1143003210031304: [100100221012100,100130401022113,114112402340003,100341101003203,112420100201102,101023240314000,100100230402040,100400230022124,100243040432000],
+        102200013013120: [100202440410010,4000344002004121,200001320002101,1031104420000230,1040100003200241],
+        134300001000004: [100003021033300,100142010410011,102110020202330,100001010014420,102041410242244,102101220214011,114001214100103,101200004040021,102323201000412,112102314020000],
+        1201110240321000: [100022102100243,241221402002000,1030200104020421,1000102021230333,110344021203140,4002244101001011,100022020402123,101212413013223,1042431100100100,100004424041022],
+        1000400010410124: [102121221343020,101010101022202,112104424022201,100013211002142,102211204000440,100200001001420,114141024004011,114140044002043,111030424400000,110202221212123],
+        100320212010400: [102004110223232,103202404003021,114010044120122],
+        132213021001034: [112124004022322,111300210014020,100000100100200,103042141430211,114403210004014,101033214211000,114001100024243,112102100423402,110141112044000,100034244303010],
+        1012103030140022: [114033120034402,100023221022210,100040221211010,102104010311220,102230022023230,101122001110433,100014200003002,110320022024110],
+        142100002130210: [102340101000014,111203032220113,102140200212214,112241010203003,103010101412020,101031140301430,114400204144102,100303021003013,100220014223020,112300140200131],
+        1000331102020020: [100200101000000,103110431441100,102101324130010,100011200121231,111201102224324,100102004100201,114040020021023,111230114102201,114201102342110,101400300300111],
+        1012110430210413: [110010130000004,100000331040124,103022421400100,102122022000230,101011200324311,112030040242300,112400002021310,102301210243201,102100001414121,100010001022400],
+        1004014110012432: [114210014110000,114312012300300,103322241400404,111101122102222,100040000123130,111101110031210,111022214113044,102304041004110,102110021120200,100003340000220],
+        212220200420012: [101001040340004,101013004002011,112022334022101,101011324004222,101410401010030,103210241422022,103240001403000,102121010212140,110020124200230,100022014100321],
+        1040200020402000: [114030110041300,102300001002144,102302444110110,103001000142003,110310004424232,103132424000410,112013102004422,100400220013232,110010002000100],
+        122331100310204: [101013444003040,102412004000132,101420421140013,101233341022410,103013314020203,100102401010230,101030021031101,100122124100132,102400200202000,100100124100031],
+        120011302134000: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,102044021101411,101100104002023,103230011412301,101042001021012,100400000010020],
+        101031003431110: [102102430310202,101020030332430,102002301410122,101010000323030,101001414212120,114200202330330,103304004023413,100022201043312,111300032204432,100000101031020],
+        212101112441040: [100004221034100,100100411041000,112104034022022,100021221030421,101012114000304,102232024002401,101102120301114,101010021033011,103400014000012,101211000301100],
+        120220402340022: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,102304100210334,100403210010142,112003100241220,102204304000304,100301104104210],
+        240202000220001: [101221121202421,100001020012120,100033004303220,111042022141200,112310010200312,102010101412200,101033300332204,100101004300001,110002120412130,103220221400022],
+        1110232201142000: [110412001240302,100130200020214,102044001440122,102400304042142,102223314042002,410303420011020,101004204000013,102023120204401,111324104130320,111120032214004],
+        130104000332042: [100111011011011,114014112300100,114030034013101,100000044204004,100002100412200,101013004001421,103000014011004,101020224210014,103200000101100,114202244101041],
+        300003100022030: [142442243204131,120032010212320,1023422111011102,411001103222300,1022200104230030],
+        102222013002040: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        220102001014113: [101223024040101,102100111143220,102110021342011,103100011423301,103200014030310,110011301033002,110302232221014,101010304011100,114304312321320],
+        1021220222000021: [1010130003011221,1002022200102230,1012221001334200,101010221030010,102201414042030,100000030000011],
+        1031310034203010: [110033000022043,110100200030100,100000411231000,100023001222000,103140021211010,100020140121034,102340211000200,102300231000210,114000200010000,100012024210202],
+        1440432020101222: [111101010010203,110110212010011,103120101441202,110011000022102,100004104210221,102202410240103,400014404414011,100000010101402,102010414013103,101201021022111],
+        243412143003000: [100000111021003,102323101101400,101230330042220,1304100402114410,411242003002123,410142111403201],
+        1030043000201201: [102202014030042,100000100000104,101410204001212,103102124002001,101002224003212,112033024000234,100412100430011,102210210200002,102203101300422,102021120240030],
+        1101340441001211: [103141411420221,122102400312000,110002100110002,1340024302404122,113110330121030,410020013004430,1002300040412102,123211320000102,4000344002004121,1300202030404201],
+        320420211024020: [110001332120300,102101211411000,110004014411012,101420021010003,100400122201222,100222110000310,100402210013013,112032040234431,110010232004000,100102210414110],
+        1142002320040000: [101301014221122,114110200212210,102102204022310,114040210022000,110012130410040,100104101200201,112201010203210,103042320101230,100020300102123,100120430411222],
+        134302040100010: [102121221343020,112104424022201,1302314034023041,1300034431310021,1001010233020100,112012200120020,102210104000000,111023100040110,111041134000211,102203211104211],
+        211344000044232: [114202400210000,100302014210100,100043111020130,103112004004201,100122210402412,101020124210122,102002021121202,112040030223200,101011001114014,102204004030201],
+        1101000101020220: [102400031401212,114013342210210,112430012022003,110141012040443,102200001300021,101000044002001,100000131232000,110200222120200,101010101140420,110203321302023],
+        124200002000111: [110011000020032,111000044400210,110004204210030,102222021012222,100033304311024,112231212040100,101230004013020,101411204021211,110304122100132,101420040334122],
+        1000021144320022: [114042304100001,102210224012020,114313302321311,102212300202110,100012120201211,102210304013310,112101020200032,101220000302410,100024414212001,100000220100210],
+        100213121033040: [100011000202214,103040020122332,100000024100000,102200130202201,100010040001210,114302404002020,102001121132032,100001300012442,100011114300032,100022304302043],
+        134020400412303: [110000412003001,102011331131302,100423201003400,114000230023300,102021204013000,112042024000020,110022100044100,114400200004310,110003000024101,102400401412102],
+        1011210200303001: [112102002010103,102121111120001,110112130003104,111100002112001,100100101200012,111000044123400,110102012010400,111101104421320,101003040303000,100003000423104],
+        1114140000000410: [100030401020131,100020344302010,100002100000100,114100102340003,100100414230101,110130030020000,111214004444320,114024200040021,110112001300220,111024132204021],
+        4004040041142200: [110420140032102,100110014103210,102013130223020,104100302102030,110002002002112,110202120004000,100041204331000,114012032240012,110000242104040,114000444100400],
+        104431031024202: [102224101113104,114202144102100,103000214012040,112012012002100,102314001000244,100034140011211,114100000031020,103242004031022,100003124211410,102333204110024],
+        1430013111032021: [110001022000001,110023342101220,101001421031220,100021004310222,100001000100000,112220322030220,110202222043022,110313312021120,100220214333200,110330234422000],
+        1111020410302022: [100020004313034,101400120320033,110430030000041,102020004000301,114114204001401,101042214000121,102000121102220,100014300000200,100210130430132,101031101024100],
+        120202032400401: [114000044020204,103044010120003,110142020400012,100142011022211,114230344103210,100030020104423,100000001021041,101000401032212,100004104241121,101303414220001],
+        114443440200440: [110010220040411,100010021002314,100022441042300,103100111424040,103020040142112,103210001410031,102304000242033,103002221400000,100010020101220,101400200303132],
+        1100403120001102: [122422422004001,214021333002200],
+        140110000402210: [100000400000241,111102214104403,100132004231230,102120131401230,112402002010000,110021340020022,101010001000320,101022021030201,111001014111122,101003204000300],
+        112000203233200: [114222004004201,101140334001111,1012321211130014,411242003002123,103224040221400],
+        103213013001022: [114004004100210,100002100124101,102204304000304,114003320044100,103040004011113,103030130100011,114034224033402,101040040300223,101124014000140,102144401410210],
+        200211414412141: [114222004004201,110400323041022,101140334001111,1012321211130014,103224040221400],
+        201243240130300: [120200102001400,402101003201022,1300102201211020,101313330340001],
+        121010412002101: [110111111010000,112134000201310,112230122030224,114120014004003,100110130000123,100200201213011,102030000221134,100010020003310,101042204010110,100022024300010],
+        1024030321304320: [114030110041300,102300001002144,103132424000410,112013102004422,100400220013232,110010002000100],
+        1002414214030021: [103101200221334,114021000012310,110041001300210,100400414300130,100400231000200,110332030011233,114000210010231,101000100340001,101300240310420,101000344223010],
+        230410311401320: [100020004313034,101400120320033,110430030000041,102140411342420,102020004000301,114114204001401,101042214000121,102000121102220,100014300000200,100210130430132],
+        200002004323001: [102402024000034,103012024004312,102214020242110,114102224104002,101140320330114,114422404110312,102403144000120,112120020230024,103221021412001,101010010300020],
+        1204300000300222: [110240001202102,101023001024400,112020002311112,101002100340212,114200012321223,112000030210340,102201000203202,102111320321320,102010002000404,100024220122100],
+        1031232004022201: [110311331003000,101020240300003,112300032000100,112021334001000,100144430411240,111000024401300,102321040213311,111210442211022,101120030010320,114124002341030],
+        1122133010410100: [101033011001100,114314300012000,101011010320431,100100004230402,102321401104012,103041414001042,114200022300033,100000200100141,100002004344013,103220000104122],
+        201402200001143: [110213012044343,102232401114310,100320224314301,101400004022212,101020111032030,103411220132012,102020001101232,101423120303010,111102130021203,101410021010400],
+        1001002024000000: [103301244010210,100101031041022,100000240003101,100041234101100,103001220100000,114124420032020,114100000031020,102401024020221,111231012242301,103240404032240],
+        1000301100131100: [114330014002002,102141124004222,102430201110000,114020024104430,102010210200102,102124002000102,112002040214231,112042422001032,102100222002040,100011004312001],
+        1000000201241220: [110022004410312,102000401442010,102000014004040,111020004400234,321114010100340,100121041041101,102322101000200,101020041000102,1042012320010021,110413131000201],
+        1240213020110002: [101141314000221,103041000000104,110033101314000,110223034240100,101041014010212,102220232001303,110020102202100,110301120042202,101002211000243,114313010000002],
+        243004100003202: [100023421041402,102120031140142,101010224000130,101144134001102,110012220002021,100210020410010,114034422302101,101000414002041,110220302043002,102322004112023],
+        1202200330200101: [114011220041204,100301031002201,100000224311320,102120121212031,112022040242001,112000400223100,100211111003420,101100004022130,103123314002423,114310332300121],
+        131040411001201: [102101211411000,100102224033421,100120040400011,100400110020244,102021001411110,110041102012100,114222010213042,114011120010030,102310100243242,100200044121414],
+        221211100144431: [101001040340004,102424204043100,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102202204040220,102121010212140],
+        224102100212001: [100012134302230,102102240210112,102012110232021,103300201400340,102002230200001,102404341113402,100020000100311,101444031100130,114404214140114,102033442000014],
+        1000120202102321: [111201032220400,114203000004300,100022120412132,100000321031423,110322100104010,100031314241140,114043002302200,101222121020001,102120230230000,100032021041010],
+        121312320102000: [114300240002100,111010142110323,101011100301224,100400000020101,100020240000242,100002404312012,101100020320000,110034104202330,101000011030000,112122002010012],
+        243102213000012: [102021401410001,114210410000401,102002410222340,103210214003143,100110000020111,114401000004202,100024104100032,102100014132110,100021304103002,101120024021024],
+        103022210000212: [100310120141002,103000004002012,100002011042020,100301421002002,103022021431010,103200020111014,100010004313001,102010200221000,101041201002422,103104200210410],
+        1023022214100312: [114410024110002,111200210001023,101101401020424,114030220011120,100002200100100,112002110240403,100002210000020,112410110201010,100020000120134,112422100200404],
+        132202034111210: [110012031011302,111200104411001,102121200313040,111011104401124,100300021202320,111201004131300,111311434120141,110334102021144,111421020001110,111212120001103],
+        1140033110031000: [102000321102310,102400234020130,102134044134410,101202001022000,111300220000230,100133204300040,114110032343001,100110101040020,114012222301110,102001024011010],
+        1020023122320003: [112224111100141,101221414041100,101021244012200,100210301002021,103040000000212,103000001410123,101300004211000,111240300002140,100100040402102,103213114041040],
+        200230211401001: [1010020012204013],
+        210030132003021: [100442004304040,102020120201002,110001000034023,111041104111423,102130000233203,112422422020403,100014030122210,112242100412003,110220001312011,102042011413203],
+        1130301021110112: [114222004004201,244410001402030,101140334001111,1043011000420133,110004004413303,103224040221400],
+        1140200203022032: [100233014224240,110110200001000,102221414000020,110004210004223,102302004110231,102203004032420,110000034212000,103110400120220,110203021004214,103101100123012],
+        1124003000100220: [100440031001120,114203042330220,100020001041410,102032012000101,102102231400111,114014112302234,101004201001232,112102102302000,102141231343401,100002020101023],
+        1013221012420000: [102142221342202,101012400343401,100020101020404,100002411021201,101000410321210,111111102240001,102001041100103,100141431011400,100030324102411,114021004100002],
+        1421100100403020: [102430201110000,102124002000102,101343331004220,100140310020221,100002131020410,114044414023030,114244014002020,114420102322024,114010120020000,112210314012010],
+        102410302400213: [100024000110221,100110020031042,101301014221122,110422102110221,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222],
+        121300003210140: [1020102021344321,100104302001300,320424300313211,1001102321230101,1002001200441033,101040020314000,1101003130212010],
+        100002030010010: [100000111021003,103012000142231,103000001004002,102344210242220,411242003002123],
+        1014201304131122: [110431442110400,114011120021012,100100111041320,102334001004100,114110002202241,100001140411014,100002000000003,101312014234200,114000012210041,100000024214212],
+        111332213032111: [114203104112214,112221002043330,103214200103130,101011024213031,112222042030004,102230200204114,114241010002120,100040001221420,110102110120200,101210021000110],
+        1120222022100010: [114343002322014,100022314100104,102130314131401,114100022342130,114300010002100,100013024312024,102002020243020,114002002300201,111012002200101,102040021121030],
+        1111012321012031: [102033021130021,100000121042240,114000332303001,102141100210112,114130200001000,100022224312021,114044240023401,110240221202310,102022104010020,102101122004040],
+        1004401211002003: [102312440201042,101301211001210,102200000200400,110000001102024,112011004023221,112020111124021,104130442103002,100110304032200,114121304000010,102200004040001],
+        1400110010240302: [102424204043100,100300211000020,103211220100010,101202201021310,103044004010022,114130020222342,112301032022414,102103100310300,102012014002001,101010231002004],
+        1010043221034024: [100022314100104,102130314131401,110200002031302,102002020243020,114002002300201,102040021121030,100311314310000,100000204130001,102041130200101,102104001320022],
+        220000241210412: [111010204402020,112010201112142,100101141010322,114003102303200,100000044310330,100030134100201,112000020240130,112400232022200,100103020400014,102100430314220],
+        122040221404000: [103030411422014,103043334040203,110422201312402,102120131401230,110200302024000,113130020101411,102041210224224,112200030203124,102004020224404,114201024101004],
+        100203010304010: [101001201110100,112010420232040,100032114202001,100001324201100,101440004041103,100220410101001,112200202021003,100004104214300,101023024210000,110000442001100],
+        212222204100141: [100200400430003,114420102323300,110404122110112,110403010000304,114100040214000,101210021021243,102412044040011,100140024230240,101010200320244,102214000210013],
+        1400223320112100: [100000044301222,111012034402110,114221004034110,101223041020020,100011230120014,101104024002242,110133120011001,100400010013033,110100000031102,100100001043001],
+        221031204224014: [110000022003412,102401200232302,102230221100001,100112224301402,100011100102010,100022404210000,101322224220202,100003100011100,112003000230001,110002120141023],
+        121003401231030: [102431111110001,102013421100201,1003002030122040,202003402402323,120204110000223,100400002201002,1110002442211200],
+        1101033011410301: [114011120021012,100100111041320,102334001004100,114110002202241,100001140411014,100002000000003,101312014234200,114000012210041,112003034003102,100301020420101],
+        100241101234331: [102110000210300,102422021113012,104220041321240,101021321034010,103422421110341,110001120421122,100112044302010,100300030421240,102022300202200,102010424011101],
+        1102201014122203: [100040004210202,110301000400042,100220222000100,101430221010100,102130000201200,120440011014232,114230232331111,111220002220203,122330120132002,100030044101131],
+        1110221100012414: [100300041001121,101240004011021,101011001103200,102022020204430,101002244012322,102302210210322,100012401020212,102000324011143,100003131040012,103004044010300],
+        1000001104420100: [110130010102101,111022412140224,100212034221414,112004001122300,100222100402024,101301124222004,100121301023030,100014000022201,112204220200011,101121401110420],
+        1000311211400300: [100021314202402,103142211442311,100111011040002,100041221020214,100040341021101,111123212212000,100014001030021,100230221002200,112003020230203,114224012340002],
+        1100002000111104: [1043303323011400,1140104002020100,140011220320300,400040001020004,1001120000022000,101201220402420,114200022340011],
+        1101221303412122: [101011004212201,110032022002020,100214230430124,103031234000122,100400110020244,101042001021012,103230011412301,101100104002023,100400000010020,100124021201021],
+        1020240011302114: [100004204302330,114202144102100,103000214012040,112404120200000,114102004142411,100004400100414,100034140011211,100041244344014,100230211002042,103020221401210],
+        130004024000101: [102020410220200,100013014101040,100402010420301,1130420100342202,420001430323202,111403040111110,200323000114220,140020100011012,202041211000230,210040011012132],
+        1121232003300200: [101204400304011,100020440122040,112404002023002,103003004044030,114030300020401,103101030211200,102042231130200,114440020003320,103310420142020,102342301104201],
+        100004200423100: [101342300314204,114013124030022,114104200220022,100021221021201,110001244204302,102010244010000,103003204011330,114430412322343,114200034110031,100000430014301],
+        1104030001004442: [114300240002100,101420000304222,111010142110323,100003100201031,101011100301224,100122100000002,101213424040301,100400000020101,100020240000242,100002404312012],
+        101210141320242: [100011004340114,102101101140040,102000021444112,103100214001400,100003010413400,102121001343030,102102030210111,101201041010123,112410212020002,102132210233141],
+        1010331011142020: [110310304430141,110301120404342,102113304130002,102000131131100,103124420221210,100011034302423,114032024012040,114200144110020,102142002000002,102021011132142],
+        1000002200023000: [110033000022043,101230004040022,101021020324310,103140021211010,100020140121034,102340211000200,114021000044211,114000200010000,101312014223102,100012024210202],
+        120310000220004: [103221204032410,100004004102410,111121004103434,102112041020001,102202014042012,100221110101420,102441030231300,103032000144301,100003220100000,100131100021014],
+        1140010101240441: [100023421041402,101144134001102,103002144042123,110012220002021,102304204110040,100210020410010,114034422302101,101000414002041,110421104242000,110220302043002],
+        1000440004202002: [110221212111000,100102404302220,102120141142220,130024021000014,110040030000044,102144030230210,112430102422123,110001004411040,102311204033230,111000012114440],
+        1024020120210001: [100023421041402,101010224000130,101144134001102,103002144042123,110012220002021,100210020410010,114034422302101,101000414002041,110421104242000,110220302043002],
+        1244233110000000: [101010401111401,103000030113423,113100011041100,114121022343214,110000140110211,110200102222003,110022314201040,101443100300002,110030214201200,103012001410013],
+        1100001101413002: [110221002120123,100130020020131,110012214201121,102001430222111,110220242120021,100300021003040,111422222100131,101010101122101,100001044313211,101122304002402],
+        221141213310101: [110130321300301,111020104110202,102240200242002,101000411030013,114300200000110,1003110100202043,100313041004240,101322310313010,100000000410101,114403020000214],
+        1411030102004202: [101042410301221,110432300102000,100011004102400,102304000210204,110040344210011,100020120101000,100003200020112,100400231000200,101000100340001,101300240310420],
+        1102024004211201: [102121201340001,102200211120103,110400242110410,111302204123234,114132040223044,100030020423044,103013104002044,114211004004210,100034204310001,111202000003000],
+        240121030400140: [102402124022000,100200200412034,101012114000304,102202141120400,103004041410020,110120224221100,103444024001001,101004004211001,101002000323021,103122404000344],
+        1010033111224110: [100000111000003,112400104044001,114423002313230,103201021402002,101010401021030,100304101200101,114001310020023,100201130410420,112010214003000,100404220013411],
+        1402042022111000: [110043132100300,110132031134031,103002124003020,114020024120310,121021032342113,433402331200202,102222034401200,110030221221100,1001412211040002,1122204031101014],
+        1121000002002224: [110041240000013,110131122012210,100012044101230,111021212200430,100021214210112,112010034020230,103021004011210,103120204002200,102404121400201,101020204003012],
+        1043411013220000: [103301244010210,103001220100000,112012012002100,114100000031020,100003124211410,102401024020221,111231012242301,114444004140210,114114100214000,102220210203210],
+        1000212010040112: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,110110200001000,114121012340044,102000400240203,102104304023201,103310300140324],
+        110323231000020: [102300200220002,404002010120214,1001412211040002,112100424020221,103144011212002,1304032042210300,1310241403200440,1010300130110420,214301004122000,1310330201104132],
+        200134144110100: [110102042010220,101020124000413,111210000001101,114013400011030,103004104010210,101220024041000,102010300201414,114330432320002,101413004041201,112224012020000],
+        1132204021210003: [114104204002313,114300000002130,102122210230200,110421410100301,111020020020030,111040102231022,130102301112413,111040000020020,100101114030101,120202202001010],
+        103002301000110: [114220040000201,111040032200021,100404400013222,102241044033231,112201010203210,100000214310412,110000312201003,103042320101230,103004004001222,100311000422101],
+        101200200101100: [114020202300410,110430341310122,102140201343122,100400100020024,101102241114000,241220023100031,110014142204101,102001104014024,123010242104441,100203321004410],
+        122122021020122: [102101021412120,110024020421011,100042014310200,100003014314102,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012],
+        112220120041433: [103000104004220,100100201043023,110243010010124,101211010300011,101100424003101,100201401010000,100241131003241,102231211302002,102124001120110,110400231311120],
+        1032121014401010: [1010432014422122,110321200010003,1300102203020001,1341200201004020],
+        1403002142400002: [100341101003203,100100230402040],
+        1002013403010200: [102131104023111,102420130230104,103000004010400,100000004310002,101021014224121,100012114210011,111301000000031,111200304131014,103020200123211,100000340120221],
+        100003241210204: [101133001104410,103304014020032,114202424001100,114113004120221,1100000411441420,101122031100000,1002203010011112,101211011012300,100010300121240,1012004033012200],
+        123130103211001: [100040014331413,100213020430224,110130104401101,102040044001211,101001004001001,100220301003101,110004402010202,102130204000301,102200210202001,112402204042100],
+        1142301140221020: [100131024303001,102231114040010,102100001400002,102000214011041,100010004210310,101120211100120,102200004044212,100004000413200,101210004011002,100001100421120],
+        112200123000404: [101242421020211,110100112141101,111230044134200,111200020004203,114100004120120,102011311103423,100430404302321,114211022324230,102301112004021,102402204023220],
+        1024102402011042: [101021120323020,100102101000203,114111200034310,100001021030011,103230040101112,100010041032043,102110234020204,102441311400421,114020214033220,112030004021010],
+        124402312010110: [112040232002301,100000041041202,114230000000202,122202200013331,110100321201200,101000200310011,114012322301013,114200000001030,110004424412010,102301004110302],
+        1104322200003122: [102000020223013,114040102301100,112121032014014,102310111001210,100020241043022,102100121341102,100301024310020,100130010101430,103112000210401,102113121401222],
+        1024420002011313: [100000111021003,102323101101400,202003402402323,101230330042220,1304100402114410,411242003002123,410142111403201],
+        330001201311020: [114033120034402,100012204340000,100040221211010,102104010311220,101000404012321,102230022023230,101122001110433,100014200003002,110320022024110,112041000221020],
+        144333223223000: [114402414111240,100012134302230,102012110232021,103300201400340,102002230200001,102404341113402,100020000100311,102400204024124,101444031100130,103241134020044],
+        1040010022042224: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        130200110130012: [100231001004000,103004100100121,102234100203413,103204021411022,111023102140240,103213100102030,114013010021004,101020024001432,100012004110041,103020201412331],
+        200310030002324: [114042304100001,101211240301300,102212300202110,114203134112000,102000000221441,101023230330104,103014140101101,100130124030404,101401321012030,101021121112112],
+        100331023200222: [110304044431200,112122104040040,102103131122203,112120012011020,112221114014010,102132014020002,111100422210104,110134000003002,111121302103104,103314201402401],
+        320001302344420: [100240324101101,114203400000000,110131214220303,110021401213103,114000010042420,100400332201021,100042021022002,101004001110002,100100004300002,102020104000240],
+        1100421420010241: [110000001324024,103100314001030,101020111001331,100040301042132,101000001111200,114010040023411,102110001342011,100402120030401,102001010222103,103300024014002],
+        221200014212444: [110113314221413,112004310224204,102304420211002,110403042110030,110120424221121,114112132313033,100220000432400,110001000142403,100403412200201,110110000003024],
+        101003110200310: [110202000000310,110000010120043,102102011413000,102403404004110,102141410230020,110020001224021,110103111120042,114420000001301,101012410301010,112100000200031],
+        1011010203002001: [120200102001400,1034004021300110,1022113221121000,102001034010113,101313330340001],
+        1101111001102233: [100101011010340,111111000014001,114024312202242,100020001011422,101023321000020,114033400011210,102010221132220,103100204000400,100110411200024,114020000022214],
+        1441020031401101: [100101011010340,100422040021304,111111000014001,100021320123031,100014041042003,114033400011210,100002010413410,102010221132220,103100204000400,101433010300204],
+        133312222130010: [112142301101040,101100000330120,101214440300301,101121100332142,100000400000241,111102214104403,100033230420102,101412001100222,101041210311410,112402002010000],
+        302211121123042: [101000130320340,112401314040311,100110020031042,110422102110221,100220124221000,111004100022110,101002201140040,103030040121410,110023202100200,100211000412142],
+        1040322003203120: [114444244144110,114201004110120,114033234032101,100412114304000,103001020120202,101000410321210,101000020302400,102021014012210,112400000200011,111101400011011],
+        1042012232222220: [102000402041014,102041410242244,100022010411004,114000424102300,103112011421222,102323201000412,102212434110001,114240044000100,103140031420300,112102314020000],
+        122101142204240: [103004031243101,100310430440011,100404230012110,113100000101010,100010200002010,110240104402203,101142234000141,110102030000113,100102411000141,114330000010023],
+        1011343021000200: [112124004022322,101201220300012,102103201320411,100100031043410,114001100024243,112020100202034,110141112044000,100034244303010,101214240300211,100120000410220],
+        120023031020212: [110441234224400,114021412213020,102130020200000,103100014031411,110000300424304,100032121024110,110013122130200,111403100030130,114020204102020,103121221400012],
+        1040241000130200: [100411410430220,101410011012112,110131310000224,100011030400203,112104124022321,110100022012033,100103044230022,103222330131101,111001124404020,101200100300100],
+        100430412000104: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,102440100200000,103204200103440,100210004104001],
+        121211000420140: [103210140100004,100020000410221,100203001002230,102031431103242,102031100211002,102300004022200,102210004041222,101032230342010,103100400212241,101202021021011],
+        1000203000040112: [110302302001423,101010101022202,110240134211002,100013211002142,110104000024100,102211204000440,100200001001420,103200314020032,111030424400000,114140044002043],
+        1400001001021402: [114000024100022,101001231032003,102304200241002,100043420411130,114112244122013,112144232304210,100043041020120,102022130224432,100002334201103,100022204204040],
+        102404300403301: [102401121113302,100021020124002,101320040302031,114010102300010,102000014002000,101034014011332,101203011023020,100042020102003,101010034002013,101312204221040],
+        1042104130021022: [101423400300400,103140114002241,101300414221100,100024011031110,102200230211200,102142221401140,112220022044223,103113211441220,102104411412302,110222042031222],
+        131231010410220: [100001000011003,100220404320423],
+        220001000032124: [100020001041004,202421100022041,102100111403011,1000042010002402,1100001420031333,124000002040110,433020311213122,1321202200220200,130030004001124,100040220123030],
+        203000000202310: [102121240200000,101212040303123,114024142200303,100011221032200,112401042010001,102031021133300,101130314020142,100000040101003,101422210301101,102321001000013],
+        1000234010211100: [100011010414200,102002121101110,112014201121001,110000100041101,100400000010033,112334320201110,103224101400400,102000002043020,110212000003404,102130101121401],
+        220024101313212: [102424204043100,112022334022101,101011324004222,101410401010030,103240001403000,102202204040220,102121010212140,100004221041210,111103212211022,112002014000112],
+        1020412302200343: [100341320422234,110110132041402,100004411232040,103140240112020,112034310220200,113200210100211],
+        110020200112202: [110140102142200,114341024032221,102004000201030,112020401130100,103122301212000,101000141004421,112140234024202,100140314102014,100000400412331,101014200304201],
+        100212003203020: [100102244330400,110012022031041,110131020012303,110313010000002,101141010323021,111003102200031,103004304040120,110321221330204,102210004032202,101023141140010],
+        200200330011102: [103321411401411,100042010200121,101000010300200,110004442003322,110400141001003,100004300100000,100400110022101,103013001223110,102002010220000,101003311141110],
+        1003304300123100: [100020031000013,100024004310330,111100012111200,110410324244300,110020111210101,101001001000302,111034020021310,100110040411303,102101030311301,114121012211212],
+        1000130340100220: [110113022011200,114010024033002,114334222300122,114140002204140,1111310321012011,1042411340004022],
+        1003321024022130: [100240324101101,114203400000000,110131214220303,114014124030001,110021401213103,114000010042420,100400332201021,100042021022002,100100004300002,102220100211221],
+        1000004122122100: [102334004110232,110002002000100,103013000104404,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,114124002341030,110302322102041],
+        1011000124422204: [110200002031302,102002020243020,114002002300201,102040021121030,100311314310000,102041130200101,102130224131022,100220031001210,101010200312020,101040204210210],
+        1010004110010222: [102020041440000,100231001004000,100004004231003,100200024121000,103204021411022,111023102140240,100211011001040,103030020100023,100204001000003,100020040401004],
+        1411101200012311: [112142301101040,101000130320340,101100000330120,101121100332142,112401314040311,102011004013000,111200122222334,100220124221000,102301024113440,100033230420102],
+        240143010100122: [114222004004201,110400323041022,1134000004202341,100000144310420,411011320001004,101140334001111,1012321211130014],
+        102324020101333: [100010001043004,101033044211203,103102234003012,111200044424130,112100330410121,102000111100221,112003102000220,103102424001204,110032301041321,112113222010004],
+        210002002100012: [111102104100334,114202100000010,101041424000304,111440000000202,100100304303003,100001401034130,101220200304110,110403102222001,102222334041224,110121110020020],
+        210422122024211: [112241020202432,103341411403412,114100130002210,100100001013001,112401002022010,103000214012340,100004204101200,102400134001010,102001004014032,101321040311120],
+        1030000221023012: [100041000411231,100010101030000,100004004100120,114204120210000,114110030002020,112002100233204,102410010201202,103303001400240,102442004024220,102032440200402],
+        141210203140303: [100031220004000],
+        1100243232201102: [100120221021011,111242212222022,102022411100012,100020100100300,100001210102104,101401140300101,103220200100320,101030004004303,114102404120000,114000020034200],
+        104022002120022: [102040431121110,101221020040220,102212000200124,100300310140241,100103104302044,101041030320401,102141212000200,102042000222002,101203121020430,100030010102102],
+        220033134011013: [110402100100230,112303010200000,110120220131103,110414322014044,114200204000020,102020014000230,102113320210012,100004204130014,101011040310000,111311022200000],
+        220221300012012: [140203123020300,114010230023434,144203403221310,141000201412111,110004030120020,100332121000004,102301014204000,112040314000200,114210414000324,103122201420410],
+        1030003041434000: [413240313440033,1020020141223341,1040200130322041,1030422101440422,1202120201221210,1002004000020441,104140041004101,142110112121222,120023100030211,411011042301123],
+        102013000012024: [104130301242304,101001114012114,114222042332003,114020210010230,100101121010100,112304211102104,100024234202001,102022024000010,112012002000200,102102001342202],
+        1041320001413040: [103102010212440,100021120412010,102002344013100,110002002200300,111200302214000],
+        1040022242040202: [101240110302200,111243002222100,102022011130012,101004424213001,102011444002012,100101204303002,111242212222022,102022411100012,100020100100300,100001210102104],
+        1104401142320040: [102211230244321,112121214040022,100041014210020,102401221402002,102102011342302,102140200224200,101001244010120,102200121300400,101030224004130,100004314302313],
+        1020200321032102: [1043303323011400,140011220320300,114200022340011,400040001020004,214301004122000,1003033202212100,1140332400310103],
+        1400233004340320: [102031001411010,101400004022210,102031021441200,102300031004340,100213310112333,101200020303202,100000411002023,102303200241200,102013224003020,103013020123142],
+        1000231124314300: [110043132100300,100002004201122,110132031134031,1320303202002000,1321200010022312,110130330012140,114102134002330,140403400240000,103002124003020,100003230110201],
+        110021030232201: [112000112000031,100142104100403,102123214020000,114202204113222,102022124012030,100143220410040,112024000213011,114002320022312,111000004400110],
+        1012341103200122: [101011004212201,101010304000003,100214230430124,103031234000122,102044021101411,101100104002023,101042001021012,103230011412301,100102001000000,103400104003420],
+        100001102201100: [100002004303100,110130010102101,111000122201420,104134121240044,100212034221414,100042004301301,100012021031014,100000201032010,100404000020000,100010210410420],
+        110410101201021: [102011121131022,111320010000021,100010214101101,102010202002040,102131300232014,110231202044211,103022001220121,110013122103220,112214100423320,100000320004100],
+        1244120440030013: [104130242103012,100034304101213,114002014100310,102000101132400,112023140212112,102101031412121,100020020121132,103311100112220,102102010220401,100021120201020],
+        114321004123230: [100020211001002,112012000223204,100000121220100,110011222202100,100201424220320,100010024302421,101022400302010,102020110221414,110000140111000,111012000002211],
+        1201000040032120: [110400124241011,112104034022022,114233300214304,111020204112021,112010012000201,103022444011022,102101101021304,110210000000040,100031324100010,100024204204210],
+        1100001200400334: [110040112132130,102221041100201,100204004121023,110111111010000,100413304100413,112134000201310,101002401110142,100110130000123,100200201213011,102030000221134],
+        101220431440310: [103114204002100,114230004110101,100001101033010,102142002000030,100000201022420,114000024101202,100100014302013,101204031024110,112020021120403,102020204010341],
+        1020032020112404: [1014410101001020,1002001101203410,102403114020212,1302014202432324,124112001101111,123140301003111],
+        112230132330411: [100000004102121,101141104004013,102303000241200,111120032212032,100002210100000,103242024032020,112012000220000,102331410242212,100220020410020,103200134030201],
+        121212010030101: [102100420231433,103114001444241,100020214240402,111324002200000,100030211020221,102013110232000,110014032200004,103122340101040,100001214214401,112140422012414],
+        1032022200020121: [103244320114100,100032011000241,102311011000014,101010300300110,112031121113040],
+        1041203000040200: [114422004110130,102012030213014,102003320200411,102002024000132,114021114023402,100401001011010,100210004343102,110100331003020,102021221120401,114242312322020],
+        1002002020230401: [100200101000000,103110431441100,102100441341013,100011200121231,111201102224324,114040020021023,111230114102201,114201102342110,101400300300111,114430204112100],
+        101202101400102: [100023101042010,102112310210202,114221224002403,100013310123100,100101014300100,100400242201410,110300121301133,110420032110400,102001130224032,110000220431010],
+        314012200200400: [101213114040141,102210101002412,111140100011101,103220120212134,111103314101000,100012011022000,114140104122430,101100010302233,102021241324040,102100402004002],
+        1002200221040000: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        124040340101403: [102104201320013,114220104000102,114310214033042,102014001441210,111010144124143,110401200100202,102141012001120,112014014000132,103011414001001,1140000003002130],
+        103140000422000: [100222004320102,100110004103122,103020200141000,102414034040100,100022304302043,103031300144042,100000111034100,103132114002002,100412200002013,114312004002020],
+        110200002133204: [102310324112030,100410130030232,103220101421001,121110020100002,100002104204000,140004230143221,144200400000000,103321202010002,101124344200400,102021220202100],
+        1003000020114431: [100400002201113,112024212301420,102420424042020,100240134323001,102111024000402,114321002320001,102001011100100,114402104142102,103312241402001,102122412001012],
+        121210210121243: [110001332120300,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011,102130000312121],
+        1140302320420033: [101400101012223,110022010021111,102034021103200,101413304040000,100124421200122,110004301312421,110113212042223,103423040130000,100201331000141,103400004001122],
+        1121402101112210: [101214200300004,114330120000222,100200241001404,110001440004103,110010022202202,100011210411120,1000301003020410,110400302222204,1014111023013000,110320044420300],
+        130200211100201: [101002240304011,100201134100140,110034100040021,110213002132000,103010000110210,100311221002322,102022201020004,112102204024002,100100424030003,101000131030120],
+        1122000101112244: [110400022010030,100214121000000,100042034200032,102011041100210,114323000000130,101400240300010,110202204213200,110002131200133,102412241111002,100424104302020],
+        1124121012000023: [1020110422203030,112002010100420],
+        1011001242142102: [110042220002210,110410200100200,102113340210000,110011401011100,102221200204022,103021030102410,101010200321421,114100212211004,112001402002232,102241021112220],
+        1100011330444010: [102412004000132,101233341022410,103013314020203,110120211001001,100300400142001,100000120121031,114211324100004,101212311020000,102002000222021,110201030143012],
+        134212304203011: [102220300000443,110210103122411,1300102203020001,1200020030443142],
+        111100420422001: [102311024114010,100000324202120,101010404221002,103300141402002,100020400123300,103202421400110,100010431020224,114102224122040,100100401004110,100322234212034],
+        1001211101340210: [114313304002310,114000302331201,112204010411101],
+        1020022441200000: [100223214121011,100202221212300,110004022000404,103020210101200,110010012102144,101020200301303,112000111120040,100402300022230,112030012300122,112203414012111],
+        110242040002402: [110311200403410,110200201311102,110000200420204,110332000400401,100101220411134,110011120132000,101012340321223,101002034212140,103242010130000,100020011230014],
+        230444140123021: [110001332120300,102101211411000,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011],
+        1002001320444001: [112314301103022,102000222003200,110112211000311,103100001440000,112010402302400,112040400213330,100100404232002,111000122144002,103010141244132,101032301032001],
+        213204132001020: [101022011003022,100003101003001,100020244100302,103140114002241,100102000423142,102000301100100,101300414221100,114020210020424,102200230211200,114001042203020],
+        1400202202100022: [100321004011041,110002342100014,110021312002040,111101042244210,110441010002400,110124002040002,110023410122402,114203104001000,114302200014241,104132420010010],
+        1002021222000041: [101022004224424,100201200000444,102000124012341,102020044001200,103000101431000,102011412002000,101030424210000,101200120302104,100041020121003,101002210300210],
+        131110011002040: [101010001003010,110203112030000,100013020003100,110010034202123,101001334211011,100100310403103,112200010410210,110442004241010,111230112220110,100101101200411],
+        1000021001013202: [102100044001000,100002134303110,110041214411012,101000300301420,101000101022043,114420240001400,110032124211302,112400122020014,110211122020222,100222000000120],
+        1011200220330001: [111330120000213,101021014224121,100200021001113,111222004100001,102110010202221,103144001420031,103101130124033,102001010211020,100220114121101,114301014001424],
+        231201004140100: [100040031020241,100411400030100,102120221120200,114002010040032,100400012201120,110311011330111,102020022000021,102310001100113,102000114010020,102102000312101],
+        133114020011120: [110400112011100,102300120242120,110444010032242,112220001100200,114014130041210,100001041031013,114000004102022,102430001113001,114212102310100,110224200113042],
+        1122410030000111: [101010001003010,110203112030000,100013020003100,100121001204222,112200010410210,111230112220110,112130400202001,102200000232102,103420021202012,103000034040212],
+        332230002120240: [102123220230210,101110004021320,102201230200104,103012101401220,103001334010240,100214324104012,101333201002122,103200021404423,102013010220212,114041022210220],
+        131140414102102: [112012002303014,100004340004131,100200411000410,102003101130231,102240200214023,111021220021002,101023011142204,102221014033000,110210320002400,100131104033004],
+        200000022111034: [110012031011302,111011104401124,102224202023120,103000001410302,110421000003000,114200412322323,103410414000011,103440004000101,100432001014222,100212321001100],
+        1144002103200220: [101020024212042,100041204212120,102113110210240,112423424042102,100320431000002,411200101402221,100120214230002,103204200103440,100210004104001,101410201111300],
+        1000121202010020: [102323304112342,110240020100212,114221002340120,110021002130201,102201104020200,112202020413011,100120231204012,102324004112400,103002011422011,102201411002430],
+        1020210002123402: [110100111221242,132344004001203,114303202300104,114020202201002,102100300233312,111021044400403,101231020300003,102203210201342,111001320002031,102201100232200],
+        124041330110002: [104134121240044,100011004102400,100003200020112,101000100340001,101300240310420,102100020214203,103000300124010,102302001000120,114211410004214,100004120101032],
+        142101043120024: [110102042010220,101020124000413,111210000001101,114013400011030,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011,114330432320002],
+        113034430121112: [110001332120300,110003000420200,110243234240200,110004014411012,112000120232022,102041220200010,100002320113100,112240200202201,110020321120011,102130000312121],
+        100010333333320: [103101224000011,102200042000104,103002000104400,110114021000012,103002144042123,102304204110040,112020004002110,114242210004001,110031404200110,114033020020202],
+        1114020200022003: [100023101042010,102112310210202,102330010243440,114042044100403,114221224002403,100013310123100,100022410101442,100024101022010,110212424242341,100101014300100],
+        1100000100440321: [103324024030212,112004001122300,100222100402024,101301124222004,100014000022201,110013202120001,100124124103003,100100221002000,100230040410200,103140221211001],
+        1044204133200103: [101024001034211,111122004101222,114000222213021,114102330210021,102103214000210,111001100020413,112203101100310,111301204111233],
+        1120444010220201: [101010001003010,102000000200302,110010034202123,101001334211011,100100310403103,112200010410210,110442004241010,101400304022340,101232140302001,110020302131112],
+        130033021300300: [110414402020021,101000034000220,114312012300300,101012104210042,101430001010032,112402012020000,103322241400404,103210120100143,101010024213100,100040000123130],
+        1244110301001002: [101220224012410,103200041200112,112012111114213,100111420112041,110332221302120,114102222310100,100400230022124],
+        120012002101010: [110043132100300,1321200010022312,140403400240000,103002124003020,114020024120310,121021032342113,433402331200202,102222034401200,110030221221100,1330044041003024],
+        1104140214212433: [100324140141402,103204301402123,110022002120332,111110230014001,110102111204210,100301101000021,110020140044140,102131421000411,101412030302001,100000401041022],
+        313032213002001: [101410411010012,100203011000010,102221104042021,100140001011002,1340010113012333,101201200300020,100000024103201,114201003002000,100100221223042,101000401120424],
+        224200210414020: [114114414001404,101110144024221,100400042200210,101201404044022],
+        100013001000123: [103202004001120,103021024013303,1300022002310414,1112301032024000],
+        132400000020000: [102140014002141,104231322021221,101104301103200,114222404114003,100004004101010,102002204000124,114332040002242,110031000022012,103333030110111,101041330302002],
+        1010224142000101: [110203131211112,110021100023210,103122000100403,102023120241131,114103412201420,110014300041302,110020041310021,114241000002004,110020310022021,110321001330010],
+        212030100102001: [114200212322001,100401210020002,112210322040121,100402042200000,100010111022102,102000224000000,100002104302110,110030222130000,101022440300020,101402010301000],
+        132344204303200: [100010001022313,101110014000021,111201144424102,100201040431010,101000121142221,114002232304142,110020220014012,110430031313103,110241211110014,114341104031330],
+        1131320100222041: [110004020020022,100043010120010,100123044300022,102143432000102,101031001004201,102040010200101,102200434012013,112000301122111,100021301302122,114001110033210],
+        134200121020120: [120004030002401,114303212321010,102104240200102,100013200001300,111241012204330,113030302200300,114210010004204],
+        1040042003002100: [102100420231433,103114001444241,101000004010022,100020214240402,111324002200000,100030211020221,102013110232000,110014032200004,103122340101040,102012114000000],
+        102000142013023: [100041000411231,100013014102414,101004204210100,102011001320032,111221224100202,102140040210040,100034134300203,114202000000000,114312012320120,102402220201304],
+        310002023102023: [100030010011002,101021301022041,1043303323011400,100402300013130,1001120000022000,400040001020004,114200022340011,101201220402420],
+        1123000000012023: [114002002300004,110100201140241,102020111324200,100042204102400,101044400300030,101024024002120,111304442220340,110203002102023,103442121212103,110032001122110],
+        111012000410000: [112100124023402,101020044011003,100002414210010,100021014100124,100122040012210,101020104000001,103013200120113,101040000300110,110042141214302,100142221042020],
+        1120110140012111: [102341411000203,103010210100220,101121000330012,102412000200222,110200402121400,100024001220012,101400010300020,101121101104211,102400000230200,101200011022022],
+        1001000102000000: [102020410220200,140240400200310,100402010420301,102022110202024,102010140220011,1002102003210222,1130420100342202,102120000210110,111403040111110,412011223000140],
+        100130014420214: [103130424000200,114010204012441,114000240030002,103244034020020,103201034020234,114013402304000,114043342241044,102240101123140,112002122000310,111020200020110],
+        1020111110200021: [104110021244203,102224101113104,102103022002001,100142431013000,101000031001011,101010130321200,114202144102100,102102401412242,103000214012040,100040310123023],
+        200021003221032: [102011114002011,111100132241003,114101042202201,102144201402040,100100011041201,110000214214420,114021212301131,110222410000021,114404014142133,112010112000311],
+        1011300024420011: [101222101202341,110301442021010,100010024302100,100000011020412,112041000220020,102022400210202,102003034011323,111304202202230,111300000001323,110000002001040],
+        202201121032030: [114011114123044,114040204014042,111230032242001,101221031020331,102101404000000,103230004030322,102300200221021,101021014000200,114100012204104,102440000200011],
+        1000001010000030: [103142211442311,100111011040002,100302000140222,100041221020214,101311111000100,100040341021101,111123212212000,102400220203010,101200221011402,100014001030021],
+        1010203100304300: [114201204111222,102004204041000,100104341010424,100012004101221,100004004102410,102301101004100,110432112111103,101104001101000,101000100342143,101012111001103],
+        1431001312300230: [111121004103434,111121024400002,112202020200200,101304004232410,101330104221320,110143012013241,102343044111203,101220141202202,110040022120224,1000240001120303],
+        120020330030101: [103020001400040,114004020010203,102014001441210,100203030110000,102141012001120,100043004200100,114001020040104,100003000100104,102120211022402,102002421413441],
+        1021130040003240: [114033120034402,100023221022210,100012204340000,100040221211010,102104010311220,102230022023230,101122001110433,100014200003002,110320022024110],
+        1141000301432241: [103130021444021,102100104002224,102100224000210,102031001411010,101400004022210,102031021441200,102300031004340,100213310112333,100000111022002,101200020303202],
+        1110200132213102: [101240220300022,100022000410041,103020000102011,103001031420203,102301324112020,114021004100210,101040421033204,103130011441212,102100001400000,101221101000010],
+        101020000040100: [101222101202341,100020220410142,120202201010210,100010024302100,100000011020412,102022400210202,102003034011323,100003341032400,103211031422023,220202121014102],
+        110213020022101: [100020000410221,102031431103242,102120411343120,102300004022200,102210004041222,103210104021310,103001040142100,103022140121213,100022324200100,110311332020021],
+        110022231202142: [114101404004011,100004414100021,100102404100430,103020241402220,102023110212012,114140004123401,100004340100020,100002141021000,103000421420202,102201010200001],
+        1123201240400233: [102133404134022,130000220021033,1120023242400240,131114110030130,113000343131000,410120000124111,431000021231320,413200300004130,100103222310200,1322000200210101],
+        1143000002101030: [110000121222112,103102124000402,102221044031031,112410112010214,102201011123104,114022004100430,102300000242022,112204022021221,102000010202034,101030311000240],
+        1102200234121403: [102420101111121,102101244022242,101041020321002,114101042313041,122112024242100,121211001014412,111012222200402,103300221402010,114021004010042,102112210200401],
+        1000000112003432: [111223402220443,102002040220110,110430000400002,111121102240240,111320022200100,100300001002041,102232004040004,103000200122014,102203001120342,103133004002010],
+        1103213302420010: [110202012100020,102303010241010,102120231343224,111342020011220,100314114322101,102230130203001,103100034001310,102021401324232,111222102243400,101004410311232],
+        101001020021044: [111323002200100,100021044202120,100442004304040,103102420121202,102020120201002,110001000034023,111041104111423,102130000233203,100014030122210,110220001312011],
+        1022103011020341: [101210010304011,103120400210000,114144004124200,110011424414202,110234012243001,110000214202000,100040011023003,100123031023104,114223212320410,101004020312432],
+        244120003220123: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,114003134011032,100101234330123,110024000432310,102012101443110,110032220022103],
+        220100001004033: [100000200202012,111102110012000,111142010020301,100031201030331,112114324040000,100141011011032,100010021034000,103132004002020,101000344010212,102001204001021],
+        1220401442000121: [111120230020122,114301000000002,112124310203104,100113324103000,102001000221124,102023021321020,114040204014042,100040401020413,112414334044310,114001010044120],
+        200311104203320: [100223214121011,112024121130304,100202221212300,110004022000404,103020210101200,110010012102144,100413124100101,101020200301303,112000111120040,100402300022230],
+        1021042002000303: [102040431121110,114111100021420,112024212301420,102212000200124,100300310140241,100240134323001,102141212000200,102042000222002,102001011100100,114402104142102],
+        202304322304203: [101020204002030,114031212300211,102013110201200,103102211440104,102111022001024,103210431422030,111101100021200,114023010024000,102042321440100,114000204101231],
+        1022102003220420: [102014000220330,101111120013000,111000042230334,112000041121113,100100014032320,111240114103014,101002011030014,114400234121111,100222000000141,101020314000000],
+        100230030301010: [103000001432331,110131110401120,103000004011102,100120041014034,112111110422120,102130300200301,100121100002240,100001004340202,101104220322100,100001001201301],
+        110100301222421: [110330400010040,100101231004020,111000100012002,111102010012102,111300030012334,100143040411011,102404404004104,114002202302000,100034000000002,100400100031022],
+        1034240421010020: [100001044201401,103022120100401,112411042012210,100110444302011,102142140210001,102000202041211,100211004220330,100000304104221,101002104004003,114124004001310],
+        1120032002001300: [101120204002140,100000020421013,101020024002022,110120011002420,100100224230014,112002112002220,110012404411012,100012304300004,102340411101202,101011421140423],
+        123000001311020: [114021132202032,112012004004324,103001314001021,114122220031004,103040024041111,101004004213014,111124002211203,114022214031210,114013000041000,100010111040104],
+        113310300003030: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        222002101012111: [102121240200000,101212040303123,100001100013110,114024142200303,101204444040122,100011221032200,112401042010001,103223200110112,102031021133300,100011301043341],
+        1021243020111223: [103400100131022,101004141000312,100010014313003,114100212210001,100022230100202,110100020004310,114143200211211,112120404000342,110112022120231,110402101344233],
+        1022323012220104: [103302111402002,114304104031224,114223100000020,103143000120100,114100212201200,103001010120120,103024011421302,101022240322210,102111001142102,114042000022020],
+        220404000010010: [102010200221000,101041201002422,112000002000420,114201224110141,112431004013030,114144100031004,114420022314022,102322001000202,101040010321004,112133112013220],
+        130424021410431: [100002014200331,102012004000003,100411000030110,102041201121230,103011014042120,101012204221200,100300114310112,110002222134011,103031301400034,112400322020220],
+        1110222031312002: [102131104023111,103000004010400,100302000140001,100000004310002,101000004003224,100012114210011,100000340120221,114133104120204,102001340200322,102021014004211],
+        314040100230022: [110220100000102,114042102330002,102102011414242,100041004100221,100014001041000,102310030240210,110000010033022,102210000201040,110110122210000,102200400234000],
+        140320003000212: [100141220000211,110042202002303,103102010212440,100021120412010,110002002200300,102002344013100,111200302214000,110443002010003],
+        102102130320411: [110043132100300,110132031134031,1321200010022312,114102134002330,140403400240000,100003230110201,103002124003020,114020024120310,424022002302000,433402331200202],
+        221000031130012: [111021400042001,110421420000201,110310000104014,111042430000132,103204301200000,103010311410024,101100311144441,114041022300110,102230002023220,120120411222000],
+        1002201042000122: [100111211021233,114002002300004,110100201140241,100203210003004,102020111324200,100042204102400,101044400300030,112120124020214,111304442220340,110203002102023],
+        1422314320100012: [100222004320102,100110004103122,102200130202201,103020200141000,102414034040100,100000111034100,103132114002002,100412200002013,103320311401000,102133001404002],
+        100222000400201: [100422321032021,1320124301012211,1004001130000222,411311131413022,1110002442211200],
+        111132320230042: [110202012100020,110013202003320,101031241000010,102120231343224,111342020011220,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331],
+        1040204040144003: [103242420100012,110002320424340,103130311444100,101040004010012,100100210000011,102200000200201,110020402004210,102120124004021,114004030023211,111343012200000],
+        1134113000102000: [112030022000210,114002102301240,114002000021020,110200440403400,110000000040230,102334004031222,114010214011010,101102104021011,110000011300101,101433111100002],
+        203002210300011: [114002200000421,111210044101201,101020321002002,111123014100000,110011020002013,100104004301000,112031121123424,112010000240000,100010001232233,100021024100103],
+        1100002021041012: [114101024120020,102004011440212,103140320213200,100000001021013,100011204300012,114003134011032,100101234330123,110024000432310,102012101443110,110032220022103],
+        1044311200002340: [101011411020120,101000010201420,1320010021102402,201200032021040,100040011432042,401000020221031,100201001100200,1440003320032101,102104410220023,1440100023013130],
+        1100100330040101: [101233330041031,100013104102120,100002300012411,110412221244140,112220020202300,111200012201041,101102041114021,1022201020410210,112003414002222,110200241201421],
+        100000002020020: [102101000233100,112100420203042,100311021003200,100004011233001,112001002002210,103024004040130,101412320300200,100121210401010,101104200334011,110004302201340],
+        1122001010110201: [100100001041204,100002001024002,114002100040223,102430001400101,114032300044004,103210140100004,114021404100022,111030004402002,103012044010020,424403102314310],
+        122230122010403: [102312441104020,100013411224200,110012442200211,103101201241421,110003302000022,100210101003122,102231011100310,111121314402323,100030024302210,101012220320240],
+        1011002004440020: [102102000213403,102334000243030,100140000410014,101041344000400,100020420123031,102412020234414,102202424111200,102100040220330,101002424214013,114102002201042],
+        203403011233203: [101203102121344,114001024011334,102142002031221,102312144114200,101420211014000,100001214100201,120012102310332,101022220320012,103023404040213,101302224231010],
+        102121312430220: [122422422004001,214021333002200],
+        1000243001203320: [112121212300101,101401300300011,100032001041230,100141120014242,102204044042410,113000201000000,100142114304120,103031014003010,101001021032110,114400404121002],
+        102130000101141: [101230111024130,1112100200412130,1320100232411004,100121120102303,114100222340120,132011000122003,120100010104132,110230010002303,103002020001300,423203002400042],
+        1030104001111122: [100301224310100,103002104012101,103220130211414,100012324202240,110003410100312,114000022300301,114000000021100,142100040004101,122040240311100,114302030001000],
+        130002130204300: [111102214104403,103043334040203,102120131401230,110200302024000,110021340020022,101010001000320,110210020104031,113130020101411,102041210224224,100130334030100],
+        213430212300013: [102104410220023,1024002314000141,1010432014422122,110321200010003,1341420023200031,103220020131102],
+        213010300002202: [103111001422000,111244302220204,100042100102211,100300041001121,102110030200120,101114000332010,112112211102024,114001032300011,100142044103021,101100010012423],
+        1443140010001120: [101001040340004,112022334022101,101011324004222,100300211000020,101410401010030,103210241422022,103240001403000,102121010212140,110020124200230,100042034202031],
+        243044013003000: [103211311412021,102122410310113],
+        100002120040020: [100030131042200,101203004042010,114221000210214,101410044041001,111104224102244,102422214021111,103400004000422,110020104210120,103130201421040,110040302100103],
+        102313021200401: [101301014221122,114220040000201,102102204022310,114040210022000,100404400013222,112201010203210,100000214310412,103042320101230,100131204234041,100020300102123],
+        1002022312000340: [100024000110221,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100141021004020,103012101410102,111000000000411],
+        1400040021022004: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,112042110220004],
+        240020422030110: [102010244010000,114430412322343,100000430014301,114010134021022,100040240003341,114102224104002,114422404110312,112140134003231,110102211300112,102403144000120],
+        101010010004203: [110111032140220,100023101042010,102112310210202,102330010243440,111011002200232,114042044100403,114221224002403,100013310123100,100022410101442,100024101022010],
+        1202304214213304: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,101042001021012,103230011412301,101100104002023,100400000010020,100124021201021],
+        1041001103144004: [103000001004002,103012000142231,102344210242220,110102021011203],
+        1000222201130231: [1020102021344321,101030301001232,100104302001300,1001102321230101,1002001200441033,101040020314000,121000110000222,400014401213001,111200102220400,110030012002400],
+        1031000201002311: [100023341032000,110121001321020,101000214010022,104230032202131,111112402101001,131120400002024,101001024040001,100220210000034,111203444130002,101202110304201],
+        1133310232111130: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,100002100124101,102304100210334,100403210010142,112003100241220,102204304000304],
+        1012103333240314: [100011224100020,101124000303020,114042014104222,114444024140421,100043030100020,103010011434004,100122000100030,111112014100400,114020214033220,101201210301002],
+        1001241000100430: [102242201000222,103000004011102,101410044020102,101000011032120,114004202210130,100004210412101,102102042002001,102110444130000,101420031011004,102111001341321],
+        122200302004111: [112142301101040,101000130320340,101121100332142,112401314040311,100110020031042,102011004013000,111200122222334,100220124221000,102301024113440,111110004402021],
+        113042102002001: [110004020020022,100043010120010,100123044300022,102143432000102,102040010200101,102200434012013,112000301122111,100021301302122,114001110033210,102013120200110],
+        333000120320001: [101220112203201,100223421002014,100121004100012,112104024020004,134113234320032,102000024012122,114020420021403,101013000301230,111014034121410,102213244002203],
+        1434001044302210: [100000200202012,111102110012000,111142010020301,100031201030331,100141011011032,100010021034000,103132004002020,101000344010212,102001204001021,102100431342023],
+        1110244302111422: [102334004110232,110002002000100,103013000104404,112200102024122,103000034003300,112300032000100,101000100322140,114010010002314,114124002341030,110302322102041],
+        1004421022143112: [103114001441122,114211110023303,111000302230100,103001101422012,100022204104123,1400100000042343,1002411322210040,110000302200313,1242324243022012,102133001120002],
+        120002011243400: [100020201020032,103001010101001,111020142144200,102020001021010,111300022201241,110020001210102,110000020043321,101420200304000,100221111000020,114024102212214],
+        1021014304221201: [100400002201113,102420424042020,100010001032223,102111024000402,114321002320001,102001011100100,114402104142102,102122412001012,102311120222404,114020404020132],
+        104011033121030: [101041210311410,102104101122100,102423114022101,112002010221020,100034141030202,112000011111003,100100011223002,100110440112020,114002002244000,103004044040214],
+        132203230000022: [112100124023402,101020044011003,100002414210010,100130244302034,100122040012210,102003100222211,103013200120113,101040000300110,110042141214302,103220041400020],
+        322102004233340: [114021000012310,110432300102000,100011004102400,110040344210011,103200004030010,100003200020112,100400414300130,100400231000200,110332030011233,114000210010231],
+        1000300404124000: [101012104001020,101210120302002,100140004230101,102000304001202,100010300121000,101233100300011,100001314100400,112101201102130,112342222022401,100140001004340],
+        1102410232021002: [102101021412120,110024020421011,100042014310200,100003014314102,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012],
+        1102432013042000: [102101324130010,100102004100201,101400300300111,102114020210202,101200200302210,102434211400021,100001104214100,100003000412141,102000032043210,102101030214402],
+        1022400332232003: [103000104004220,101002244004011,101442024042013,111020114400020,101010340331320,103031100142002,102231211302002,110000040420100,100241131003241,100201401010000],
+        1003031422420202: [101012131000024,102110141410402,101044001032114,114221104114000,100001111032112,100400212200322,101140320330114,112400004020421,103221021412001],
+        1002012002120220: [110010030440201,100004204302330,110020004414024,101400134043222,114340312301134,114310242320310,101100001102230,102110021401100,103102044031002,112404120200000],
+        210000000011000: [100021324100000,102012220241003,101430211012120,100204021000012,103302140112020,100111044300101,114100220002002,102120401022130,101001020331204,112040200240030],
+        132110000003001: [110034012104202,103042420143020,102300444113103,102304314110202,110210400002012,113032012204012,100204311000400,102011001002000,102012000241430,112002111121013],
+        102000032403004: [112201102030120,114000010040241,100013104203010,103002014001010,100120434100042,114110104000022,100200404221142,102002304011000,103341121403022,100221000410001],
+        100200001021000: [300302423311042,103213202221202,1021020004300440,1200300001400200],
+        214001034124033: [114040102210432,100031120101224,114122220031004,112040200233002,102113111343110,103234100101221,100010111040104,103103311424020,1132202011200221,101030010320024],
+        1100220411003121: [100113220020101,114031000022030,102014002000401,103103241421322,100300211000020,102104304023201,103310300140324,100002224244002,114310200002400,103211220100010],
+        101410100240021: [101110014000021,114122202343044,100201040431010,100131144000002,100000100421200,103021000000411,112413000204310,100010131211222,114002232304142,110430031313103],
+        1001020002040433: [102002014000220,102410004024030,114402320000202,112000002000420,102012401001012,112431004013030,114112000004001,114003002301122,100110210033043,100100000022002],
+        1413030220103414: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,103022110142241,103012000100422,102023211411003],
+        1122202000100101: [103100024002220,103303000112122,114003100020203,100112101024230,102231301122300,100032021000400,102010124001401,103301124014001,102001004000100,103030111240321],
+        1041002302320124: [110320202023400,111431110000042,100302141003012,102004441124110,103303201400021,114101420030202,114421242204443,100000301221024,101224322120022,110104422010121],
+        1141231120010103: [111314044130000,100410100030211,102000001410411,102320241001011,114102210002021,102013300200042,101001030303020,102004030201320,100020310101012,102113301342231],
+        120220034001020: [1334101401030120,300302423311042,102102001411020,1021020004300440,410430103222334],
+        1000002032002021: [100004221034100,100200200412034,101012114000304,102232024002401,101102120301114,102202141120400,103400014000012,101000004001310,110120224221100,110000041322002],
+        1030240011000003: [100310120141002,102000402041014,103022021431010,100010004313001,102041410242244,102101220214011,100121031014040,100022010411004,114000424102300,103112011421222],
+        122122000040340: [103020041420212,110100120400020,114030000030012,103000011403101,100000010202201,100111404302321,103243014020301,100012024210210,102001312042230,112020021120403],
+        103202103012211: [100024000110221,101301014221122,114110200212210,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,100404400013222,111001344400222],
+        1100110000012030: [102001444000222,110020004414024,101400134043222,100010400013202,114340312301134,100031220121003,114310242320310,102110021401100,100113201011032,102230000204000],
+        1400404312200102: [101100000330120,101214440300301,100000400000241,111102214104403,100132004231230,100033230420102,100000030000001,100222024100230,101412001100222,112000042000001],
+        103000100000433: [110102042010220,101020124000413,111210000001101,114013400011030,102202000201220,101020111030400,103004104010210,101220024041000,102010300201414,100202200003011],
+        122231000001230: [112124004022322,111300210014020,114011114123044,102103201320411,100100031043410,103042141430211,114403210004014,101033214211000,114001100024243,102101404000000],
+        101100101300100: [100024000110221,101301014221122,114220040000201,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,100404400013222,111001344400222],
+        1140110100121400: [114001232300102,100004004100100,102440020200100,100020211044012,102300411004200,101042044001021,100002001022030,100120101042203,101004201003132,114422204140040],
+        220000401000020: [101301014221122,114220040000201,102102204022310,111040032200021,114040210022000,100404400013222,112201010203210,100000214310412,100131204234041,103042320101230],
+        1004400003101421: [102340221000300,101000130320340,112401314040311,100110020031042,102011004013000,110422102110221,100220124221000,100402002201002,111110004402021,101011014002032],
+        131301044100100: [102000324040000,110222200103041,112411400202001,110000110022002,140143400110002,102042211100202,102010000200240,114000002302204,112431244044400,100400312201022],
+        200101204130021: [101020204002030,103100030100010,114034220041220,114000204101231,100042000102010,102013000202010,114040202214201,100200001210240,103200234030122,101040224003400],
+        302002040322130: [102230121123030,103000000104034,100122204301140,102033200222311,111100004100400,102014000220344,112310032020303,100020014100010,102021224002101,114230304101022],
+        122411122042220: [100024000110221,101301014221122,114110200212210,102102204022310,110010220103020,114040210022000,100404400013222,111001344400222,110012130410040,100104101200201],
+        1040321410140101: [101100000330120,100000400000241,100200400430003,110212022133311,101412001100222,101041210311410,110022004211030,101210021021243,100140024230240,112230240412241],
+        1020240111102100: [101021134011012,104120130021200,112421004012141,102011104010201,111100220022101,100021104201130,110030410040101,101300401002320,112001321113132,101110434020010],
+        301012002042004: [112002002003003,100012110101000,101202101000104,102311330240430,101023101000220,100002104103221,102231104040121,111331324131300,102303101002031,100010024302421],
+        1031130111011101: [111120230020122,103100221440010,100021101000000,114301000000002,112124310203104,100113324103000,102001000221124,114123420002142,102023021321020,100040401020413],
+        121111101011211: [102011214000000,102110111410144,101001100300012,101041104222000,103002201220000,112000202310100,110001102102020,101102101100112,101012031033100,112023100230412],
+        220120010003121: [101003201002421,102034004000133,114440012312003,100102240002022,102112411140024,102113000210043,102114101120004,100421111011000,101010011034220,111232024102030],
+        1200010024231441: [102000000200302,110001222134013,102021120200111,100303404100220,110101431000132,114310032322001,103240101202023,101004044212020,112000020222043,100400200010131],
+        1040331000001422: [100141220000211,110042202002303,103102010212440,100021120412010,102002344013100,110002002200300,111200302214000],
+        204002420040131: [103102300102243,102113020210120,102020000204032,101012310342300,111202004100121,102012014000404,114020404101101,102321320224101,114031000012100,100020004310022],
+        104332041102000: [102120221022200,100003121032014,114000030020101,100030024102010,112044414003133,100120120112100],
+        1000212001043011: [101011004212201,101010304000003,110032022002020,100214230430124,103031234000122,100400110020244,102044021101411,103230011412301,101100104002023,101042001021012],
+        1400303014041020: [100231004220242,100021210200200,100400102040013,120020430310100,143112400002321,112301043200001,103040110122010,112202300110022,100002040002401],
+        1140100000020024: [110040031224032,100024321230000,300401400322212,101200000042003,114122324002022,110000202000001,110244412120001,111300322200143,100110000002002,102202321104040],
+        102100111103220: [110300202021130,101300231002120,103400104001022,100240020430431,114440420003022,110021010021210,100000024302220,100222021003140,100102404232033,100000000402000],
+        1020212222412302: [101001040340004,101013004002011,101300011002044,112022334022101,101011324004222,101410401010030,103210241422022,114411312312124,103240001403000,102202204040220],
+        1114042022220003: [102112320210140,101300300230001,112401120200210,102410220203104,112032242002404,101000001002320,100023404104311,102004410222200,101310201000040,140020203000100],
+        1000203010041232: [131402001003121,100440420024144,114420000001024,102030414000201,100304111000014,103300031403210,100022131043110,102301201200000,102010021413001,102040300202332],
+        1101401000001241: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        222103120002310: [100020121020300,103432001210300,112440134041000,100210240013000,110401214242400,101044214042221,100033201031241,110010114210202,102141000313022,110110114221031],
+        202222041031201: [110400110003110,112314041101220,110233241214121,103221320102204,110123041320021,102103124031442,111001320042332,100101204231000,112111004021041,103212201410133],
+        103210001132431: [112020042344001,111101122102222,100241000430420,103000114001000,102242024030234,100003344214000,114400300000221,103104024000023,100002104201130,102322420210320],
+        204300312102103: [102101210213220,100030100410121,1001013211040100,102220300000443,110210103122411,1300102203020001,1132012124324031],
+        100121100124302: [111333104124202,101000304014100,100040011023101,101123232010002,114421242204443,110100222001100,101004120224442,103102000121300,110010331230210,102030020224102],
+        1104301232010301: [100000204102030,110210131301120,114102042311423,114100004002011,110423200004021,111200102222210,111140002113000,110201221301200,112001202341100,102240230230013],
+        1143212012100021: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,102321410240300,100021014100124,100130244302034,100122040012210,100014010104404],
+        1100100144014024: [101301014221122,110422102110221,114220040000201,102102204022310,111040032200021,103030040121410,114040210022000,100404400013222,112010420241002,102241044033231],
+        1200011200020320: [114020000030002,100113220020101,114031000022030,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        224111422001240: [103110210340021,1130420021212000,100000011034320],
+        100142000000212: [103004201421221,1331041104430100,100104114230000,110102220031010,100202004104140,103020441400230,110141440120212,102030300140002,1032220014300112,103014011241012],
+        1223023124102230: [100024000110221,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100404410022320,103012101410102,111000000000411],
+        1140214200020222: [110400112011100,103210220100310,110441010002400,102441030200210,103110314000100,100032134341034,114203104001000,100441001010204,101202240300141,114421000000000],
+        321020201110003: [103332104032020],
+        110031222100203: [100221004324212,110410331241133,103144224004012,101120011040200,103012400100023,100241044122010,101312004220321,100121014030221,100002011024214,114102034002301],
+        241120202010001: [114210014110000,111101122102222,110034004420011,103000114001000,100003344214000,111022214113044,110043014410220,102322420210320,114124040000002,100112001021112],
+        1441114102010010: [110441234224400,110030002000422,103100014031411,110000300424304,100032121024110,110013122130200,114020204102020,102402330230011,103121221400012,102022400211311],
+        1101220210010332: [110202012100020,102303010241010,102120231343224,111342020011220,100314114322101,102230130203001,103100034001310,102021401324232,111222102243400,101004410311232],
+        204031102120433: [100012110101000,102311330240430,101023101000220,100002104103221,102231104040121,100010024302421,100200204102022,101022400302010,100021210420202,112021004000202],
+        1032002011243122: [111240220002100,110030344201413,101001014001021,110100001014311,102304244110431,100103224301304,114000100020200,102100322001021,102102100231000,102122000221020],
+        140401111001310: [100021400101221,102241341113010,102300020241001,114100124100413,104130301242304,101001114012114,101141400302200,100002044101122,103342424024214,100100021040420],
+        120002022131020: [103111001422000,101400004022100,100300041001121,101240004011021,101114000332010,112112211102024,114031212300211,102013110201200,102111022001024,103210431422030],
+        201202212144011: [100012330001024,100140330020001,100020134300020,103102000100210,111224340011202,101140004203010,101220004013020,101400424021221,100101030022000,100001020120320],
+        1412342302123042: [100002001013012,100000331201012,111210214440200,114120220214130],
+        1421442321000022: [114400322311044,100101220101011,110000141123103,111121000014100,102420430204010,114204102320001,100102204302134,110012042101020,100021004103201,110200210404004],
+        1040030400102003: [114201204111222,102004204041000,100104341010424,100004004102410,102301101004100,110432112111103,101104001101000,101000100342143,101012111001103,102411021400120],
+        1122020030100101: [110110212010011,100000010101402,111144004103013,102412104022200,101441104023001,102123324004420,112202022022311,103020031400120,102000114010112,100110024300032],
+        1100001224020200: [102040431121110,100400002201113,114111100021420,112024212301420,100300310140241,100240134323001,102111024000402,114321002320001,102042000222002,102001011100100],
+        100124320044242: [114012304010103,101232404040100,100131204300010,103320304021024,102102020203131,102230214040023,114402004140023,100000301041003,100043204100144,101000304012013],
+        101122031200001: [102300100220200,100002031032111,101012034000001,110003214210201,111222110012011,101000040310042,100000101020412,101204001012001,100111240012114,100410021011321],
+        121240341110032: [112310431102204,112004300243012,100000320002140,110102301121440,110003402102211,102200121101000,102103010200134,110012210443400,112002212312240,100300004320113],
+        110342020102200: [103134014000340,104103100010141,111101222240010,100040210411102,112014022314210,100000014100024,102010000221204,100110004102034,102040140220220,114010400014304],
+        1001000133401201: [100012340410210,103420430121200,114020104101011,100002121032011,114210124000000,102144022000341,110102322010003,100022334312010,100401020020010,111002040001042],
+        1030021130300002: [114430202311020,100020101024200,110431341000014,100342121000040,101003104003010,100011041020300,102140004000231,114003114122103,100400200020134,110303202102200],
+        104022200021222: [114220040000201,100404400013222,110012130410040,100104101200201,111040100020010,112201010203210,103042320101230,100120430411222,110014314410140,103004004001222],
+        1000204133231010: [114002044012422,100231201410110,112213013124000,1121420100113022,1001421031214242,100113202240102],
+        1011101201001331: [110130314400100,100032431030100,112102024020402,114001030023421,102223300202003,114400202314210,102022004010240,102102010214442,103022110142241,103012000100422],
+        1403120020132131: [100024000110221,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,100141021004020,103012101410102,111000000000411],
+        1411000130310001: [102102031320011,102102031403230,100024004210111,100041140201301,102002100222202,102140021410400,102001041100103,100000120202410,102300004110122,102202334040220],
+        122010104120003: [111102110012000,100000144104100,101000344010212,101033141030001,100104400021023,102111210230204,114003104032034,102200421003014,103214430100103,100131400100220],
+        213211002241321: [101400001013200,110010104412000,102204424030220,112401002021204,100400300012210,101020304004102,100402032201300,100200201001120,100114004032011,102204004011102],
+        1243021300001101: [100012400101400,111242212222022,101401140300101,101242000300000,100121211012110,102221220204211,100140304103400,100020210021010,100100120020120,100040004102010],
+        104201402121120: [114003010024040,123102202010320,101020211140102,102104120200134,100120230012241,104210140212241,121133013031103,101112240323103,110043200023212,103441014002310],
+        1100020000200200: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1000003000131100: [112410104010101],
+        122200401300301: [102320204112110,102200311300000,114402200140311,111003002230111,114103020000000,111202220001030,120120044004103,110010201320402,103040221410110,111011020042020],
+        1022204110102000: [100202440410010,102002041421011,200001320002101,120200122422404,102143140212042,100000021202031,320440130020000,140441120210201],
+        222000030422000: [114102300004024,112102201102030,103222244003021,114021114023402,100340114211043,100210004343102,100033001220020,114233002340141,100001311234020,101114000330410],
+        201001011100313: [101000224223002,112010012000201,112240000413000,101040201112304,100100301021212,111011024411424,102130000312131,100000101223200,101000231002312,102202210200000],
+        1000101030142100: [110201021201020,110134000003002,111121302103104,101111120330403,102003030241110,100101321220213,100103024030023,100120034230102,222400011010100,100111201222040],
+        1210430301324011: [102203004042010,114203042330220,100020001041410,114004014011110,102410004024030,103102211440104,111101100021200,100002020101023,111230040010002,114112000004001],
+        202110204211313: [112020000230440,110002222201000,100112000402300,110041014413112,110004002133140,110122000020202,110421000100303,102040244041000,102100211143330,110421002110030],
+        1100042002230001: [110111111010000,112230122030224,114120014004003,100010020003310,101042204010110,100002244111003,110131311200401,110441222110003,112000021112000,100103124033001],
+        1141100033210301: [112224111100141,100040134340044,112004310224204,103043334040203,110422201312402,102120131401230,110302011332024,110200302024000,110210020104031,102041210224224],
+        1111002300321004: [102231130213210,100043324210140,114113104123200,100023024211011,100003201021001,100122020011232,110002021121023,111102042213043,102300040221403,102201100200430],
+        1003001021102020: [100000100100200,102010020203010,102200010200000,102001241410312,100000121042240,114444012310100,102330021000131,112041031114021,110400240002411,114432422322332],
+        101001011200021: [100422000031421,102220021120430,100102000010243,112410034040040,111302304130401,100024334203210,103031410122401,100040021031201,103000300120001,110100000100314],
+        1042100322112000: [101402011014002,100002200412020,100102000423142,114410012310230,114000332303001,100022224312021,102122421340210,114044240023401,102010100203212,103113030213000],
+        1403323211112341: [110023401320200,102301224110000,110000312001020,102133211401043,102010214000003,114032204104044,103002010100104,102124011340031,102410110232000,100302000441000],
+        1041313023011010: [103222114034232,103221204032410,100004004102410,101104001101000,103210120100203,101124011100242,103142210104020,114400240003003,102324221001114,112203001103411],
+        1010021040010013: [112413224040101,100220100110400,101200031020230,102403004042342,101024001034211,111122004101222,114001012300002,102121100232012,114000222213021,114102330210021],
+        132222044422000: [111121210031101,100013100100014,100000001020000,102000404002002,100120234300003,102100014000422,114010422330121,100001031220012,110020402100200,103044001403210],
+        101210040201230: [112212320200423,100044011022224,102022031321021,102301011004011,102200111110200,102130001400000,102012100200021,112224304041202,102034010220333,111103044400100],
+        140000140230042: [110040022130003,100030430422242,101120014204000,100100014230110,111002132202012,110201004241002,101000131142230,112001204023241,100104044230000,114022024012213],
+        1010100002003421: [114101004121020,100013014102414,100034134300203,114202000000000,102323404112032,114312012320120,100000041020230,102041021121210,100031000101440,102010031444104],
+        1000001204221103: [110204400000120,102001101130120,1000310103100002,103122114004113,102242301122200,101240010310200,110040230120420,100200020431202,101344140314114,114001002300400],
+        1000030000400222: [111101144102000,101010020320000,102300310242221,102024101321401,100402132200000,114020000020300,111100300024000,103000001401041,100000134100202,100000321040000],
+        132314401200020: [102101021412120,110024020421011,100042014310200,100003014314102,100040224102124,102100011000033,100011214102010,102112241342203,100002004200212,110010332201012],
+        120102030344140: [114402404141241,100200400430003,114420102323300,110212022133311,101041210311410,110022004211030,110403010000304,101210021021243,100140024230240,112230240412241],
+        110203113111041: [111144042240304,110301011234204,114211102321011,101001004012413,102000200201422,1001103242021023,102412004022002,103220124034124,111123114101021,100032204200023],
+        1021000013324142: [110121100004131,102320000221020,110142020400012,114230344103210,103114211441300,103123200222442,101303414220001,100131000400012,103020200122310,100040004202103],
+        120040000222023: [100210001210000,110202011000012,100011000420320,103102124000402,114232114004301,101140341100310,101010404221002,102221044031031,110010104201130,112422000202033],
+        1001310121010311: [100200400430003,114420102323300,110112030401012,111112204404021,110404122110112,110403010000304,114100040214000,101210021021243,102412044040011,101010200320244],
+        304124203440023: [100024000110221,102102204022310,114130014001202,110010220103020,111004100022110,114040210022000,111001344400222,101021204010011,103012101410102,111000000000411],
+        100200232002010: [100034304101213,114002014100310,112313301100030,102101031412121,100020020121132,102102010220401,100001020100030,100021120201020,111000024404021,101202014010400],
+    },
+)
diff --git a/.vim/bundle/black/profiling/mix_small.py b/.vim/bundle/black/profiling/mix_small.py
new file mode 100644 (file)
index 0000000..6937df5
--- /dev/null
@@ -0,0 +1,102 @@
+config = some.Structure(
+    globalMap = {
+        103310322020340: [100000031211103,101042000320420,100100001202021,112320301100420,110101024402203,112001202000203,112101112010031,102130400200010,100401014300441,103000401422033],
+        110040120003212: [114413100031332,102101001412002,100210000032130,214000110100040,103031420121210,112114222301010,110133330100020,100001001203011,102210220202130,102200120234012],
+        244402003102200: [110212012114431,100001140020000,100012101223021,110031301200114,114002020044120,100021004302202,102202200240222,114102010220042,102021301441201,104103102103201],
+        122013242003223: [100014100100001,102100004130301,111120004100414,101034024000101,100021424301033,102003004003400,103340410140122,100102114100420,111012202111021,100103144302200],
+        1120010021223330: [110332202020000,104120130021200,112421004012141,111100220022101,100021104201130,102224410201003,110030021010001,101300401002320,112001321113132,101110434020010],
+        214100003030021: [102122000214201,100242141004122,102024240221040,110320011200230,100011114300334,102303004110022,100110201042101,110134201140010,112101044000202,100040024340013],
+        1000220132200020: [102231130213210,103214010102022,102000402041014,100043324210140,100023024211011,102404021403141,100010004313001,100003201021001,100122020011232,100121031014040],
+        1200041022422001: [100021300101110,103010301402112,100011401031000,100020034100101,100122214300222,103134021420204,102042210220100,100103200021130,103204214043011,103020320102002],
+        1000232101122040: [110011414240022,102202310203222,100042001020203,102002320220202,100010044300003,114130210231020,103301410110110,112114324040000,102124031023100,100204104320231],
+        110002000000001: [110010000111020,102011041320000,114240012324120,100022010022031,102014140200013,101240110302200,100031204311023,101232001021020,100012121040101,111243002222100],
+        200211022142211: [102231130213210,103214010102022,100043324210140,102324014112020,102022004012201,100023024211011,111130210020000,102404021403141,100003201021001,100122020011232],
+        114121130201204: [100040031020241,101100104000222,102324141000002,101010234004042,102041224010012,100411400030100,100002000102100,114340102322021,112033124022002,102120221120200],
+        104101002123040: [100032320000112,103140011442322,100312120141341,111144020011120,112142204020032,110044031204131,114012010020012,100001420412010,100102110020102,103022000123142],
+        241101103112120: [110333404433042,112240002043300,110021100132240,103104221443021,101100304000101,100202210410011,114402212310021,102411011111011,103020141414101,100113001040420],
+        1004020030320422: [100022214203010,110310011234031,110123111300000,100020031041304,102120004000101,102020002000420,110100302010110,100422020030044,101220100303222,100002220411002],
+        1041010100001110: [111124004101012,114103220220104,102120004001310,102430121110340,101021204000200,112141104020201,101200111020111,110001200422320,103210114021430,114223242332100],
+        121103011132000: [110021104200001,110441140102024,111140124100100,110310020040401,100002024303323,110030002130201,102103320232241,110302000400221,110111001302000,110210304220000],
+        1042022101004111: [110021104200001,111140124100100,110031301200114,102103320232241,110302000400221,110111001302000,110210304220000,102033124000111,111000212204213,110010324410130],
+        102220010222003: [114003212210013,110302012103114,103023101400002,110010120440200,110024140022040,100002100100320,110100034200300,100401201010220,103200024021204,102100204000234],
+        1442130103121040: [114413100031332,112121020204344,102211030203010,100210000032130,214000110100040,103031420121210,112114222301010,100001001203011,114214404142034,102210220202130],
+        110204013021024: [110301402000211,103030201402004,110420104221220,103200004030020,100320014310021,102000110221110,110240214432004,102122141142000,103041204010000,114432234113040],
+        100001440133234: [102111040210242,114110000002430,102010011412143,100424220032043,114013422300032,102021004001004,100131414303044,100201010110320,100000221030033,110101101120302],
+        114002033000020: [100001121002141,102000040201003,101132131221321,100004440004031,102002011033030,110310300003402,110220022132003,101001000302103,110044112100220,100010120031210],
+        112123022000131: [100304201000221,100112021020320,103010001422020,102300124023122,114221004100020,100002100124101,102304100210334,100403210010142,112003100241220,102204304000304],
+        1143001230040001: [101033124003122,100313144100202,103201004024412,114014222302011,103011020110211,110203420111140,111003412201430,101411214000203,110222422042203],
+        1002403200000231: [100122004300410,102140014001101,102000104012232,112400202020003,102000224000011,114122134140002,102101010202004,114400202310210,100042030201341,112233332034000],
+        1003123041101031: [110043132100300,102220120203200,100002004201122,110132031134031,1320303202002000,1321200010022312,110130330012140,114102134002330,140403400240000,100003230110201],
+        242220101103400: [111130112100210,102202200240222,110131044200121,100100004102234,110223332120231,100001024301322,114013044102010,114220114140122,101023021034304,110200210110130],
+        121030040400021: [110011011212100,101134030011000,103220211421421,110123230124040,131000001020102,112200412033030,110420001000202,100102110402220,110412310030001,114012022302022],
+        100104011300401: [110320414420310,110100100101041,100420124100211,103010211222002,101040120320230,110013021300010,101043234000412,101220000040002,100422001002123,114010010010002],
+        1004003211220032: [102400100230000,101100300302102,114120420223002,100002210201212,102302020212101,112410424012010,100030004104210,103030201434002,110232110004010,103021201430000],
+        223011102020040: [110012420131001,100132040031022,100020310000200,100220004030002,110020002003334,110014000442004,101441204020001,102014201411102,103231320100042,104121201242032],
+        100200110422111: [103100221440010,114003344011001,100021101000000,102140000212141,101014201030204,101203001010111,102424114020143,100031201030102,101041001003300,114012444020220],
+        134300111030221: [112100124023402,101020044011003,100002414210010,102010042000041,102242204040102,100021014100124,100130244302034,100122040012210,100014010104404,101020104000001],
+        114001000330100: [401142101000022,400114001102410,102100000012031,431232000323104,1012100023110102,232023302143031,120200122422404,1040100003200241,111414004440203,1020220210340010],
+        211222012120321: [112000112000031,100121214300000,102123214020000,102022124012030,114002320022312],
+        1122000200402140: [102401141113031,103042420143020,102304314110202,110210400002012,113032012204012,112310002020302,100204311000400,100403012200201,112002111121013,114211100001224],
+        332000024200013: [102120010220042,110103312142034,102210210312302,101120100320100,114140014100000,102110004002301,100130020001030,112022100213011,100101231202322,111210020001013],
+        120041442412123: [102133011413110,111001200041102,101223020300040,102034324000220,100210000032400,101230020303000,111340130010314,110200422121211,110214220002020,112220414010040],
+        1011011320300100: [100102024301030,100111134302041,100112234000041,110004244214343,101002101020003,102214021120301,114221224100022,101330210310300,112003021111000,102012141134211],
+        220020021000101: [100301001000202,104101112102403,100023121223031,114201432320014,120000002023011,102133120200123,101014020301201,102000031130401,101010111002141,114123124143310],
+        1024011342000021: [102001001130100,111204203012002,124020002020003,122222120003214,133332002141010,144000013213001,124010030100142,112310202021010,110014020020011,100140044020011],
+        1131011002310011: [102230040200031,110122001010214,114043140010022,102101204000010,110022300420031,100100401040001,114230230000123,100222024320003,103323001400013,114013012300240],
+        1142024120224002: [102203344011410,100021324100000,102103430210003,100012014300120,102414014022212,102012220241003,101004411032102,101430211012120,100204021000012,103242044020102],
+        1100004410231120: [110013202003320,101031241000010,102120231343224,110030332100203,100314114322101,114404232310120,103100034001310,114002202210331,100031301020100,110111032140220],
+        1440220030001122: [114010330030011,103021220104200,101010020320000,112000210211020,100010324210003,101000000343443,110002400011111,100402132200000,111100300024000,103144040104204],
+        121414301110004: [110144240011020,110413401240204,112000244001222,114441114123013,103220211421421,114000012334102,101000014012442,100312401002102,111022210021013,103110001420121],
+        130004004220120: [111240340004003,102021024000010,111101222244030,112011012004300,102300010242330,102000401120420,102004012043122,114011102210402,100120001014040,114300100000041],
+        1013303000401020: [101000024004442,100002100000100,110130030020000],
+        220041302111231: [100002014200331,100034244210020,102012004000003,100411000030110,102041201121230,103011014042120,100000030120242,102110400210023,101012204221200,111212422222300],
+        1000031031200013: [101302134233230,100000130010033,101030404212000,114102224000201,100022021041122,100020001042002,100013011020311,100120041020012,102012204000242,114143024003322],
+        1000303301100221: [111333104124202,101000304014100,100040011023101,110301030010140,104100002101431,101123232010002,114421242204443,110100222001100,103102000121300,110010331230210],
+        1410211342331412: [111002100000102,114021010040140,114222302321101,102101024002121,110014024202014,110220130100010,100020011030330,102404221402210,110203022032320,101222014230110],
+        1411020122202044: [100141401021003,102010000231120,101000400320211,101001010300214,103010020142023,110132002212113,110010100040100,102101002002002,111020302232033,110224030114311],
+        101010042001102: [101221020040220,100103104302044,101041030320401,102141212000200,101203121020430,102020004000014,100000211023014,114144014122041,100201111002224,101410304041000],
+        204204011102020: [100212030414010,101400004022210,102031021441200,101200020303202,102301324112020,111340300010010,102013224003020,103013020123142,102240344041020,102140202001100],
+        240000420312002: [110002004410202,102103114000024,102240221000001,112041002002124,114000024101102,140343100002103,400200234320200,100020124204330,100001424102041,100100021040230],
+        1030000001422430: [102343230224321,103211200100400,102112231020231,100022004300020,102320000240102,100042144200000,102030304001101,100020420121003,103020004011414,100001104301200],
+        1104234221030010: [110000322130121,101023001002020,111300222202234,100200001210021,103204230111030,104130020011020,101114422122000,102001314013400,114110414140400,111201100011141],
+        121341130003000: [111102004100101,102021100220101,114000040010421,112042110220004,100000214240410,100433201004014,102301102004413,102003000220111,102010100204023,102414040230400],
+        100101220022002: [100010024102110,101041200320012,114303400002201,110204211000331,112121014003422,114430102311021,100240444100022,103004411424400,111014002140322],
+        1023303420422001: [100043104240004,110002034200042,100001240100033,114100304002030,102100001340122,112030010234104,103414101212410,100123021223100,112302011102312,101020030343002],
+        101114102124321: [110403244220202,103113014002100,110120400402324,100402340010310,112010020211000,100102200000211,103030201240100,102300210210222,114100332340213,111031030024010],
+        1422302020100030: [114020000030002,114031000022030,100201211003004,102014002000401,103103241421322,114121012340044,102000400240203,102104304023201,103310300140324,100002224244002],
+        1121202400231120: [101211201202134,103120104030100,100004000100101,102020030220200,110031404423144,110003434410403,111110000014401,100000204312321,101004000304012,110300121220201],
+        1042001221000013: [114032104100141,101213114040141,102210101002412,111140100011101,110122421241103,112001144002010,101013030304101,100012011022000,102000004000013,102021241324040],
+        1102433033042110: [110104112010103,111102004100101,100122004300410,102202414041044,102140014001101,102000104012232,102021100220101,114443330001442,100230120001003,114000040010421],
+        100103201011144: [110102401201204,102400100230000,100212030414010,101200020303202,114120420223002,102013224003020,100002210201212,103013020123142,102302020212101,114303340000001],
+        240343043023011: [110120144200000,114022412330004,101200221022044,110241112020204,100002004104004,102100224000210,102310140240012,100014204201000,102103321411004,100400001001300],
+        1020301032424304: [101302134233230,100000130010033,101030404212000,114102224000201,100431000032001,100020001042002,100013011020311,102103331400000,100120041020012,100020001041231],
+        114200022220040: [100014100100001,102100004130301,111120004100414,101034024000101,101243024011000,103340410140122,100010021221221,111012202111021,100103144302200,101414100300221],
+        142041243300010: [102102002002242,101130104022002,101230331020012,100004244210201,102420124024204,122312222240401,102041014011340,110200130004300,100140101012000,101400000302141],
+        1002203102111022: [100434000032200,110004020020022,114032412303041,112000301122111,102020130212402,100010001020000,200000020021022,114321212322303,112302112002211,114202002333330],
+        1110102121041413: [101012310301211,103112200123144,114242304004011,102302200241241,110001420021023,110201040003402,112301421130130,110020012100302,114412202320010,110021030030202],
+        114020200220012: [102010114022011,103340041403223,114002200000421,101020321002002,114302210010001,114030004104220,100104004301000,102443211401140,102301041000014,100001111201214],
+        202011212123200: [102203301123001,103210400110122,101112020300011,114104302341000,100400201010000,102244400201444,101010001000121,102304000220032,102002131132000,100000031024222],
+        201032103003132: [110212041114210,113210300100002,112404024011000,102131034000220,111212124130140,101002014013010,103402020120010,112110100230023,112003044002004,103020200102200],
+        120222032001012: [110121100004131,111400214442024,111122200021102,101041100300001,102140011440001,101011220342010,110200004221020,103114211441300,110000222010004,100114000101041],
+        1100013040001020: [100003031030034,101001044211204,102100010233022,102120400212001,114313022302101,103001324000110,100002014200021,102300401001010,103212320212011,111120034400000],
+        1001031021300022: [102000020220000,101020104000040,114412142320040,100003044100101,114012402332300,102220211122102,101010110302010,100032121020101,100013224313301,100012244240030],
+        124000010122242: [100032320000112,103140011442322,100312120141341,111144020011120,112142204020032,110044031204131,114012010020012,100001420412010,100102110020102,102002204001140],
+        1121211020204132: [110020301320101,102014001130210,110401041140300,110002302201420,102202001120002,110200010003201,102421004041011,102240040202421,101001110300111,100130004300103],
+        121320202004301: [111014240041102,101100004200110,112021221130424,112200041103002,110400040402041,112001011112202,100112004304314,100232041001122,100223030001010,100104231000300],
+        1024242230240244: [110322104424202,101202421002031,102102220312102,103004204021310,112220102043102,110012310020200,102030130241300,103030120100220,100232224340041,112400002011010],
+        1002100010130110: [101400001011042,100002011020211,100100110010010,111110002213142,100002131030310,111102214100400,103220201402330,102321000221140,103113124030200,102110300311400],
+        200010402222410: [101210320301302,102100221340112,100114104101001,114002244103320,101023221000031,101400014040400,102012034000402,114221004002212,102100122002001,101000011021414],
+        112300020202111: [103141411420221,122102400312000,110002100110002,1340024302404122,100002001043010,113110330121030,410020013004430,1002300040412102,1210020204140003,123211320000102],
+        100102203210034: [102023021100022,111200302222011,112040241120204,111000022200000,100010011232324,110220030000133,110000330430311,101211221014003,103111230120100,102221220200021],
+        1021001032000012: [102020010203200,100011144312020,102011204001010,102001410221023,110130201302200,103041021430301,101100440320434,114000402211404,101000100302003,110000030430422],
+        1031102424140120: [100011010414200,111121102240240,102002121101110,102403100202003,110000100041101,100400000010033,100101211001320,101141020321000,103224101400400,102000002043020],
+        102001021434201: [110131122012210,114010200040441,110032014420232,100000344100100,111304022202211,102302011002003,102011021121200,100012441030002,110222042022111,103131004002200],
+        220100132400104: [1010400230221020,111320012221132,102302144110440,114140004123122,102143202000400,111020002202333,101321311004010,102110241342210,114122302311011,100002320411400],
+        1110121023020002: [100022041001002,111240340004003,111101222244030,114032424122040,112011012004300,101021401003220,100301020420101,102002202000000,100022024100041,102010410213111],
+        1042030001044121: [101230040301234,110033032100000,102303014024221,100100224304110,100400432200321,100020200012311,114140144122230,101400201102014,100000020004004,101040040303102],
+        1100100224104011: [111130112100210,102202200240222,110131044200121,100100004102234,101023014004000,110223332120231,100001024301322,114013044102010,114220114140122,110200210110130],
+        212002042300000: [100030220100110,110011202100142,112400102013231,114012002212100,100002114314022,114203110001031,112030122000211,111004012200210,100413131013301,110001102103432],
+        221001240043040: [100420021010013,112101302302202,102212011120200,102344111104233,100432104320110,114021014020000,102121321340000,114200214002024,100111221011100,100023104101340],
+        1040021200420124: [100042111220111,112220100202000,100042041220010,100403211010100,103240301400123,114102210214041,100021300103041,101010204000242,111334004121414,114101000213410],
+    },
+)
diff --git a/.vim/bundle/black/pyproject.toml b/.vim/bundle/black/pyproject.toml
new file mode 100644 (file)
index 0000000..73e1960
--- /dev/null
@@ -0,0 +1,35 @@
+# Example configuration for Black.
+
+# NOTE: you have to use single-quoted strings in TOML for regular expressions.
+# It's the equivalent of r-strings in Python.  Multiline strings are treated as
+# verbose regular expressions by Black.  Use [ ] to denote a significant space
+# character.
+
+[tool.black]
+line-length = 88
+target-version = ['py36', 'py37', 'py38']
+include = '\.pyi?$'
+extend-exclude = '''
+/(
+  # The following are specific to Black, you probably don't want those.
+  | blib2to3
+  | tests/data
+  | profiling
+)/
+'''
+
+
+# Build system information below.
+# NOTE: You don't need this in your own Black configuration.
+
+[build-system]
+requires = ["setuptools>=45.0", "setuptools_scm[toml]>=6.3.1", "wheel"]
+build-backend = "setuptools.build_meta"
+
+[tool.pytest.ini_options]
+# Option below requires `tests/optional.py`
+optional-tests = [
+  "no_python2: run when `python2` extra NOT installed",
+  "no_blackd: run when `d` extra NOT installed",
+  "no_jupyter: run when `jupyter` extra NOT installed",
+]
diff --git a/.vim/bundle/black/scripts/__init__.py b/.vim/bundle/black/scripts/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/scripts/check_pre_commit_rev_in_example.py b/.vim/bundle/black/scripts/check_pre_commit_rev_in_example.py
new file mode 100644 (file)
index 0000000..9560b3b
--- /dev/null
@@ -0,0 +1,54 @@
+"""
+Check that the rev value in the example pre-commit configuration matches
+the latest version of Black. This saves us from forgetting to update that
+during the release process.
+
+Why can't we just use `rev: stable` and call it a day? Well pre-commit
+won't auto update the hook as you may expect (and for good reasons, some
+technical and some pragmatic). Encouraging bad practice is also just
+not ideal. xref: https://github.com/psf/black/issues/420
+"""
+
+import os
+import sys
+
+import commonmark
+import yaml
+from bs4 import BeautifulSoup
+
+
+def main(changes: str, source_version_control: str) -> None:
+    changes_html = commonmark.commonmark(changes)
+    changes_soup = BeautifulSoup(changes_html, "html.parser")
+    headers = changes_soup.find_all("h2")
+    latest_tag, *_ = [
+        header.string for header in headers if header.string != "Unreleased"
+    ]
+
+    source_version_control_html = commonmark.commonmark(source_version_control)
+    source_version_control_soup = BeautifulSoup(
+        source_version_control_html, "html.parser"
+    )
+    pre_commit_repos = yaml.safe_load(
+        source_version_control_soup.find(class_="language-yaml").string
+    )["repos"]
+
+    for repo in pre_commit_repos:
+        pre_commit_rev = repo["rev"]
+        if not pre_commit_rev == latest_tag:
+            print(
+                "Please set the rev in ``source_version_control.md`` to be the latest "
+                f"one.\nExpected {latest_tag}, got {pre_commit_rev}.\n"
+            )
+            sys.exit(1)
+
+
+if __name__ == "__main__":
+    with open("CHANGES.md", encoding="utf-8") as fd:
+        changes = fd.read()
+    with open(
+        os.path.join("docs", "integrations", "source_version_control.md"),
+        encoding="utf-8",
+    ) as fd:
+        source_version_control = fd.read()
+    main(changes, source_version_control)
diff --git a/.vim/bundle/black/scripts/check_version_in_basics_example.py b/.vim/bundle/black/scripts/check_version_in_basics_example.py
new file mode 100644 (file)
index 0000000..c62780d
--- /dev/null
@@ -0,0 +1,47 @@
+"""
+Check that the rev value in the example from ``the_basics.md`` matches
+the latest version of Black. This saves us from forgetting to update that
+during the release process.
+"""
+
+import os
+import sys
+
+import commonmark
+from bs4 import BeautifulSoup
+
+
+def main(changes: str, the_basics: str) -> None:
+    changes_html = commonmark.commonmark(changes)
+    changes_soup = BeautifulSoup(changes_html, "html.parser")
+    headers = changes_soup.find_all("h2")
+    tags = [header.string for header in headers if header.string != "Unreleased"]
+    latest_tag = tags[0]
+
+    the_basics_html = commonmark.commonmark(the_basics)
+    the_basics_soup = BeautifulSoup(the_basics_html, "html.parser")
+    (version_example,) = [
+        code_block.string
+        for code_block in the_basics_soup.find_all(class_="language-console")
+        if "$ black --version" in code_block.string
+    ]
+
+    for tag in tags:
+        if tag in version_example and tag != latest_tag:
+            print(
+                "Please set the version in the ``black --version`` "
+                "example from ``the_basics.md`` to be the latest one.\n"
+                f"Expected {latest_tag}, got {tag}.\n"
+            )
+            sys.exit(1)
+
+
+if __name__ == "__main__":
+    with open("CHANGES.md", encoding="utf-8") as fd:
+        changes = fd.read()
+    with open(
+        os.path.join("docs", "usage_and_configuration", "the_basics.md"),
+        encoding="utf-8",
+    ) as fd:
+        the_basics = fd.read()
+    main(changes, the_basics)
diff --git a/.vim/bundle/black/setup.cfg b/.vim/bundle/black/setup.cfg
new file mode 100644 (file)
index 0000000..1a0a217
--- /dev/null
@@ -0,0 +1,3 @@
+[options]
+setup_requires =
+  setuptools_scm[toml]>=6.3.1
diff --git a/.vim/bundle/black/setup.py b/.vim/bundle/black/setup.py
new file mode 100644 (file)
index 0000000..de84dc3
--- /dev/null
@@ -0,0 +1,118 @@
+# Copyright (C) 2020 Łukasz Langa
+from setuptools import setup, find_packages
+import sys
+import os
+
+assert sys.version_info >= (3, 6, 2), "black requires Python 3.6.2+"
+from pathlib import Path  # noqa E402
+
+CURRENT_DIR = Path(__file__).parent
+sys.path.insert(0, str(CURRENT_DIR))  # for setuptools.build_meta
+
+
+def get_long_description() -> str:
+    return (
+        (CURRENT_DIR / "README.md").read_text(encoding="utf8")
+        + "\n\n"
+        + (CURRENT_DIR / "CHANGES.md").read_text(encoding="utf8")
+    )
+
+
+USE_MYPYC = False
+# To compile with mypyc, a mypyc checkout must be present on the PYTHONPATH
+if len(sys.argv) > 1 and sys.argv[1] == "--use-mypyc":
+    sys.argv.pop(1)
+    USE_MYPYC = True
+if os.getenv("BLACK_USE_MYPYC", None) == "1":
+    USE_MYPYC = True
+
+if USE_MYPYC:
+    mypyc_targets = [
+        "src/black/__init__.py",
+        "src/blib2to3/pytree.py",
+        "src/blib2to3/pygram.py",
+        "src/blib2to3/pgen2/parse.py",
+        "src/blib2to3/pgen2/grammar.py",
+        "src/blib2to3/pgen2/token.py",
+        "src/blib2to3/pgen2/driver.py",
+        "src/blib2to3/pgen2/pgen.py",
+    ]
+
+    from mypyc.build import mypycify
+
+    opt_level = os.getenv("MYPYC_OPT_LEVEL", "3")
+    ext_modules = mypycify(mypyc_targets, opt_level=opt_level)
+else:
+    ext_modules = []
+
+setup(
+    name="black",
+    use_scm_version={
+        "write_to": "src/_black_version.py",
+        "write_to_template": 'version = "{version}"\n',
+    },
+    description="The uncompromising code formatter.",
+    long_description=get_long_description(),
+    long_description_content_type="text/markdown",
+    keywords="automation formatter yapf autopep8 pyfmt gofmt rustfmt",
+    author="Łukasz Langa",
+    author_email="lukasz@langa.pl",
+    url="https://github.com/psf/black",
+    project_urls={"Changelog": "https://github.com/psf/black/blob/main/CHANGES.md"},
+    license="MIT",
+    py_modules=["_black_version"],
+    ext_modules=ext_modules,
+    packages=find_packages(where="src"),
+    package_dir={"": "src"},
+    package_data={
+        "blib2to3": ["*.txt"],
+        "black": ["py.typed"],
+        "black_primer": ["primer.json"],
+    },
+    python_requires=">=3.6.2",
+    zip_safe=False,
+    install_requires=[
+        "click>=7.1.2",
+        "platformdirs>=2",
+        "tomli>=0.2.6,<2.0.0",
+        "typed-ast>=1.4.2; python_version < '3.8'",
+        "regex>=2020.1.8",
+        "pathspec>=0.9.0, <1",
+        "dataclasses>=0.6; python_version < '3.7'",
+        "typing_extensions>=3.10.0.0",
+        # 3.10.0.1 is broken on at least Python 3.10,
+        # https://github.com/python/typing/issues/865
+        "typing_extensions!=3.10.0.1; python_version >= '3.10'",
+        "mypy_extensions>=0.4.3",
+    ],
+    extras_require={
+        "d": ["aiohttp>=3.7.4"],
+        "colorama": ["colorama>=0.4.3"],
+        "python2": ["typed-ast>=1.4.3"],
+        "uvloop": ["uvloop>=0.15.2"],
+        "jupyter": ["ipython>=7.8.0", "tokenize-rt>=3.2.0"],
+    },
+    test_suite="tests.test_black",
+    classifiers=[
+        "Development Status :: 4 - Beta",
+        "Environment :: Console",
+        "Intended Audience :: Developers",
+        "License :: OSI Approved :: MIT License",
+        "Operating System :: OS Independent",
+        "Programming Language :: Python",
+        "Programming Language :: Python :: 3.6",
+        "Programming Language :: Python :: 3.7",
+        "Programming Language :: Python :: 3.8",
+        "Programming Language :: Python :: 3.9",
+        "Programming Language :: Python :: 3 :: Only",
+        "Topic :: Software Development :: Libraries :: Python Modules",
+        "Topic :: Software Development :: Quality Assurance",
+    ],
+    entry_points={
+        "console_scripts": [
+            "black=black:patched_main",
+            "blackd=blackd:patched_main [d]",
+            "black-primer=black_primer.cli:main",
+        ]
+    },
+)
diff --git a/.vim/bundle/black/src/black/__init__.py b/.vim/bundle/black/src/black/__init__.py
new file mode 100644 (file)
index 0000000..fdbaf04
--- /dev/null
@@ -0,0 +1,1309 @@
+import asyncio
+from json.decoder import JSONDecodeError
+import json
+from concurrent.futures import Executor, ThreadPoolExecutor, ProcessPoolExecutor
+from contextlib import contextmanager
+from datetime import datetime
+from enum import Enum
+import io
+from multiprocessing import Manager, freeze_support
+import os
+from pathlib import Path
+from pathspec.patterns.gitwildmatch import GitWildMatchPatternError
+import regex as re
+import signal
+import sys
+import tokenize
+import traceback
+from typing import (
+    Any,
+    Dict,
+    Generator,
+    Iterator,
+    List,
+    MutableMapping,
+    Optional,
+    Pattern,
+    Set,
+    Sized,
+    Tuple,
+    Union,
+)
+
+from dataclasses import replace
+import click
+
+from black.const import DEFAULT_LINE_LENGTH, DEFAULT_INCLUDES, DEFAULT_EXCLUDES
+from black.const import STDIN_PLACEHOLDER
+from black.nodes import STARS, syms, is_simple_decorator_expression
+from black.lines import Line, EmptyLineTracker
+from black.linegen import transform_line, LineGenerator, LN
+from black.comments import normalize_fmt_off
+from black.mode import Mode, TargetVersion
+from black.mode import Feature, supports_feature, VERSION_TO_FEATURES
+from black.cache import read_cache, write_cache, get_cache_info, filter_cached, Cache
+from black.concurrency import cancel, shutdown, maybe_install_uvloop
+from black.output import dump_to_file, ipynb_diff, diff, color_diff, out, err
+from black.report import Report, Changed, NothingChanged
+from black.files import find_project_root, find_pyproject_toml, parse_pyproject_toml
+from black.files import gen_python_files, get_gitignore, normalize_path_maybe_ignore
+from black.files import wrap_stream_for_windows
+from black.parsing import InvalidInput  # noqa F401
+from black.parsing import lib2to3_parse, parse_ast, stringify_ast
+from black.handle_ipynb_magics import (
+    mask_cell,
+    unmask_cell,
+    remove_trailing_semicolon,
+    put_trailing_semicolon_back,
+    TRANSFORMED_MAGICS,
+    jupyter_dependencies_are_installed,
+)
+
+
+# lib2to3 fork
+from blib2to3.pytree import Node, Leaf
+from blib2to3.pgen2 import token
+
+from _black_version import version as __version__
+
+# types
+FileContent = str
+Encoding = str
+NewLine = str
+
+
+class WriteBack(Enum):
+    NO = 0
+    YES = 1
+    DIFF = 2
+    CHECK = 3
+    COLOR_DIFF = 4
+
+    @classmethod
+    def from_configuration(
+        cls, *, check: bool, diff: bool, color: bool = False
+    ) -> "WriteBack":
+        if check and not diff:
+            return cls.CHECK
+
+        if diff and color:
+            return cls.COLOR_DIFF
+
+        return cls.DIFF if diff else cls.YES
+
+
+# Legacy name, left for integrations.
+FileMode = Mode
+
+DEFAULT_WORKERS = os.cpu_count()
+
+
+def read_pyproject_toml(
+    ctx: click.Context, param: click.Parameter, value: Optional[str]
+) -> Optional[str]:
+    """Inject Black configuration from "pyproject.toml" into defaults in `ctx`.
+
+    Returns the path to a successfully found and read configuration file, None
+    otherwise.
+    """
+    if not value:
+        value = find_pyproject_toml(ctx.params.get("src", ()))
+        if value is None:
+            return None
+
+    try:
+        config = parse_pyproject_toml(value)
+    except (OSError, ValueError) as e:
+        raise click.FileError(
+            filename=value, hint=f"Error reading configuration file: {e}"
+        ) from None
+
+    if not config:
+        return None
+    else:
+        # Sanitize the values to be Click friendly. For more information please see:
+        # https://github.com/psf/black/issues/1458
+        # https://github.com/pallets/click/issues/1567
+        config = {
+            k: str(v) if not isinstance(v, (list, dict)) else v
+            for k, v in config.items()
+        }
+
+    target_version = config.get("target_version")
+    if target_version is not None and not isinstance(target_version, list):
+        raise click.BadOptionUsage(
+            "target-version", "Config key target-version must be a list"
+        )
+
+    default_map: Dict[str, Any] = {}
+    if ctx.default_map:
+        default_map.update(ctx.default_map)
+    default_map.update(config)
+
+    ctx.default_map = default_map
+    return value
+
+
+def target_version_option_callback(
+    c: click.Context, p: Union[click.Option, click.Parameter], v: Tuple[str, ...]
+) -> List[TargetVersion]:
+    """Compute the target versions from a --target-version flag.
+
+    This is its own function because mypy couldn't infer the type correctly
+    when it was a lambda, causing mypyc trouble.
+    """
+    return [TargetVersion[val.upper()] for val in v]
+
+
+def re_compile_maybe_verbose(regex: str) -> Pattern[str]:
+    """Compile a regular expression string in `regex`.
+
+    If it contains newlines, use verbose mode.
+    """
+    if "\n" in regex:
+        regex = "(?x)" + regex
+    compiled: Pattern[str] = re.compile(regex)
+    return compiled
+
+
+def validate_regex(
+    ctx: click.Context,
+    param: click.Parameter,
+    value: Optional[str],
+) -> Optional[Pattern]:
+    try:
+        return re_compile_maybe_verbose(value) if value is not None else None
+    except re.error:
+        raise click.BadParameter("Not a valid regular expression") from None
+
+
+@click.command(context_settings=dict(help_option_names=["-h", "--help"]))
+@click.option("-c", "--code", type=str, help="Format the code passed in as a string.")
+@click.option(
+    "-l",
+    "--line-length",
+    type=int,
+    default=DEFAULT_LINE_LENGTH,
+    help="How many characters per line to allow.",
+    show_default=True,
+)
+@click.option(
+    "-t",
+    "--target-version",
+    type=click.Choice([v.name.lower() for v in TargetVersion]),
+    callback=target_version_option_callback,
+    multiple=True,
+    help=(
+        "Python versions that should be supported by Black's output. [default: per-file"
+        " auto-detection]"
+    ),
+)
+@click.option(
+    "--pyi",
+    is_flag=True,
+    help=(
+        "Format all input files like typing stubs regardless of file extension (useful"
+        " when piping source on standard input)."
+    ),
+)
+@click.option(
+    "--ipynb",
+    is_flag=True,
+    help=(
+        "Format all input files like Jupyter Notebooks regardless of file extension "
+        "(useful when piping source on standard input)."
+    ),
+)
+@click.option(
+    "-S",
+    "--skip-string-normalization",
+    is_flag=True,
+    help="Don't normalize string quotes or prefixes.",
+)
+@click.option(
+    "-C",
+    "--skip-magic-trailing-comma",
+    is_flag=True,
+    help="Don't use trailing commas as a reason to split lines.",
+)
+@click.option(
+    "--experimental-string-processing",
+    is_flag=True,
+    hidden=True,
+    help=(
+        "Experimental option that performs more normalization on string literals."
+        " Currently disabled because it leads to some crashes."
+    ),
+)
+@click.option(
+    "--check",
+    is_flag=True,
+    help=(
+        "Don't write the files back, just return the status. Return code 0 means"
+        " nothing would change. Return code 1 means some files would be reformatted."
+        " Return code 123 means there was an internal error."
+    ),
+)
+@click.option(
+    "--diff",
+    is_flag=True,
+    help="Don't write the files back, just output a diff for each file on stdout.",
+)
+@click.option(
+    "--color/--no-color",
+    is_flag=True,
+    help="Show colored diff. Only applies when `--diff` is given.",
+)
+@click.option(
+    "--fast/--safe",
+    is_flag=True,
+    help="If --fast given, skip temporary sanity checks. [default: --safe]",
+)
+@click.option(
+    "--required-version",
+    type=str,
+    help=(
+        "Require a specific version of Black to be running (useful for unifying results"
+        " across many environments e.g. with a pyproject.toml file)."
+    ),
+)
+@click.option(
+    "--include",
+    type=str,
+    default=DEFAULT_INCLUDES,
+    callback=validate_regex,
+    help=(
+        "A regular expression that matches files and directories that should be"
+        " included on recursive searches. An empty value means all files are included"
+        " regardless of the name. Use forward slashes for directories on all platforms"
+        " (Windows, too). Exclusions are calculated first, inclusions later."
+    ),
+    show_default=True,
+)
+@click.option(
+    "--exclude",
+    type=str,
+    callback=validate_regex,
+    help=(
+        "A regular expression that matches files and directories that should be"
+        " excluded on recursive searches. An empty value means no paths are excluded."
+        " Use forward slashes for directories on all platforms (Windows, too)."
+        " Exclusions are calculated first, inclusions later. [default:"
+        f" {DEFAULT_EXCLUDES}]"
+    ),
+    show_default=False,
+)
+@click.option(
+    "--extend-exclude",
+    type=str,
+    callback=validate_regex,
+    help=(
+        "Like --exclude, but adds additional files and directories on top of the"
+        " excluded ones. (Useful if you simply want to add to the default)"
+    ),
+)
+@click.option(
+    "--force-exclude",
+    type=str,
+    callback=validate_regex,
+    help=(
+        "Like --exclude, but files and directories matching this regex will be "
+        "excluded even when they are passed explicitly as arguments."
+    ),
+)
+@click.option(
+    "--stdin-filename",
+    type=str,
+    help=(
+        "The name of the file when passing it through stdin. Useful to make "
+        "sure Black will respect --force-exclude option on some "
+        "editors that rely on using stdin."
+    ),
+)
+@click.option(
+    "-W",
+    "--workers",
+    type=click.IntRange(min=1),
+    default=DEFAULT_WORKERS,
+    show_default=True,
+    help="Number of parallel workers",
+)
+@click.option(
+    "-q",
+    "--quiet",
+    is_flag=True,
+    help=(
+        "Don't emit non-error messages to stderr. Errors are still emitted; silence"
+        " those with 2>/dev/null."
+    ),
+)
+@click.option(
+    "-v",
+    "--verbose",
+    is_flag=True,
+    help=(
+        "Also emit messages to stderr about files that were not changed or were ignored"
+        " due to exclusion patterns."
+    ),
+)
+@click.version_option(version=__version__)
+@click.argument(
+    "src",
+    nargs=-1,
+    type=click.Path(
+        exists=True, file_okay=True, dir_okay=True, readable=True, allow_dash=True
+    ),
+    is_eager=True,
+    metavar="SRC ...",
+)
+@click.option(
+    "--config",
+    type=click.Path(
+        exists=True,
+        file_okay=True,
+        dir_okay=False,
+        readable=True,
+        allow_dash=False,
+        path_type=str,
+    ),
+    is_eager=True,
+    callback=read_pyproject_toml,
+    help="Read configuration from FILE path.",
+)
+@click.pass_context
+def main(
+    ctx: click.Context,
+    code: Optional[str],
+    line_length: int,
+    target_version: List[TargetVersion],
+    check: bool,
+    diff: bool,
+    color: bool,
+    fast: bool,
+    pyi: bool,
+    ipynb: bool,
+    skip_string_normalization: bool,
+    skip_magic_trailing_comma: bool,
+    experimental_string_processing: bool,
+    quiet: bool,
+    verbose: bool,
+    required_version: str,
+    include: Pattern,
+    exclude: Optional[Pattern],
+    extend_exclude: Optional[Pattern],
+    force_exclude: Optional[Pattern],
+    stdin_filename: Optional[str],
+    workers: int,
+    src: Tuple[str, ...],
+    config: Optional[str],
+) -> None:
+    """The uncompromising code formatter."""
+    if config and verbose:
+        out(f"Using configuration from {config}.", bold=False, fg="blue")
+
+    error_msg = "Oh no! 💥 💔 💥"
+    if required_version and required_version != __version__:
+        err(
+            f"{error_msg} The required version `{required_version}` does not match"
+            f" the running version `{__version__}`!"
+        )
+        ctx.exit(1)
+    if ipynb and pyi:
+        err("Cannot pass both `pyi` and `ipynb` flags!")
+        ctx.exit(1)
+
+    write_back = WriteBack.from_configuration(check=check, diff=diff, color=color)
+    if target_version:
+        versions = set(target_version)
+    else:
+        # We'll autodetect later.
+        versions = set()
+    mode = Mode(
+        target_versions=versions,
+        line_length=line_length,
+        is_pyi=pyi,
+        is_ipynb=ipynb,
+        string_normalization=not skip_string_normalization,
+        magic_trailing_comma=not skip_magic_trailing_comma,
+        experimental_string_processing=experimental_string_processing,
+    )
+
+    if code is not None:
+        # Run in quiet mode by default with -c; the extra output isn't useful.
+        # You can still pass -v to get verbose output.
+        quiet = True
+
+    report = Report(check=check, diff=diff, quiet=quiet, verbose=verbose)
+
+    if code is not None:
+        reformat_code(
+            content=code, fast=fast, write_back=write_back, mode=mode, report=report
+        )
+    else:
+        try:
+            sources = get_sources(
+                ctx=ctx,
+                src=src,
+                quiet=quiet,
+                verbose=verbose,
+                include=include,
+                exclude=exclude,
+                extend_exclude=extend_exclude,
+                force_exclude=force_exclude,
+                report=report,
+                stdin_filename=stdin_filename,
+            )
+        except GitWildMatchPatternError:
+            ctx.exit(1)
+
+        path_empty(
+            sources,
+            "No Python files are present to be formatted. Nothing to do 😴",
+            quiet,
+            verbose,
+            ctx,
+        )
+
+        if len(sources) == 1:
+            reformat_one(
+                src=sources.pop(),
+                fast=fast,
+                write_back=write_back,
+                mode=mode,
+                report=report,
+            )
+        else:
+            reformat_many(
+                sources=sources,
+                fast=fast,
+                write_back=write_back,
+                mode=mode,
+                report=report,
+                workers=workers,
+            )
+
+    if verbose or not quiet:
+        out(error_msg if report.return_code else "All done! ✨ 🍰 ✨")
+        if code is None:
+            click.echo(str(report), err=True)
+    ctx.exit(report.return_code)
+
+
+def get_sources(
+    *,
+    ctx: click.Context,
+    src: Tuple[str, ...],
+    quiet: bool,
+    verbose: bool,
+    include: Pattern[str],
+    exclude: Optional[Pattern[str]],
+    extend_exclude: Optional[Pattern[str]],
+    force_exclude: Optional[Pattern[str]],
+    report: "Report",
+    stdin_filename: Optional[str],
+) -> Set[Path]:
+    """Compute the set of files to be formatted."""
+
+    root = find_project_root(src)
+    sources: Set[Path] = set()
+    path_empty(src, "No Path provided. Nothing to do 😴", quiet, verbose, ctx)
+
+    if exclude is None:
+        exclude = re_compile_maybe_verbose(DEFAULT_EXCLUDES)
+        gitignore = get_gitignore(root)
+    else:
+        gitignore = None
+
+    for s in src:
+        if s == "-" and stdin_filename:
+            p = Path(stdin_filename)
+            is_stdin = True
+        else:
+            p = Path(s)
+            is_stdin = False
+
+        if is_stdin or p.is_file():
+            normalized_path = normalize_path_maybe_ignore(p, root, report)
+            if normalized_path is None:
+                continue
+
+            normalized_path = "/" + normalized_path
+            # Hard-exclude any files that matches the `--force-exclude` regex.
+            if force_exclude:
+                force_exclude_match = force_exclude.search(normalized_path)
+            else:
+                force_exclude_match = None
+            if force_exclude_match and force_exclude_match.group(0):
+                report.path_ignored(p, "matches the --force-exclude regular expression")
+                continue
+
+            if is_stdin:
+                p = Path(f"{STDIN_PLACEHOLDER}{str(p)}")
+
+            if p.suffix == ".ipynb" and not jupyter_dependencies_are_installed(
+                verbose=verbose, quiet=quiet
+            ):
+                continue
+
+            sources.add(p)
+        elif p.is_dir():
+            sources.update(
+                gen_python_files(
+                    p.iterdir(),
+                    root,
+                    include,
+                    exclude,
+                    extend_exclude,
+                    force_exclude,
+                    report,
+                    gitignore,
+                    verbose=verbose,
+                    quiet=quiet,
+                )
+            )
+        elif s == "-":
+            sources.add(p)
+        else:
+            err(f"invalid path: {s}")
+    return sources
+
+
+def path_empty(
+    src: Sized, msg: str, quiet: bool, verbose: bool, ctx: click.Context
+) -> None:
+    """
+    Exit if there is no `src` provided for formatting
+    """
+    if not src:
+        if verbose or not quiet:
+            out(msg)
+        ctx.exit(0)
+
+
+def reformat_code(
+    content: str, fast: bool, write_back: WriteBack, mode: Mode, report: Report
+) -> None:
+    """
+    Reformat and print out `content` without spawning child processes.
+    Similar to `reformat_one`, but for string content.
+
+    `fast`, `write_back`, and `mode` options are passed to
+    :func:`format_file_in_place` or :func:`format_stdin_to_stdout`.
+    """
+    path = Path("<string>")
+    try:
+        changed = Changed.NO
+        if format_stdin_to_stdout(
+            content=content, fast=fast, write_back=write_back, mode=mode
+        ):
+            changed = Changed.YES
+        report.done(path, changed)
+    except Exception as exc:
+        if report.verbose:
+            traceback.print_exc()
+        report.failed(path, str(exc))
+
+
+def reformat_one(
+    src: Path, fast: bool, write_back: WriteBack, mode: Mode, report: "Report"
+) -> None:
+    """Reformat a single file under `src` without spawning child processes.
+
+    `fast`, `write_back`, and `mode` options are passed to
+    :func:`format_file_in_place` or :func:`format_stdin_to_stdout`.
+    """
+    try:
+        changed = Changed.NO
+
+        if str(src) == "-":
+            is_stdin = True
+        elif str(src).startswith(STDIN_PLACEHOLDER):
+            is_stdin = True
+            # Use the original name again in case we want to print something
+            # to the user
+            src = Path(str(src)[len(STDIN_PLACEHOLDER) :])
+        else:
+            is_stdin = False
+
+        if is_stdin:
+            if src.suffix == ".pyi":
+                mode = replace(mode, is_pyi=True)
+            elif src.suffix == ".ipynb":
+                mode = replace(mode, is_ipynb=True)
+            if format_stdin_to_stdout(fast=fast, write_back=write_back, mode=mode):
+                changed = Changed.YES
+        else:
+            cache: Cache = {}
+            if write_back not in (WriteBack.DIFF, WriteBack.COLOR_DIFF):
+                cache = read_cache(mode)
+                res_src = src.resolve()
+                res_src_s = str(res_src)
+                if res_src_s in cache and cache[res_src_s] == get_cache_info(res_src):
+                    changed = Changed.CACHED
+            if changed is not Changed.CACHED and format_file_in_place(
+                src, fast=fast, write_back=write_back, mode=mode
+            ):
+                changed = Changed.YES
+            if (write_back is WriteBack.YES and changed is not Changed.CACHED) or (
+                write_back is WriteBack.CHECK and changed is Changed.NO
+            ):
+                write_cache(cache, [src], mode)
+        report.done(src, changed)
+    except Exception as exc:
+        if report.verbose:
+            traceback.print_exc()
+        report.failed(src, str(exc))
+
+
+def reformat_many(
+    sources: Set[Path],
+    fast: bool,
+    write_back: WriteBack,
+    mode: Mode,
+    report: "Report",
+    workers: Optional[int],
+) -> None:
+    """Reformat multiple files using a ProcessPoolExecutor."""
+    executor: Executor
+    loop = asyncio.get_event_loop()
+    worker_count = workers if workers is not None else DEFAULT_WORKERS
+    if sys.platform == "win32":
+        # Work around https://bugs.python.org/issue26903
+        worker_count = min(worker_count, 60)
+    try:
+        executor = ProcessPoolExecutor(max_workers=worker_count)
+    except (ImportError, OSError):
+        # we arrive here if the underlying system does not support multi-processing
+        # like in AWS Lambda or Termux, in which case we gracefully fallback to
+        # a ThreadPoolExecutor with just a single worker (more workers would not do us
+        # any good due to the Global Interpreter Lock)
+        executor = ThreadPoolExecutor(max_workers=1)
+
+    try:
+        loop.run_until_complete(
+            schedule_formatting(
+                sources=sources,
+                fast=fast,
+                write_back=write_back,
+                mode=mode,
+                report=report,
+                loop=loop,
+                executor=executor,
+            )
+        )
+    finally:
+        shutdown(loop)
+        if executor is not None:
+            executor.shutdown()
+
+
+async def schedule_formatting(
+    sources: Set[Path],
+    fast: bool,
+    write_back: WriteBack,
+    mode: Mode,
+    report: "Report",
+    loop: asyncio.AbstractEventLoop,
+    executor: Executor,
+) -> None:
+    """Run formatting of `sources` in parallel using the provided `executor`.
+
+    (Use ProcessPoolExecutors for actual parallelism.)
+
+    `write_back`, `fast`, and `mode` options are passed to
+    :func:`format_file_in_place`.
+    """
+    cache: Cache = {}
+    if write_back not in (WriteBack.DIFF, WriteBack.COLOR_DIFF):
+        cache = read_cache(mode)
+        sources, cached = filter_cached(cache, sources)
+        for src in sorted(cached):
+            report.done(src, Changed.CACHED)
+    if not sources:
+        return
+
+    cancelled = []
+    sources_to_cache = []
+    lock = None
+    if write_back in (WriteBack.DIFF, WriteBack.COLOR_DIFF):
+        # For diff output, we need locks to ensure we don't interleave output
+        # from different processes.
+        manager = Manager()
+        lock = manager.Lock()
+    tasks = {
+        asyncio.ensure_future(
+            loop.run_in_executor(
+                executor, format_file_in_place, src, fast, mode, write_back, lock
+            )
+        ): src
+        for src in sorted(sources)
+    }
+    pending = tasks.keys()
+    try:
+        loop.add_signal_handler(signal.SIGINT, cancel, pending)
+        loop.add_signal_handler(signal.SIGTERM, cancel, pending)
+    except NotImplementedError:
+        # There are no good alternatives for these on Windows.
+        pass
+    while pending:
+        done, _ = await asyncio.wait(pending, return_when=asyncio.FIRST_COMPLETED)
+        for task in done:
+            src = tasks.pop(task)
+            if task.cancelled():
+                cancelled.append(task)
+            elif task.exception():
+                report.failed(src, str(task.exception()))
+            else:
+                changed = Changed.YES if task.result() else Changed.NO
+                # If the file was written back or was successfully checked as
+                # well-formatted, store this information in the cache.
+                if write_back is WriteBack.YES or (
+                    write_back is WriteBack.CHECK and changed is Changed.NO
+                ):
+                    sources_to_cache.append(src)
+                report.done(src, changed)
+    if cancelled:
+        await asyncio.gather(*cancelled, loop=loop, return_exceptions=True)
+    if sources_to_cache:
+        write_cache(cache, sources_to_cache, mode)
+
+
+def format_file_in_place(
+    src: Path,
+    fast: bool,
+    mode: Mode,
+    write_back: WriteBack = WriteBack.NO,
+    lock: Any = None,  # multiprocessing.Manager().Lock() is some crazy proxy
+) -> bool:
+    """Format file under `src` path. Return True if changed.
+
+    If `write_back` is DIFF, write a diff to stdout. If it is YES, write reformatted
+    code to the file.
+    `mode` and `fast` options are passed to :func:`format_file_contents`.
+    """
+    if src.suffix == ".pyi":
+        mode = replace(mode, is_pyi=True)
+    elif src.suffix == ".ipynb":
+        mode = replace(mode, is_ipynb=True)
+
+    then = datetime.utcfromtimestamp(src.stat().st_mtime)
+    with open(src, "rb") as buf:
+        src_contents, encoding, newline = decode_bytes(buf.read())
+    try:
+        dst_contents = format_file_contents(src_contents, fast=fast, mode=mode)
+    except NothingChanged:
+        return False
+    except JSONDecodeError:
+        raise ValueError(
+            f"File '{src}' cannot be parsed as valid Jupyter notebook."
+        ) from None
+
+    if write_back == WriteBack.YES:
+        with open(src, "w", encoding=encoding, newline=newline) as f:
+            f.write(dst_contents)
+    elif write_back in (WriteBack.DIFF, WriteBack.COLOR_DIFF):
+        now = datetime.utcnow()
+        src_name = f"{src}\t{then} +0000"
+        dst_name = f"{src}\t{now} +0000"
+        if mode.is_ipynb:
+            diff_contents = ipynb_diff(src_contents, dst_contents, src_name, dst_name)
+        else:
+            diff_contents = diff(src_contents, dst_contents, src_name, dst_name)
+
+        if write_back == WriteBack.COLOR_DIFF:
+            diff_contents = color_diff(diff_contents)
+
+        with lock or nullcontext():
+            f = io.TextIOWrapper(
+                sys.stdout.buffer,
+                encoding=encoding,
+                newline=newline,
+                write_through=True,
+            )
+            f = wrap_stream_for_windows(f)
+            f.write(diff_contents)
+            f.detach()
+
+    return True
+
+
+def format_stdin_to_stdout(
+    fast: bool,
+    *,
+    content: Optional[str] = None,
+    write_back: WriteBack = WriteBack.NO,
+    mode: Mode,
+) -> bool:
+    """Format file on stdin. Return True if changed.
+
+    If content is None, it's read from sys.stdin.
+
+    If `write_back` is YES, write reformatted code back to stdout. If it is DIFF,
+    write a diff to stdout. The `mode` argument is passed to
+    :func:`format_file_contents`.
+    """
+    then = datetime.utcnow()
+
+    if content is None:
+        src, encoding, newline = decode_bytes(sys.stdin.buffer.read())
+    else:
+        src, encoding, newline = content, "utf-8", ""
+
+    dst = src
+    try:
+        dst = format_file_contents(src, fast=fast, mode=mode)
+        return True
+
+    except NothingChanged:
+        return False
+
+    finally:
+        f = io.TextIOWrapper(
+            sys.stdout.buffer, encoding=encoding, newline=newline, write_through=True
+        )
+        if write_back == WriteBack.YES:
+            # Make sure there's a newline after the content
+            if dst and dst[-1] != "\n":
+                dst += "\n"
+            f.write(dst)
+        elif write_back in (WriteBack.DIFF, WriteBack.COLOR_DIFF):
+            now = datetime.utcnow()
+            src_name = f"STDIN\t{then} +0000"
+            dst_name = f"STDOUT\t{now} +0000"
+            d = diff(src, dst, src_name, dst_name)
+            if write_back == WriteBack.COLOR_DIFF:
+                d = color_diff(d)
+                f = wrap_stream_for_windows(f)
+            f.write(d)
+        f.detach()
+
+
+def check_stability_and_equivalence(
+    src_contents: str, dst_contents: str, *, mode: Mode
+) -> None:
+    """Perform stability and equivalence checks.
+
+    Raise AssertionError if source and destination contents are not
+    equivalent, or if a second pass of the formatter would format the
+    content differently.
+    """
+    assert_equivalent(src_contents, dst_contents)
+
+    # Forced second pass to work around optional trailing commas (becoming
+    # forced trailing commas on pass 2) interacting differently with optional
+    # parentheses.  Admittedly ugly.
+    dst_contents_pass2 = format_str(dst_contents, mode=mode)
+    if dst_contents != dst_contents_pass2:
+        dst_contents = dst_contents_pass2
+        assert_equivalent(src_contents, dst_contents, pass_num=2)
+        assert_stable(src_contents, dst_contents, mode=mode)
+    # Note: no need to explicitly call `assert_stable` if `dst_contents` was
+    # the same as `dst_contents_pass2`.
+
+
+def format_file_contents(src_contents: str, *, fast: bool, mode: Mode) -> FileContent:
+    """Reformat contents of a file and return new contents.
+
+    If `fast` is False, additionally confirm that the reformatted code is
+    valid by calling :func:`assert_equivalent` and :func:`assert_stable` on it.
+    `mode` is passed to :func:`format_str`.
+    """
+    if not src_contents.strip():
+        raise NothingChanged
+
+    if mode.is_ipynb:
+        dst_contents = format_ipynb_string(src_contents, fast=fast, mode=mode)
+    else:
+        dst_contents = format_str(src_contents, mode=mode)
+    if src_contents == dst_contents:
+        raise NothingChanged
+
+    if not fast and not mode.is_ipynb:
+        # Jupyter notebooks will already have been checked above.
+        check_stability_and_equivalence(src_contents, dst_contents, mode=mode)
+    return dst_contents
+
+
+def validate_cell(src: str) -> None:
+    """Check that cell does not already contain TransformerManager transformations.
+
+    If a cell contains ``!ls``, then it'll be transformed to
+    ``get_ipython().system('ls')``. However, if the cell originally contained
+    ``get_ipython().system('ls')``, then it would get transformed in the same way:
+
+        >>> TransformerManager().transform_cell("get_ipython().system('ls')")
+        "get_ipython().system('ls')\n"
+        >>> TransformerManager().transform_cell("!ls")
+        "get_ipython().system('ls')\n"
+
+    Due to the impossibility of safely roundtripping in such situations, cells
+    containing transformed magics will be ignored.
+    """
+    if any(transformed_magic in src for transformed_magic in TRANSFORMED_MAGICS):
+        raise NothingChanged
+
+
+def format_cell(src: str, *, fast: bool, mode: Mode) -> str:
+    """Format code in given cell of Jupyter notebook.
+
+    General idea is:
+
+      - if cell has trailing semicolon, remove it;
+      - if cell has IPython magics, mask them;
+      - format cell;
+      - reinstate IPython magics;
+      - reinstate trailing semicolon (if originally present);
+      - strip trailing newlines.
+
+    Cells with syntax errors will not be processed, as they
+    could potentially be automagics or multi-line magics, which
+    are currently not supported.
+    """
+    validate_cell(src)
+    src_without_trailing_semicolon, has_trailing_semicolon = remove_trailing_semicolon(
+        src
+    )
+    try:
+        masked_src, replacements = mask_cell(src_without_trailing_semicolon)
+    except SyntaxError:
+        raise NothingChanged from None
+    masked_dst = format_str(masked_src, mode=mode)
+    if not fast:
+        check_stability_and_equivalence(masked_src, masked_dst, mode=mode)
+    dst_without_trailing_semicolon = unmask_cell(masked_dst, replacements)
+    dst = put_trailing_semicolon_back(
+        dst_without_trailing_semicolon, has_trailing_semicolon
+    )
+    dst = dst.rstrip("\n")
+    if dst == src:
+        raise NothingChanged from None
+    return dst
+
+
+def validate_metadata(nb: MutableMapping[str, Any]) -> None:
+    """If notebook is marked as non-Python, don't format it.
+
+    All notebook metadata fields are optional, see
+    https://nbformat.readthedocs.io/en/latest/format_description.html. So
+    if a notebook has empty metadata, we will try to parse it anyway.
+    """
+    language = nb.get("metadata", {}).get("language_info", {}).get("name", None)
+    if language is not None and language != "python":
+        raise NothingChanged from None
+
+
+def format_ipynb_string(src_contents: str, *, fast: bool, mode: Mode) -> FileContent:
+    """Format Jupyter notebook.
+
+    Operate cell-by-cell, only on code cells, only for Python notebooks.
+    If the ``.ipynb`` originally had a trailing newline, it'll be preserved.
+    """
+    trailing_newline = src_contents[-1] == "\n"
+    modified = False
+    nb = json.loads(src_contents)
+    validate_metadata(nb)
+    for cell in nb["cells"]:
+        if cell.get("cell_type", None) == "code":
+            try:
+                src = "".join(cell["source"])
+                dst = format_cell(src, fast=fast, mode=mode)
+            except NothingChanged:
+                pass
+            else:
+                cell["source"] = dst.splitlines(keepends=True)
+                modified = True
+    if modified:
+        dst_contents = json.dumps(nb, indent=1, ensure_ascii=False)
+        if trailing_newline:
+            dst_contents = dst_contents + "\n"
+        return dst_contents
+    else:
+        raise NothingChanged
+
+
+def format_str(src_contents: str, *, mode: Mode) -> FileContent:
+    """Reformat a string and return new contents.
+
+    `mode` determines formatting options, such as how many characters per line are
+    allowed.  Example:
+
+    >>> import black
+    >>> print(black.format_str("def f(arg:str='')->None:...", mode=black.Mode()))
+    def f(arg: str = "") -> None:
+        ...
+
+    A more complex example:
+
+    >>> print(
+    ...   black.format_str(
+    ...     "def f(arg:str='')->None: hey",
+    ...     mode=black.Mode(
+    ...       target_versions={black.TargetVersion.PY36},
+    ...       line_length=10,
+    ...       string_normalization=False,
+    ...       is_pyi=False,
+    ...     ),
+    ...   ),
+    ... )
+    def f(
+        arg: str = '',
+    ) -> None:
+        hey
+
+    """
+    src_node = lib2to3_parse(src_contents.lstrip(), mode.target_versions)
+    dst_contents = []
+    future_imports = get_future_imports(src_node)
+    if mode.target_versions:
+        versions = mode.target_versions
+    else:
+        versions = detect_target_versions(src_node)
+    normalize_fmt_off(src_node)
+    lines = LineGenerator(
+        mode=mode,
+        remove_u_prefix="unicode_literals" in future_imports
+        or supports_feature(versions, Feature.UNICODE_LITERALS),
+    )
+    elt = EmptyLineTracker(is_pyi=mode.is_pyi)
+    empty_line = Line(mode=mode)
+    after = 0
+    split_line_features = {
+        feature
+        for feature in {Feature.TRAILING_COMMA_IN_CALL, Feature.TRAILING_COMMA_IN_DEF}
+        if supports_feature(versions, feature)
+    }
+    for current_line in lines.visit(src_node):
+        dst_contents.append(str(empty_line) * after)
+        before, after = elt.maybe_empty_lines(current_line)
+        dst_contents.append(str(empty_line) * before)
+        for line in transform_line(
+            current_line, mode=mode, features=split_line_features
+        ):
+            dst_contents.append(str(line))
+    return "".join(dst_contents)
+
+
+def decode_bytes(src: bytes) -> Tuple[FileContent, Encoding, NewLine]:
+    """Return a tuple of (decoded_contents, encoding, newline).
+
+    `newline` is either CRLF or LF but `decoded_contents` is decoded with
+    universal newlines (i.e. only contains LF).
+    """
+    srcbuf = io.BytesIO(src)
+    encoding, lines = tokenize.detect_encoding(srcbuf.readline)
+    if not lines:
+        return "", encoding, "\n"
+
+    newline = "\r\n" if b"\r\n" == lines[0][-2:] else "\n"
+    srcbuf.seek(0)
+    with io.TextIOWrapper(srcbuf, encoding) as tiow:
+        return tiow.read(), encoding, newline
+
+
+def get_features_used(node: Node) -> Set[Feature]:
+    """Return a set of (relatively) new Python features used in this file.
+
+    Currently looking for:
+    - f-strings;
+    - underscores in numeric literals;
+    - trailing commas after * or ** in function signatures and calls;
+    - positional only arguments in function signatures and lambdas;
+    - assignment expression;
+    - relaxed decorator syntax;
+    """
+    features: Set[Feature] = set()
+    for n in node.pre_order():
+        if n.type == token.STRING:
+            value_head = n.value[:2]  # type: ignore
+            if value_head in {'f"', 'F"', "f'", "F'", "rf", "fr", "RF", "FR"}:
+                features.add(Feature.F_STRINGS)
+
+        elif n.type == token.NUMBER:
+            if "_" in n.value:  # type: ignore
+                features.add(Feature.NUMERIC_UNDERSCORES)
+
+        elif n.type == token.SLASH:
+            if n.parent and n.parent.type in {
+                syms.typedargslist,
+                syms.arglist,
+                syms.varargslist,
+            }:
+                features.add(Feature.POS_ONLY_ARGUMENTS)
+
+        elif n.type == token.COLONEQUAL:
+            features.add(Feature.ASSIGNMENT_EXPRESSIONS)
+
+        elif n.type == syms.decorator:
+            if len(n.children) > 1 and not is_simple_decorator_expression(
+                n.children[1]
+            ):
+                features.add(Feature.RELAXED_DECORATORS)
+
+        elif (
+            n.type in {syms.typedargslist, syms.arglist}
+            and n.children
+            and n.children[-1].type == token.COMMA
+        ):
+            if n.type == syms.typedargslist:
+                feature = Feature.TRAILING_COMMA_IN_DEF
+            else:
+                feature = Feature.TRAILING_COMMA_IN_CALL
+
+            for ch in n.children:
+                if ch.type in STARS:
+                    features.add(feature)
+
+                if ch.type == syms.argument:
+                    for argch in ch.children:
+                        if argch.type in STARS:
+                            features.add(feature)
+
+    return features
+
+
+def detect_target_versions(node: Node) -> Set[TargetVersion]:
+    """Detect the version to target based on the nodes used."""
+    features = get_features_used(node)
+    return {
+        version for version in TargetVersion if features <= VERSION_TO_FEATURES[version]
+    }
+
+
+def get_future_imports(node: Node) -> Set[str]:
+    """Return a set of __future__ imports in the file."""
+    imports: Set[str] = set()
+
+    def get_imports_from_children(children: List[LN]) -> Generator[str, None, None]:
+        for child in children:
+            if isinstance(child, Leaf):
+                if child.type == token.NAME:
+                    yield child.value
+
+            elif child.type == syms.import_as_name:
+                orig_name = child.children[0]
+                assert isinstance(orig_name, Leaf), "Invalid syntax parsing imports"
+                assert orig_name.type == token.NAME, "Invalid syntax parsing imports"
+                yield orig_name.value
+
+            elif child.type == syms.import_as_names:
+                yield from get_imports_from_children(child.children)
+
+            else:
+                raise AssertionError("Invalid syntax parsing imports")
+
+    for child in node.children:
+        if child.type != syms.simple_stmt:
+            break
+
+        first_child = child.children[0]
+        if isinstance(first_child, Leaf):
+            # Continue looking if we see a docstring; otherwise stop.
+            if (
+                len(child.children) == 2
+                and first_child.type == token.STRING
+                and child.children[1].type == token.NEWLINE
+            ):
+                continue
+
+            break
+
+        elif first_child.type == syms.import_from:
+            module_name = first_child.children[1]
+            if not isinstance(module_name, Leaf) or module_name.value != "__future__":
+                break
+
+            imports |= set(get_imports_from_children(first_child.children[3:]))
+        else:
+            break
+
+    return imports
+
+
+def assert_equivalent(src: str, dst: str, *, pass_num: int = 1) -> None:
+    """Raise AssertionError if `src` and `dst` aren't equivalent."""
+    try:
+        src_ast = parse_ast(src)
+    except Exception as exc:
+        raise AssertionError(
+            "cannot use --safe with this file; failed to parse source file."
+        ) from exc
+
+    try:
+        dst_ast = parse_ast(dst)
+    except Exception as exc:
+        log = dump_to_file("".join(traceback.format_tb(exc.__traceback__)), dst)
+        raise AssertionError(
+            f"INTERNAL ERROR: Black produced invalid code on pass {pass_num}: {exc}. "
+            "Please report a bug on https://github.com/psf/black/issues.  "
+            f"This invalid output might be helpful: {log}"
+        ) from None
+
+    src_ast_str = "\n".join(stringify_ast(src_ast))
+    dst_ast_str = "\n".join(stringify_ast(dst_ast))
+    if src_ast_str != dst_ast_str:
+        log = dump_to_file(diff(src_ast_str, dst_ast_str, "src", "dst"))
+        raise AssertionError(
+            "INTERNAL ERROR: Black produced code that is not equivalent to the"
+            f" source on pass {pass_num}.  Please report a bug on "
+            f"https://github.com/psf/black/issues.  This diff might be helpful: {log}"
+        ) from None
+
+
+def assert_stable(src: str, dst: str, mode: Mode) -> None:
+    """Raise AssertionError if `dst` reformats differently the second time."""
+    newdst = format_str(dst, mode=mode)
+    if dst != newdst:
+        log = dump_to_file(
+            str(mode),
+            diff(src, dst, "source", "first pass"),
+            diff(dst, newdst, "first pass", "second pass"),
+        )
+        raise AssertionError(
+            "INTERNAL ERROR: Black produced different code on the second pass of the"
+            " formatter.  Please report a bug on https://github.com/psf/black/issues."
+            f"  This diff might be helpful: {log}"
+        ) from None
+
+
+@contextmanager
+def nullcontext() -> Iterator[None]:
+    """Return an empty context manager.
+
+    To be used like `nullcontext` in Python 3.7.
+    """
+    yield
+
+
+def patch_click() -> None:
+    """Make Click not crash on Python 3.6 with LANG=C.
+
+    On certain misconfigured environments, Python 3 selects the ASCII encoding as the
+    default which restricts paths that it can access during the lifetime of the
+    application.  Click refuses to work in this scenario by raising a RuntimeError.
+
+    In case of Black the likelihood that non-ASCII characters are going to be used in
+    file paths is minimal since it's Python source code.  Moreover, this crash was
+    spurious on Python 3.7 thanks to PEP 538 and PEP 540.
+    """
+    try:
+        from click import core
+        from click import _unicodefun  # type: ignore
+    except ModuleNotFoundError:
+        return
+
+    for module in (core, _unicodefun):
+        if hasattr(module, "_verify_python3_env"):
+            module._verify_python3_env = lambda: None  # type: ignore
+        if hasattr(module, "_verify_python_env"):
+            module._verify_python_env = lambda: None  # type: ignore
+
+
+def patched_main() -> None:
+    maybe_install_uvloop()
+    freeze_support()
+    patch_click()
+    main()
+
+
+if __name__ == "__main__":
+    patched_main()
diff --git a/.vim/bundle/black/src/black/__main__.py b/.vim/bundle/black/src/black/__main__.py
new file mode 100644 (file)
index 0000000..19b810b
--- /dev/null
@@ -0,0 +1,3 @@
+from black import patched_main
+
+patched_main()
diff --git a/.vim/bundle/black/src/black/brackets.py b/.vim/bundle/black/src/black/brackets.py
new file mode 100644 (file)
index 0000000..bb865a0
--- /dev/null
@@ -0,0 +1,334 @@
+"""Builds on top of nodes.py to track brackets."""
+
+from dataclasses import dataclass, field
+import sys
+from typing import Dict, Iterable, List, Optional, Tuple, Union
+
+if sys.version_info < (3, 8):
+    from typing_extensions import Final
+else:
+    from typing import Final
+
+from blib2to3.pytree import Leaf, Node
+from blib2to3.pgen2 import token
+
+from black.nodes import syms, is_vararg, VARARGS_PARENTS, UNPACKING_PARENTS
+from black.nodes import BRACKET, OPENING_BRACKETS, CLOSING_BRACKETS
+from black.nodes import MATH_OPERATORS, COMPARATORS, LOGIC_OPERATORS
+
+# types
+LN = Union[Leaf, Node]
+Depth = int
+LeafID = int
+NodeType = int
+Priority = int
+
+
+COMPREHENSION_PRIORITY: Final = 20
+COMMA_PRIORITY: Final = 18
+TERNARY_PRIORITY: Final = 16
+LOGIC_PRIORITY: Final = 14
+STRING_PRIORITY: Final = 12
+COMPARATOR_PRIORITY: Final = 10
+MATH_PRIORITIES: Final = {
+    token.VBAR: 9,
+    token.CIRCUMFLEX: 8,
+    token.AMPER: 7,
+    token.LEFTSHIFT: 6,
+    token.RIGHTSHIFT: 6,
+    token.PLUS: 5,
+    token.MINUS: 5,
+    token.STAR: 4,
+    token.SLASH: 4,
+    token.DOUBLESLASH: 4,
+    token.PERCENT: 4,
+    token.AT: 4,
+    token.TILDE: 3,
+    token.DOUBLESTAR: 2,
+}
+DOT_PRIORITY: Final = 1
+
+
+class BracketMatchError(KeyError):
+    """Raised when an opening bracket is unable to be matched to a closing bracket."""
+
+
+@dataclass
+class BracketTracker:
+    """Keeps track of brackets on a line."""
+
+    depth: int = 0
+    bracket_match: Dict[Tuple[Depth, NodeType], Leaf] = field(default_factory=dict)
+    delimiters: Dict[LeafID, Priority] = field(default_factory=dict)
+    previous: Optional[Leaf] = None
+    _for_loop_depths: List[int] = field(default_factory=list)
+    _lambda_argument_depths: List[int] = field(default_factory=list)
+    invisible: List[Leaf] = field(default_factory=list)
+
+    def mark(self, leaf: Leaf) -> None:
+        """Mark `leaf` with bracket-related metadata. Keep track of delimiters.
+
+        All leaves receive an int `bracket_depth` field that stores how deep
+        within brackets a given leaf is. 0 means there are no enclosing brackets
+        that started on this line.
+
+        If a leaf is itself a closing bracket, it receives an `opening_bracket`
+        field that it forms a pair with. This is a one-directional link to
+        avoid reference cycles.
+
+        If a leaf is a delimiter (a token on which Black can split the line if
+        needed) and it's on depth 0, its `id()` is stored in the tracker's
+        `delimiters` field.
+        """
+        if leaf.type == token.COMMENT:
+            return
+
+        self.maybe_decrement_after_for_loop_variable(leaf)
+        self.maybe_decrement_after_lambda_arguments(leaf)
+        if leaf.type in CLOSING_BRACKETS:
+            self.depth -= 1
+            try:
+                opening_bracket = self.bracket_match.pop((self.depth, leaf.type))
+            except KeyError as e:
+                raise BracketMatchError(
+                    "Unable to match a closing bracket to the following opening"
+                    f" bracket: {leaf}"
+                ) from e
+            leaf.opening_bracket = opening_bracket
+            if not leaf.value:
+                self.invisible.append(leaf)
+        leaf.bracket_depth = self.depth
+        if self.depth == 0:
+            delim = is_split_before_delimiter(leaf, self.previous)
+            if delim and self.previous is not None:
+                self.delimiters[id(self.previous)] = delim
+            else:
+                delim = is_split_after_delimiter(leaf, self.previous)
+                if delim:
+                    self.delimiters[id(leaf)] = delim
+        if leaf.type in OPENING_BRACKETS:
+            self.bracket_match[self.depth, BRACKET[leaf.type]] = leaf
+            self.depth += 1
+            if not leaf.value:
+                self.invisible.append(leaf)
+        self.previous = leaf
+        self.maybe_increment_lambda_arguments(leaf)
+        self.maybe_increment_for_loop_variable(leaf)
+
+    def any_open_brackets(self) -> bool:
+        """Return True if there is an yet unmatched open bracket on the line."""
+        return bool(self.bracket_match)
+
+    def max_delimiter_priority(self, exclude: Iterable[LeafID] = ()) -> Priority:
+        """Return the highest priority of a delimiter found on the line.
+
+        Values are consistent with what `is_split_*_delimiter()` return.
+        Raises ValueError on no delimiters.
+        """
+        return max(v for k, v in self.delimiters.items() if k not in exclude)
+
+    def delimiter_count_with_priority(self, priority: Priority = 0) -> int:
+        """Return the number of delimiters with the given `priority`.
+
+        If no `priority` is passed, defaults to max priority on the line.
+        """
+        if not self.delimiters:
+            return 0
+
+        priority = priority or self.max_delimiter_priority()
+        return sum(1 for p in self.delimiters.values() if p == priority)
+
+    def maybe_increment_for_loop_variable(self, leaf: Leaf) -> bool:
+        """In a for loop, or comprehension, the variables are often unpacks.
+
+        To avoid splitting on the comma in this situation, increase the depth of
+        tokens between `for` and `in`.
+        """
+        if leaf.type == token.NAME and leaf.value == "for":
+            self.depth += 1
+            self._for_loop_depths.append(self.depth)
+            return True
+
+        return False
+
+    def maybe_decrement_after_for_loop_variable(self, leaf: Leaf) -> bool:
+        """See `maybe_increment_for_loop_variable` above for explanation."""
+        if (
+            self._for_loop_depths
+            and self._for_loop_depths[-1] == self.depth
+            and leaf.type == token.NAME
+            and leaf.value == "in"
+        ):
+            self.depth -= 1
+            self._for_loop_depths.pop()
+            return True
+
+        return False
+
+    def maybe_increment_lambda_arguments(self, leaf: Leaf) -> bool:
+        """In a lambda expression, there might be more than one argument.
+
+        To avoid splitting on the comma in this situation, increase the depth of
+        tokens between `lambda` and `:`.
+        """
+        if leaf.type == token.NAME and leaf.value == "lambda":
+            self.depth += 1
+            self._lambda_argument_depths.append(self.depth)
+            return True
+
+        return False
+
+    def maybe_decrement_after_lambda_arguments(self, leaf: Leaf) -> bool:
+        """See `maybe_increment_lambda_arguments` above for explanation."""
+        if (
+            self._lambda_argument_depths
+            and self._lambda_argument_depths[-1] == self.depth
+            and leaf.type == token.COLON
+        ):
+            self.depth -= 1
+            self._lambda_argument_depths.pop()
+            return True
+
+        return False
+
+    def get_open_lsqb(self) -> Optional[Leaf]:
+        """Return the most recent opening square bracket (if any)."""
+        return self.bracket_match.get((self.depth - 1, token.RSQB))
+
+
+def is_split_after_delimiter(leaf: Leaf, previous: Optional[Leaf] = None) -> Priority:
+    """Return the priority of the `leaf` delimiter, given a line break after it.
+
+    The delimiter priorities returned here are from those delimiters that would
+    cause a line break after themselves.
+
+    Higher numbers are higher priority.
+    """
+    if leaf.type == token.COMMA:
+        return COMMA_PRIORITY
+
+    return 0
+
+
+def is_split_before_delimiter(leaf: Leaf, previous: Optional[Leaf] = None) -> Priority:
+    """Return the priority of the `leaf` delimiter, given a line break before it.
+
+    The delimiter priorities returned here are from those delimiters that would
+    cause a line break before themselves.
+
+    Higher numbers are higher priority.
+    """
+    if is_vararg(leaf, within=VARARGS_PARENTS | UNPACKING_PARENTS):
+        # * and ** might also be MATH_OPERATORS but in this case they are not.
+        # Don't treat them as a delimiter.
+        return 0
+
+    if (
+        leaf.type == token.DOT
+        and leaf.parent
+        and leaf.parent.type not in {syms.import_from, syms.dotted_name}
+        and (previous is None or previous.type in CLOSING_BRACKETS)
+    ):
+        return DOT_PRIORITY
+
+    if (
+        leaf.type in MATH_OPERATORS
+        and leaf.parent
+        and leaf.parent.type not in {syms.factor, syms.star_expr}
+    ):
+        return MATH_PRIORITIES[leaf.type]
+
+    if leaf.type in COMPARATORS:
+        return COMPARATOR_PRIORITY
+
+    if (
+        leaf.type == token.STRING
+        and previous is not None
+        and previous.type == token.STRING
+    ):
+        return STRING_PRIORITY
+
+    if leaf.type not in {token.NAME, token.ASYNC}:
+        return 0
+
+    if (
+        leaf.value == "for"
+        and leaf.parent
+        and leaf.parent.type in {syms.comp_for, syms.old_comp_for}
+        or leaf.type == token.ASYNC
+    ):
+        if (
+            not isinstance(leaf.prev_sibling, Leaf)
+            or leaf.prev_sibling.value != "async"
+        ):
+            return COMPREHENSION_PRIORITY
+
+    if (
+        leaf.value == "if"
+        and leaf.parent
+        and leaf.parent.type in {syms.comp_if, syms.old_comp_if}
+    ):
+        return COMPREHENSION_PRIORITY
+
+    if leaf.value in {"if", "else"} and leaf.parent and leaf.parent.type == syms.test:
+        return TERNARY_PRIORITY
+
+    if leaf.value == "is":
+        return COMPARATOR_PRIORITY
+
+    if (
+        leaf.value == "in"
+        and leaf.parent
+        and leaf.parent.type in {syms.comp_op, syms.comparison}
+        and not (
+            previous is not None
+            and previous.type == token.NAME
+            and previous.value == "not"
+        )
+    ):
+        return COMPARATOR_PRIORITY
+
+    if (
+        leaf.value == "not"
+        and leaf.parent
+        and leaf.parent.type == syms.comp_op
+        and not (
+            previous is not None
+            and previous.type == token.NAME
+            and previous.value == "is"
+        )
+    ):
+        return COMPARATOR_PRIORITY
+
+    if leaf.value in LOGIC_OPERATORS and leaf.parent:
+        return LOGIC_PRIORITY
+
+    return 0
+
+
+def max_delimiter_priority_in_atom(node: LN) -> Priority:
+    """Return maximum delimiter priority inside `node`.
+
+    This is specific to atoms with contents contained in a pair of parentheses.
+    If `node` isn't an atom or there are no enclosing parentheses, returns 0.
+    """
+    if node.type != syms.atom:
+        return 0
+
+    first = node.children[0]
+    last = node.children[-1]
+    if not (first.type == token.LPAR and last.type == token.RPAR):
+        return 0
+
+    bt = BracketTracker()
+    for c in node.children[1:-1]:
+        if isinstance(c, Leaf):
+            bt.mark(c)
+        else:
+            for leaf in c.leaves():
+                bt.mark(leaf)
+    try:
+        return bt.max_delimiter_priority()
+
+    except ValueError:
+        return 0
diff --git a/.vim/bundle/black/src/black/cache.py b/.vim/bundle/black/src/black/cache.py
new file mode 100644 (file)
index 0000000..3f165de
--- /dev/null
@@ -0,0 +1,83 @@
+"""Caching of formatted files with feature-based invalidation."""
+
+import os
+import pickle
+from pathlib import Path
+import tempfile
+from typing import Dict, Iterable, Set, Tuple
+
+from platformdirs import user_cache_dir
+
+from black.mode import Mode
+
+from _black_version import version as __version__
+
+
+# types
+Timestamp = float
+FileSize = int
+CacheInfo = Tuple[Timestamp, FileSize]
+Cache = Dict[str, CacheInfo]
+
+
+CACHE_DIR = Path(user_cache_dir("black", version=__version__))
+
+
+def read_cache(mode: Mode) -> Cache:
+    """Read the cache if it exists and is well formed.
+
+    If it is not well formed, the call to write_cache later should resolve the issue.
+    """
+    cache_file = get_cache_file(mode)
+    if not cache_file.exists():
+        return {}
+
+    with cache_file.open("rb") as fobj:
+        try:
+            cache: Cache = pickle.load(fobj)
+        except (pickle.UnpicklingError, ValueError):
+            return {}
+
+    return cache
+
+
+def get_cache_file(mode: Mode) -> Path:
+    return CACHE_DIR / f"cache.{mode.get_cache_key()}.pickle"
+
+
+def get_cache_info(path: Path) -> CacheInfo:
+    """Return the information used to check if a file is already formatted or not."""
+    stat = path.stat()
+    return stat.st_mtime, stat.st_size
+
+
+def filter_cached(cache: Cache, sources: Iterable[Path]) -> Tuple[Set[Path], Set[Path]]:
+    """Split an iterable of paths in `sources` into two sets.
+
+    The first contains paths of files that modified on disk or are not in the
+    cache. The other contains paths to non-modified files.
+    """
+    todo, done = set(), set()
+    for src in sources:
+        res_src = src.resolve()
+        if cache.get(str(res_src)) != get_cache_info(res_src):
+            todo.add(src)
+        else:
+            done.add(src)
+    return todo, done
+
+
+def write_cache(cache: Cache, sources: Iterable[Path], mode: Mode) -> None:
+    """Update the cache file."""
+    cache_file = get_cache_file(mode)
+    try:
+        CACHE_DIR.mkdir(parents=True, exist_ok=True)
+        new_cache = {
+            **cache,
+            **{str(src.resolve()): get_cache_info(src) for src in sources},
+        }
+        with tempfile.NamedTemporaryFile(dir=str(cache_file.parent), delete=False) as f:
+            pickle.dump(new_cache, f, protocol=4)
+        os.replace(f.name, cache_file)
+    except OSError:
+        pass
diff --git a/.vim/bundle/black/src/black/comments.py b/.vim/bundle/black/src/black/comments.py
new file mode 100644 (file)
index 0000000..c7513c2
--- /dev/null
@@ -0,0 +1,272 @@
+from dataclasses import dataclass
+from functools import lru_cache
+import regex as re
+from typing import Iterator, List, Optional, Union
+
+from blib2to3.pytree import Node, Leaf
+from blib2to3.pgen2 import token
+
+from black.nodes import first_leaf_column, preceding_leaf, container_of
+from black.nodes import STANDALONE_COMMENT, WHITESPACE
+
+# types
+LN = Union[Leaf, Node]
+
+
+FMT_OFF = {"# fmt: off", "# fmt:off", "# yapf: disable"}
+FMT_SKIP = {"# fmt: skip", "# fmt:skip"}
+FMT_PASS = {*FMT_OFF, *FMT_SKIP}
+FMT_ON = {"# fmt: on", "# fmt:on", "# yapf: enable"}
+
+
+@dataclass
+class ProtoComment:
+    """Describes a piece of syntax that is a comment.
+
+    It's not a :class:`blib2to3.pytree.Leaf` so that:
+
+    * it can be cached (`Leaf` objects should not be reused more than once as
+      they store their lineno, column, prefix, and parent information);
+    * `newlines` and `consumed` fields are kept separate from the `value`. This
+      simplifies handling of special marker comments like ``# fmt: off/on``.
+    """
+
+    type: int  # token.COMMENT or STANDALONE_COMMENT
+    value: str  # content of the comment
+    newlines: int  # how many newlines before the comment
+    consumed: int  # how many characters of the original leaf's prefix did we consume
+
+
+def generate_comments(leaf: LN) -> Iterator[Leaf]:
+    """Clean the prefix of the `leaf` and generate comments from it, if any.
+
+    Comments in lib2to3 are shoved into the whitespace prefix.  This happens
+    in `pgen2/driver.py:Driver.parse_tokens()`.  This was a brilliant implementation
+    move because it does away with modifying the grammar to include all the
+    possible places in which comments can be placed.
+
+    The sad consequence for us though is that comments don't "belong" anywhere.
+    This is why this function generates simple parentless Leaf objects for
+    comments.  We simply don't know what the correct parent should be.
+
+    No matter though, we can live without this.  We really only need to
+    differentiate between inline and standalone comments.  The latter don't
+    share the line with any code.
+
+    Inline comments are emitted as regular token.COMMENT leaves.  Standalone
+    are emitted with a fake STANDALONE_COMMENT token identifier.
+    """
+    for pc in list_comments(leaf.prefix, is_endmarker=leaf.type == token.ENDMARKER):
+        yield Leaf(pc.type, pc.value, prefix="\n" * pc.newlines)
+
+
+@lru_cache(maxsize=4096)
+def list_comments(prefix: str, *, is_endmarker: bool) -> List[ProtoComment]:
+    """Return a list of :class:`ProtoComment` objects parsed from the given `prefix`."""
+    result: List[ProtoComment] = []
+    if not prefix or "#" not in prefix:
+        return result
+
+    consumed = 0
+    nlines = 0
+    ignored_lines = 0
+    for index, line in enumerate(re.split("\r?\n", prefix)):
+        consumed += len(line) + 1  # adding the length of the split '\n'
+        line = line.lstrip()
+        if not line:
+            nlines += 1
+        if not line.startswith("#"):
+            # Escaped newlines outside of a comment are not really newlines at
+            # all. We treat a single-line comment following an escaped newline
+            # as a simple trailing comment.
+            if line.endswith("\\"):
+                ignored_lines += 1
+            continue
+
+        if index == ignored_lines and not is_endmarker:
+            comment_type = token.COMMENT  # simple trailing comment
+        else:
+            comment_type = STANDALONE_COMMENT
+        comment = make_comment(line)
+        result.append(
+            ProtoComment(
+                type=comment_type, value=comment, newlines=nlines, consumed=consumed
+            )
+        )
+        nlines = 0
+    return result
+
+
+def make_comment(content: str) -> str:
+    """Return a consistently formatted comment from the given `content` string.
+
+    All comments (except for "##", "#!", "#:", '#'", "#%%") should have a single
+    space between the hash sign and the content.
+
+    If `content` didn't start with a hash sign, one is provided.
+    """
+    content = content.rstrip()
+    if not content:
+        return "#"
+
+    if content[0] == "#":
+        content = content[1:]
+    NON_BREAKING_SPACE = " "
+    if (
+        content
+        and content[0] == NON_BREAKING_SPACE
+        and not content.lstrip().startswith("type:")
+    ):
+        content = " " + content[1:]  # Replace NBSP by a simple space
+    if content and content[0] not in " !:#'%":
+        content = " " + content
+    return "#" + content
+
+
+def normalize_fmt_off(node: Node) -> None:
+    """Convert content between `# fmt: off`/`# fmt: on` into standalone comments."""
+    try_again = True
+    while try_again:
+        try_again = convert_one_fmt_off_pair(node)
+
+
+def convert_one_fmt_off_pair(node: Node) -> bool:
+    """Convert content of a single `# fmt: off`/`# fmt: on` into a standalone comment.
+
+    Returns True if a pair was converted.
+    """
+    for leaf in node.leaves():
+        previous_consumed = 0
+        for comment in list_comments(leaf.prefix, is_endmarker=False):
+            if comment.value not in FMT_PASS:
+                previous_consumed = comment.consumed
+                continue
+            # We only want standalone comments. If there's no previous leaf or
+            # the previous leaf is indentation, it's a standalone comment in
+            # disguise.
+            if comment.value in FMT_PASS and comment.type != STANDALONE_COMMENT:
+                prev = preceding_leaf(leaf)
+                if prev:
+                    if comment.value in FMT_OFF and prev.type not in WHITESPACE:
+                        continue
+                    if comment.value in FMT_SKIP and prev.type in WHITESPACE:
+                        continue
+
+            ignored_nodes = list(generate_ignored_nodes(leaf, comment))
+            if not ignored_nodes:
+                continue
+
+            first = ignored_nodes[0]  # Can be a container node with the `leaf`.
+            parent = first.parent
+            prefix = first.prefix
+            if comment.value in FMT_OFF:
+                first.prefix = prefix[comment.consumed :]
+            if comment.value in FMT_SKIP:
+                first.prefix = ""
+            hidden_value = "".join(str(n) for n in ignored_nodes)
+            if comment.value in FMT_OFF:
+                hidden_value = comment.value + "\n" + hidden_value
+            if comment.value in FMT_SKIP:
+                hidden_value += "  " + comment.value
+            if hidden_value.endswith("\n"):
+                # That happens when one of the `ignored_nodes` ended with a NEWLINE
+                # leaf (possibly followed by a DEDENT).
+                hidden_value = hidden_value[:-1]
+            first_idx: Optional[int] = None
+            for ignored in ignored_nodes:
+                index = ignored.remove()
+                if first_idx is None:
+                    first_idx = index
+            assert parent is not None, "INTERNAL ERROR: fmt: on/off handling (1)"
+            assert first_idx is not None, "INTERNAL ERROR: fmt: on/off handling (2)"
+            parent.insert_child(
+                first_idx,
+                Leaf(
+                    STANDALONE_COMMENT,
+                    hidden_value,
+                    prefix=prefix[:previous_consumed] + "\n" * comment.newlines,
+                ),
+            )
+            return True
+
+    return False
+
+
+def generate_ignored_nodes(leaf: Leaf, comment: ProtoComment) -> Iterator[LN]:
+    """Starting from the container of `leaf`, generate all leaves until `# fmt: on`.
+
+    If comment is skip, returns leaf only.
+    Stops at the end of the block.
+    """
+    container: Optional[LN] = container_of(leaf)
+    if comment.value in FMT_SKIP:
+        prev_sibling = leaf.prev_sibling
+        if comment.value in leaf.prefix and prev_sibling is not None:
+            leaf.prefix = leaf.prefix.replace(comment.value, "")
+            siblings = [prev_sibling]
+            while (
+                "\n" not in prev_sibling.prefix
+                and prev_sibling.prev_sibling is not None
+            ):
+                prev_sibling = prev_sibling.prev_sibling
+                siblings.insert(0, prev_sibling)
+            for sibling in siblings:
+                yield sibling
+        elif leaf.parent is not None:
+            yield leaf.parent
+        return
+    while container is not None and container.type != token.ENDMARKER:
+        if is_fmt_on(container):
+            return
+
+        # fix for fmt: on in children
+        if contains_fmt_on_at_column(container, leaf.column):
+            for child in container.children:
+                if contains_fmt_on_at_column(child, leaf.column):
+                    return
+                yield child
+        else:
+            yield container
+            container = container.next_sibling
+
+
+def is_fmt_on(container: LN) -> bool:
+    """Determine whether formatting is switched on within a container.
+    Determined by whether the last `# fmt:` comment is `on` or `off`.
+    """
+    fmt_on = False
+    for comment in list_comments(container.prefix, is_endmarker=False):
+        if comment.value in FMT_ON:
+            fmt_on = True
+        elif comment.value in FMT_OFF:
+            fmt_on = False
+    return fmt_on
+
+
+def contains_fmt_on_at_column(container: LN, column: int) -> bool:
+    """Determine if children at a given column have formatting switched on."""
+    for child in container.children:
+        if (
+            isinstance(child, Node)
+            and first_leaf_column(child) == column
+            or isinstance(child, Leaf)
+            and child.column == column
+        ):
+            if is_fmt_on(child):
+                return True
+
+    return False
+
+
+def contains_pragma_comment(comment_list: List[Leaf]) -> bool:
+    """
+    Returns:
+        True iff one of the comments in @comment_list is a pragma used by one
+        of the more common static analysis tools for python (e.g. mypy, flake8,
+        pylint).
+    """
+    for comment in comment_list:
+        if comment.value.startswith(("# type:", "# noqa", "# pylint:")):
+            return True
+
+    return False
diff --git a/.vim/bundle/black/src/black/concurrency.py b/.vim/bundle/black/src/black/concurrency.py
new file mode 100644 (file)
index 0000000..69d79f5
--- /dev/null
@@ -0,0 +1,54 @@
+import asyncio
+import logging
+import sys
+from typing import Any, Iterable
+
+from black.output import err
+
+
+def maybe_install_uvloop() -> None:
+    """If our environment has uvloop installed we use it.
+
+    This is called only from command-line entry points to avoid
+    interfering with the parent process if Black is used as a library.
+
+    """
+    try:
+        import uvloop
+
+        uvloop.install()
+    except ImportError:
+        pass
+
+
+def cancel(tasks: Iterable["asyncio.Task[Any]"]) -> None:
+    """asyncio signal handler that cancels all `tasks` and reports to stderr."""
+    err("Aborted!")
+    for task in tasks:
+        task.cancel()
+
+
+def shutdown(loop: asyncio.AbstractEventLoop) -> None:
+    """Cancel all pending tasks on `loop`, wait for them, and close the loop."""
+    try:
+        if sys.version_info[:2] >= (3, 7):
+            all_tasks = asyncio.all_tasks
+        else:
+            all_tasks = asyncio.Task.all_tasks
+        # This part is borrowed from asyncio/runners.py in Python 3.7b2.
+        to_cancel = [task for task in all_tasks(loop) if not task.done()]
+        if not to_cancel:
+            return
+
+        for task in to_cancel:
+            task.cancel()
+        loop.run_until_complete(
+            asyncio.gather(*to_cancel, loop=loop, return_exceptions=True)
+        )
+    finally:
+        # `concurrent.futures.Future` objects cannot be cancelled once they
+        # are already running. There might be some when the `shutdown()` happened.
+        # Silence their logger's spew about the event loop being closed.
+        cf_logger = logging.getLogger("concurrent.futures")
+        cf_logger.setLevel(logging.CRITICAL)
+        loop.close()
diff --git a/.vim/bundle/black/src/black/const.py b/.vim/bundle/black/src/black/const.py
new file mode 100644 (file)
index 0000000..dbb4826
--- /dev/null
@@ -0,0 +1,4 @@
+DEFAULT_LINE_LENGTH = 88
+DEFAULT_EXCLUDES = r"/(\.direnv|\.eggs|\.git|\.hg|\.mypy_cache|\.nox|\.tox|\.venv|venv|\.svn|_build|buck-out|build|dist)/"  # noqa: B950
+DEFAULT_INCLUDES = r"(\.pyi?|\.ipynb)$"
+STDIN_PLACEHOLDER = "__BLACK_STDIN_FILENAME__"
diff --git a/.vim/bundle/black/src/black/debug.py b/.vim/bundle/black/src/black/debug.py
new file mode 100644 (file)
index 0000000..5143076
--- /dev/null
@@ -0,0 +1,48 @@
+from dataclasses import dataclass
+from typing import Iterator, TypeVar, Union
+
+from blib2to3.pytree import Node, Leaf, type_repr
+from blib2to3.pgen2 import token
+
+from black.nodes import Visitor
+from black.output import out
+from black.parsing import lib2to3_parse
+
+LN = Union[Leaf, Node]
+T = TypeVar("T")
+
+
+@dataclass
+class DebugVisitor(Visitor[T]):
+    tree_depth: int = 0
+
+    def visit_default(self, node: LN) -> Iterator[T]:
+        indent = " " * (2 * self.tree_depth)
+        if isinstance(node, Node):
+            _type = type_repr(node.type)
+            out(f"{indent}{_type}", fg="yellow")
+            self.tree_depth += 1
+            for child in node.children:
+                yield from self.visit(child)
+
+            self.tree_depth -= 1
+            out(f"{indent}/{_type}", fg="yellow", bold=False)
+        else:
+            _type = token.tok_name.get(node.type, str(node.type))
+            out(f"{indent}{_type}", fg="blue", nl=False)
+            if node.prefix:
+                # We don't have to handle prefixes for `Node` objects since
+                # that delegates to the first child anyway.
+                out(f" {node.prefix!r}", fg="green", bold=False, nl=False)
+            out(f" {node.value!r}", fg="blue", bold=False)
+
+    @classmethod
+    def show(cls, code: Union[str, Leaf, Node]) -> None:
+        """Pretty-print the lib2to3 AST of a given string of `code`.
+
+        Convenience method for debugging.
+        """
+        v: DebugVisitor[None] = DebugVisitor()
+        if isinstance(code, str):
+            code = lib2to3_parse(code)
+        list(v.visit(code))
diff --git a/.vim/bundle/black/src/black/files.py b/.vim/bundle/black/src/black/files.py
new file mode 100644 (file)
index 0000000..4d7b47a
--- /dev/null
@@ -0,0 +1,259 @@
+from functools import lru_cache
+import io
+import os
+from pathlib import Path
+import sys
+from typing import (
+    Any,
+    Dict,
+    Iterable,
+    Iterator,
+    List,
+    Optional,
+    Pattern,
+    Sequence,
+    Tuple,
+    Union,
+    TYPE_CHECKING,
+)
+
+from pathspec import PathSpec
+from pathspec.patterns.gitwildmatch import GitWildMatchPatternError
+import tomli
+
+from black.output import err
+from black.report import Report
+from black.handle_ipynb_magics import jupyter_dependencies_are_installed
+
+if TYPE_CHECKING:
+    import colorama  # noqa: F401
+
+
+@lru_cache()
+def find_project_root(srcs: Sequence[str]) -> Path:
+    """Return a directory containing .git, .hg, or pyproject.toml.
+
+    That directory will be a common parent of all files and directories
+    passed in `srcs`.
+
+    If no directory in the tree contains a marker that would specify it's the
+    project root, the root of the file system is returned.
+    """
+    if not srcs:
+        srcs = [str(Path.cwd().resolve())]
+
+    path_srcs = [Path(Path.cwd(), src).resolve() for src in srcs]
+
+    # A list of lists of parents for each 'src'. 'src' is included as a
+    # "parent" of itself if it is a directory
+    src_parents = [
+        list(path.parents) + ([path] if path.is_dir() else []) for path in path_srcs
+    ]
+
+    common_base = max(
+        set.intersection(*(set(parents) for parents in src_parents)),
+        key=lambda path: path.parts,
+    )
+
+    for directory in (common_base, *common_base.parents):
+        if (directory / ".git").exists():
+            return directory
+
+        if (directory / ".hg").is_dir():
+            return directory
+
+        if (directory / "pyproject.toml").is_file():
+            return directory
+
+    return directory
+
+
+def find_pyproject_toml(path_search_start: Tuple[str, ...]) -> Optional[str]:
+    """Find the absolute filepath to a pyproject.toml if it exists"""
+    path_project_root = find_project_root(path_search_start)
+    path_pyproject_toml = path_project_root / "pyproject.toml"
+    if path_pyproject_toml.is_file():
+        return str(path_pyproject_toml)
+
+    try:
+        path_user_pyproject_toml = find_user_pyproject_toml()
+        return (
+            str(path_user_pyproject_toml)
+            if path_user_pyproject_toml.is_file()
+            else None
+        )
+    except PermissionError as e:
+        # We do not have access to the user-level config directory, so ignore it.
+        err(f"Ignoring user configuration directory due to {e!r}")
+        return None
+
+
+def parse_pyproject_toml(path_config: str) -> Dict[str, Any]:
+    """Parse a pyproject toml file, pulling out relevant parts for Black
+
+    If parsing fails, will raise a tomli.TOMLDecodeError
+    """
+    with open(path_config, encoding="utf8") as f:
+        pyproject_toml = tomli.load(f)  # type: ignore  # due to deprecated API usage
+    config = pyproject_toml.get("tool", {}).get("black", {})
+    return {k.replace("--", "").replace("-", "_"): v for k, v in config.items()}
+
+
+@lru_cache()
+def find_user_pyproject_toml() -> Path:
+    r"""Return the path to the top-level user configuration for black.
+
+    This looks for ~\.black on Windows and ~/.config/black on Linux and other
+    Unix systems.
+    """
+    if sys.platform == "win32":
+        # Windows
+        user_config_path = Path.home() / ".black"
+    else:
+        config_root = os.environ.get("XDG_CONFIG_HOME", "~/.config")
+        user_config_path = Path(config_root).expanduser() / "black"
+    return user_config_path.resolve()
+
+
+@lru_cache()
+def get_gitignore(root: Path) -> PathSpec:
+    """Return a PathSpec matching gitignore content if present."""
+    gitignore = root / ".gitignore"
+    lines: List[str] = []
+    if gitignore.is_file():
+        with gitignore.open(encoding="utf-8") as gf:
+            lines = gf.readlines()
+    try:
+        return PathSpec.from_lines("gitwildmatch", lines)
+    except GitWildMatchPatternError as e:
+        err(f"Could not parse {gitignore}: {e}")
+        raise
+
+
+def normalize_path_maybe_ignore(
+    path: Path, root: Path, report: Report
+) -> Optional[str]:
+    """Normalize `path`. May return `None` if `path` was ignored.
+
+    `report` is where "path ignored" output goes.
+    """
+    try:
+        abspath = path if path.is_absolute() else Path.cwd() / path
+        normalized_path = abspath.resolve().relative_to(root).as_posix()
+    except OSError as e:
+        report.path_ignored(path, f"cannot be read because {e}")
+        return None
+
+    except ValueError:
+        if path.is_symlink():
+            report.path_ignored(path, f"is a symbolic link that points outside {root}")
+            return None
+
+        raise
+
+    return normalized_path
+
+
+def path_is_excluded(
+    normalized_path: str,
+    pattern: Optional[Pattern[str]],
+) -> bool:
+    match = pattern.search(normalized_path) if pattern else None
+    return bool(match and match.group(0))
+
+
+def gen_python_files(
+    paths: Iterable[Path],
+    root: Path,
+    include: Pattern[str],
+    exclude: Pattern[str],
+    extend_exclude: Optional[Pattern[str]],
+    force_exclude: Optional[Pattern[str]],
+    report: Report,
+    gitignore: Optional[PathSpec],
+    *,
+    verbose: bool,
+    quiet: bool,
+) -> Iterator[Path]:
+    """Generate all files under `path` whose paths are not excluded by the
+    `exclude_regex`, `extend_exclude`, or `force_exclude` regexes,
+    but are included by the `include` regex.
+
+    Symbolic links pointing outside of the `root` directory are ignored.
+
+    `report` is where output about exclusions goes.
+    """
+    assert root.is_absolute(), f"INTERNAL ERROR: `root` must be absolute but is {root}"
+    for child in paths:
+        normalized_path = normalize_path_maybe_ignore(child, root, report)
+        if normalized_path is None:
+            continue
+
+        # First ignore files matching .gitignore, if passed
+        if gitignore is not None and gitignore.match_file(normalized_path):
+            report.path_ignored(child, "matches the .gitignore file content")
+            continue
+
+        # Then ignore with `--exclude` `--extend-exclude` and `--force-exclude` options.
+        normalized_path = "/" + normalized_path
+        if child.is_dir():
+            normalized_path += "/"
+
+        if path_is_excluded(normalized_path, exclude):
+            report.path_ignored(child, "matches the --exclude regular expression")
+            continue
+
+        if path_is_excluded(normalized_path, extend_exclude):
+            report.path_ignored(
+                child, "matches the --extend-exclude regular expression"
+            )
+            continue
+
+        if path_is_excluded(normalized_path, force_exclude):
+            report.path_ignored(child, "matches the --force-exclude regular expression")
+            continue
+
+        if child.is_dir():
+            # If gitignore is None, gitignore usage is disabled, while a Falsey
+            # gitignore is when the directory doesn't have a .gitignore file.
+            yield from gen_python_files(
+                child.iterdir(),
+                root,
+                include,
+                exclude,
+                extend_exclude,
+                force_exclude,
+                report,
+                gitignore + get_gitignore(child) if gitignore is not None else None,
+                verbose=verbose,
+                quiet=quiet,
+            )
+
+        elif child.is_file():
+            if child.suffix == ".ipynb" and not jupyter_dependencies_are_installed(
+                verbose=verbose, quiet=quiet
+            ):
+                continue
+            include_match = include.search(normalized_path) if include else True
+            if include_match:
+                yield child
+
+
+def wrap_stream_for_windows(
+    f: io.TextIOWrapper,
+) -> Union[io.TextIOWrapper, "colorama.AnsiToWin32"]:
+    """
+    Wrap stream with colorama's wrap_stream so colors are shown on Windows.
+
+    If `colorama` is unavailable, the original stream is returned unmodified.
+    Otherwise, the `wrap_stream()` function determines whether the stream needs
+    to be wrapped for a Windows environment and will accordingly either return
+    an `AnsiToWin32` wrapper or the original stream.
+    """
+    try:
+        from colorama.initialise import wrap_stream
+    except ImportError:
+        return f
+    else:
+        # Set `strip=False` to avoid needing to modify test_express_diff_with_color.
+        return wrap_stream(f, convert=None, strip=False, autoreset=False, wrap=True)
diff --git a/.vim/bundle/black/src/black/handle_ipynb_magics.py b/.vim/bundle/black/src/black/handle_ipynb_magics.py
new file mode 100644 (file)
index 0000000..63c8aaf
--- /dev/null
@@ -0,0 +1,462 @@
+"""Functions to process IPython magics with."""
+
+from functools import lru_cache
+import dataclasses
+import ast
+from typing import Dict, List, Tuple, Optional
+
+import secrets
+import sys
+import collections
+
+if sys.version_info >= (3, 10):
+    from typing import TypeGuard
+else:
+    from typing_extensions import TypeGuard
+
+from black.report import NothingChanged
+from black.output import out
+
+
+TRANSFORMED_MAGICS = frozenset(
+    (
+        "get_ipython().run_cell_magic",
+        "get_ipython().system",
+        "get_ipython().getoutput",
+        "get_ipython().run_line_magic",
+    )
+)
+TOKENS_TO_IGNORE = frozenset(
+    (
+        "ENDMARKER",
+        "NL",
+        "NEWLINE",
+        "COMMENT",
+        "DEDENT",
+        "UNIMPORTANT_WS",
+        "ESCAPED_NL",
+    )
+)
+NON_PYTHON_CELL_MAGICS = frozenset(
+    (
+        "%%bash",
+        "%%html",
+        "%%javascript",
+        "%%js",
+        "%%latex",
+        "%%markdown",
+        "%%perl",
+        "%%ruby",
+        "%%script",
+        "%%sh",
+        "%%svg",
+        "%%writefile",
+    )
+)
+TOKEN_HEX = secrets.token_hex
+
+
+@dataclasses.dataclass(frozen=True)
+class Replacement:
+    mask: str
+    src: str
+
+
+@lru_cache()
+def jupyter_dependencies_are_installed(*, verbose: bool, quiet: bool) -> bool:
+    try:
+        import IPython  # noqa:F401
+        import tokenize_rt  # noqa:F401
+    except ModuleNotFoundError:
+        if verbose or not quiet:
+            msg = (
+                "Skipping .ipynb files as Jupyter dependencies are not installed.\n"
+                "You can fix this by running ``pip install black[jupyter]``"
+            )
+            out(msg)
+        return False
+    else:
+        return True
+
+
+def remove_trailing_semicolon(src: str) -> Tuple[str, bool]:
+    """Remove trailing semicolon from Jupyter notebook cell.
+
+    For example,
+
+        fig, ax = plt.subplots()
+        ax.plot(x_data, y_data);  # plot data
+
+    would become
+
+        fig, ax = plt.subplots()
+        ax.plot(x_data, y_data)  # plot data
+
+    Mirrors the logic in `quiet` from `IPython.core.displayhook`, but uses
+    ``tokenize_rt`` so that round-tripping works fine.
+    """
+    from tokenize_rt import (
+        src_to_tokens,
+        tokens_to_src,
+        reversed_enumerate,
+    )
+
+    tokens = src_to_tokens(src)
+    trailing_semicolon = False
+    for idx, token in reversed_enumerate(tokens):
+        if token.name in TOKENS_TO_IGNORE:
+            continue
+        if token.name == "OP" and token.src == ";":
+            del tokens[idx]
+            trailing_semicolon = True
+        break
+    if not trailing_semicolon:
+        return src, False
+    return tokens_to_src(tokens), True
+
+
+def put_trailing_semicolon_back(src: str, has_trailing_semicolon: bool) -> str:
+    """Put trailing semicolon back if cell originally had it.
+
+    Mirrors the logic in `quiet` from `IPython.core.displayhook`, but uses
+    ``tokenize_rt`` so that round-tripping works fine.
+    """
+    if not has_trailing_semicolon:
+        return src
+    from tokenize_rt import src_to_tokens, tokens_to_src, reversed_enumerate
+
+    tokens = src_to_tokens(src)
+    for idx, token in reversed_enumerate(tokens):
+        if token.name in TOKENS_TO_IGNORE:
+            continue
+        tokens[idx] = token._replace(src=token.src + ";")
+        break
+    else:  # pragma: nocover
+        raise AssertionError(
+            "INTERNAL ERROR: Was not able to reinstate trailing semicolon. "
+            "Please report a bug on https://github.com/psf/black/issues.  "
+        ) from None
+    return str(tokens_to_src(tokens))
+
+
+def mask_cell(src: str) -> Tuple[str, List[Replacement]]:
+    """Mask IPython magics so content becomes parseable Python code.
+
+    For example,
+
+        %matplotlib inline
+        'foo'
+
+    becomes
+
+        "25716f358c32750e"
+        'foo'
+
+    The replacements are returned, along with the transformed code.
+    """
+    replacements: List[Replacement] = []
+    try:
+        ast.parse(src)
+    except SyntaxError:
+        # Might have IPython magics, will process below.
+        pass
+    else:
+        # Syntax is fine, nothing to mask, early return.
+        return src, replacements
+
+    from IPython.core.inputtransformer2 import TransformerManager
+
+    transformer_manager = TransformerManager()
+    transformed = transformer_manager.transform_cell(src)
+    transformed, cell_magic_replacements = replace_cell_magics(transformed)
+    replacements += cell_magic_replacements
+    transformed = transformer_manager.transform_cell(transformed)
+    transformed, magic_replacements = replace_magics(transformed)
+    if len(transformed.splitlines()) != len(src.splitlines()):
+        # Multi-line magic, not supported.
+        raise NothingChanged
+    replacements += magic_replacements
+    return transformed, replacements
+
+
+def get_token(src: str, magic: str) -> str:
+    """Return randomly generated token to mask IPython magic with.
+
+    For example, if 'magic' was `%matplotlib inline`, then a possible
+    token to mask it with would be `"43fdd17f7e5ddc83"`. The token
+    will be the same length as the magic, and we make sure that it was
+    not already present anywhere else in the cell.
+    """
+    assert magic
+    nbytes = max(len(magic) // 2 - 1, 1)
+    token = TOKEN_HEX(nbytes)
+    counter = 0
+    while token in src:
+        token = TOKEN_HEX(nbytes)
+        counter += 1
+        if counter > 100:
+            raise AssertionError(
+                "INTERNAL ERROR: Black was not able to replace IPython magic. "
+                "Please report a bug on https://github.com/psf/black/issues.  "
+                f"The magic might be helpful: {magic}"
+            ) from None
+    if len(token) + 2 < len(magic):
+        token = f"{token}."
+    return f'"{token}"'
+
+
+def replace_cell_magics(src: str) -> Tuple[str, List[Replacement]]:
+    """Replace cell magic with token.
+
+    Note that 'src' will already have been processed by IPython's
+    TransformerManager().transform_cell.
+
+    Example,
+
+        get_ipython().run_cell_magic('t', '-n1', 'ls =!ls\\n')
+
+    becomes
+
+        "a794."
+        ls =!ls
+
+    The replacement, along with the transformed code, is returned.
+    """
+    replacements: List[Replacement] = []
+
+    tree = ast.parse(src)
+
+    cell_magic_finder = CellMagicFinder()
+    cell_magic_finder.visit(tree)
+    if cell_magic_finder.cell_magic is None:
+        return src, replacements
+    if cell_magic_finder.cell_magic.header.split()[0] in NON_PYTHON_CELL_MAGICS:
+        raise NothingChanged
+    mask = get_token(src, cell_magic_finder.cell_magic.header)
+    replacements.append(Replacement(mask=mask, src=cell_magic_finder.cell_magic.header))
+    return f"{mask}\n{cell_magic_finder.cell_magic.body}", replacements
+
+
+def replace_magics(src: str) -> Tuple[str, List[Replacement]]:
+    """Replace magics within body of cell.
+
+    Note that 'src' will already have been processed by IPython's
+    TransformerManager().transform_cell.
+
+    Example, this
+
+        get_ipython().run_line_magic('matplotlib', 'inline')
+        'foo'
+
+    becomes
+
+        "5e67db56d490fd39"
+        'foo'
+
+    The replacement, along with the transformed code, are returned.
+    """
+    replacements = []
+    magic_finder = MagicFinder()
+    magic_finder.visit(ast.parse(src))
+    new_srcs = []
+    for i, line in enumerate(src.splitlines(), start=1):
+        if i in magic_finder.magics:
+            offsets_and_magics = magic_finder.magics[i]
+            if len(offsets_and_magics) != 1:  # pragma: nocover
+                raise AssertionError(
+                    f"Expecting one magic per line, got: {offsets_and_magics}\n"
+                    "Please report a bug on https://github.com/psf/black/issues."
+                )
+            col_offset, magic = (
+                offsets_and_magics[0].col_offset,
+                offsets_and_magics[0].magic,
+            )
+            mask = get_token(src, magic)
+            replacements.append(Replacement(mask=mask, src=magic))
+            line = line[:col_offset] + mask
+        new_srcs.append(line)
+    return "\n".join(new_srcs), replacements
+
+
+def unmask_cell(src: str, replacements: List[Replacement]) -> str:
+    """Remove replacements from cell.
+
+    For example
+
+        "9b20"
+        foo = bar
+
+    becomes
+
+        %%time
+        foo = bar
+    """
+    for replacement in replacements:
+        src = src.replace(replacement.mask, replacement.src)
+    return src
+
+
+def _is_ipython_magic(node: ast.expr) -> TypeGuard[ast.Attribute]:
+    """Check if attribute is IPython magic.
+
+    Note that the source of the abstract syntax tree
+    will already have been processed by IPython's
+    TransformerManager().transform_cell.
+    """
+    return (
+        isinstance(node, ast.Attribute)
+        and isinstance(node.value, ast.Call)
+        and isinstance(node.value.func, ast.Name)
+        and node.value.func.id == "get_ipython"
+    )
+
+
+@dataclasses.dataclass(frozen=True)
+class CellMagic:
+    header: str
+    body: str
+
+
+@dataclasses.dataclass
+class CellMagicFinder(ast.NodeVisitor):
+    """Find cell magics.
+
+    Note that the source of the abstract syntax tree
+    will already have been processed by IPython's
+    TransformerManager().transform_cell.
+
+    For example,
+
+        %%time\nfoo()
+
+    would have been transformed to
+
+        get_ipython().run_cell_magic('time', '', 'foo()\\n')
+
+    and we look for instances of the latter.
+    """
+
+    cell_magic: Optional[CellMagic] = None
+
+    def visit_Expr(self, node: ast.Expr) -> None:
+        """Find cell magic, extract header and body."""
+        if (
+            isinstance(node.value, ast.Call)
+            and _is_ipython_magic(node.value.func)
+            and node.value.func.attr == "run_cell_magic"
+        ):
+            args = []
+            for arg in node.value.args:
+                assert isinstance(arg, ast.Str)
+                args.append(arg.s)
+            header = f"%%{args[0]}"
+            if args[1]:
+                header += f" {args[1]}"
+            self.cell_magic = CellMagic(header=header, body=args[2])
+        self.generic_visit(node)
+
+
+@dataclasses.dataclass(frozen=True)
+class OffsetAndMagic:
+    col_offset: int
+    magic: str
+
+
+@dataclasses.dataclass
+class MagicFinder(ast.NodeVisitor):
+    """Visit cell to look for get_ipython calls.
+
+    Note that the source of the abstract syntax tree
+    will already have been processed by IPython's
+    TransformerManager().transform_cell.
+
+    For example,
+
+        %matplotlib inline
+
+    would have been transformed to
+
+        get_ipython().run_line_magic('matplotlib', 'inline')
+
+    and we look for instances of the latter (and likewise for other
+    types of magics).
+    """
+
+    magics: Dict[int, List[OffsetAndMagic]] = dataclasses.field(
+        default_factory=lambda: collections.defaultdict(list)
+    )
+
+    def visit_Assign(self, node: ast.Assign) -> None:
+        """Look for system assign magics.
+
+        For example,
+
+            black_version = !black --version
+
+        would have been transformed to
+
+            black_version = get_ipython().getoutput('black --version')
+
+        and we look for instances of the latter.
+        """
+        if (
+            isinstance(node.value, ast.Call)
+            and _is_ipython_magic(node.value.func)
+            and node.value.func.attr == "getoutput"
+        ):
+            args = []
+            for arg in node.value.args:
+                assert isinstance(arg, ast.Str)
+                args.append(arg.s)
+            assert args
+            src = f"!{args[0]}"
+            self.magics[node.value.lineno].append(
+                OffsetAndMagic(node.value.col_offset, src)
+            )
+        self.generic_visit(node)
+
+    def visit_Expr(self, node: ast.Expr) -> None:
+        """Look for magics in body of cell.
+
+        For examples,
+
+            !ls
+            !!ls
+            ?ls
+            ??ls
+
+        would (respectively) get transformed to
+
+            get_ipython().system('ls')
+            get_ipython().getoutput('ls')
+            get_ipython().run_line_magic('pinfo', 'ls')
+            get_ipython().run_line_magic('pinfo2', 'ls')
+
+        and we look for instances of any of the latter.
+        """
+        if isinstance(node.value, ast.Call) and _is_ipython_magic(node.value.func):
+            args = []
+            for arg in node.value.args:
+                assert isinstance(arg, ast.Str)
+                args.append(arg.s)
+            assert args
+            if node.value.func.attr == "run_line_magic":
+                if args[0] == "pinfo":
+                    src = f"?{args[1]}"
+                elif args[0] == "pinfo2":
+                    src = f"??{args[1]}"
+                else:
+                    src = f"%{args[0]}"
+                    if args[1]:
+                        assert src is not None
+                        src += f" {args[1]}"
+            elif node.value.func.attr == "system":
+                src = f"!{args[0]}"
+            elif node.value.func.attr == "getoutput":
+                src = f"!!{args[0]}"
+            else:
+                raise NothingChanged  # unsupported magic.
+            self.magics[node.value.lineno].append(
+                OffsetAndMagic(node.value.col_offset, src)
+            )
+        self.generic_visit(node)
diff --git a/.vim/bundle/black/src/black/linegen.py b/.vim/bundle/black/src/black/linegen.py
new file mode 100644 (file)
index 0000000..eb53fa0
--- /dev/null
@@ -0,0 +1,1004 @@
+"""
+Generating lines of code.
+"""
+from functools import partial, wraps
+import sys
+from typing import Collection, Iterator, List, Optional, Set, Union
+
+from dataclasses import dataclass, field
+
+from black.nodes import WHITESPACE, RARROW, STATEMENT, STANDALONE_COMMENT
+from black.nodes import ASSIGNMENTS, OPENING_BRACKETS, CLOSING_BRACKETS
+from black.nodes import Visitor, syms, first_child_is_arith, ensure_visible
+from black.nodes import is_docstring, is_empty_tuple, is_one_tuple, is_one_tuple_between
+from black.nodes import is_walrus_assignment, is_yield, is_vararg, is_multiline_string
+from black.nodes import is_stub_suite, is_stub_body, is_atom_with_invisible_parens
+from black.nodes import wrap_in_parentheses
+from black.brackets import max_delimiter_priority_in_atom
+from black.brackets import DOT_PRIORITY, COMMA_PRIORITY
+from black.lines import Line, line_to_string, is_line_short_enough
+from black.lines import can_omit_invisible_parens, can_be_split, append_leaves
+from black.comments import generate_comments, list_comments, FMT_OFF
+from black.numerics import normalize_numeric_literal
+from black.strings import get_string_prefix, fix_docstring
+from black.strings import normalize_string_prefix, normalize_string_quotes
+from black.trans import Transformer, CannotTransform, StringMerger
+from black.trans import StringSplitter, StringParenWrapper, StringParenStripper
+from black.mode import Mode
+from black.mode import Feature
+
+from blib2to3.pytree import Node, Leaf
+from blib2to3.pgen2 import token
+
+
+# types
+LeafID = int
+LN = Union[Leaf, Node]
+
+
+class CannotSplit(CannotTransform):
+    """A readable split that fits the allotted line length is impossible."""
+
+
+@dataclass
+class LineGenerator(Visitor[Line]):
+    """Generates reformatted Line objects.  Empty lines are not emitted.
+
+    Note: destroys the tree it's visiting by mutating prefixes of its leaves
+    in ways that will no longer stringify to valid Python code on the tree.
+    """
+
+    mode: Mode
+    remove_u_prefix: bool = False
+    current_line: Line = field(init=False)
+
+    def line(self, indent: int = 0) -> Iterator[Line]:
+        """Generate a line.
+
+        If the line is empty, only emit if it makes sense.
+        If the line is too long, split it first and then generate.
+
+        If any lines were generated, set up a new current_line.
+        """
+        if not self.current_line:
+            self.current_line.depth += indent
+            return  # Line is empty, don't emit. Creating a new one unnecessary.
+
+        complete_line = self.current_line
+        self.current_line = Line(mode=self.mode, depth=complete_line.depth + indent)
+        yield complete_line
+
+    def visit_default(self, node: LN) -> Iterator[Line]:
+        """Default `visit_*()` implementation. Recurses to children of `node`."""
+        if isinstance(node, Leaf):
+            any_open_brackets = self.current_line.bracket_tracker.any_open_brackets()
+            for comment in generate_comments(node):
+                if any_open_brackets:
+                    # any comment within brackets is subject to splitting
+                    self.current_line.append(comment)
+                elif comment.type == token.COMMENT:
+                    # regular trailing comment
+                    self.current_line.append(comment)
+                    yield from self.line()
+
+                else:
+                    # regular standalone comment
+                    yield from self.line()
+
+                    self.current_line.append(comment)
+                    yield from self.line()
+
+            normalize_prefix(node, inside_brackets=any_open_brackets)
+            if self.mode.string_normalization and node.type == token.STRING:
+                node.value = normalize_string_prefix(
+                    node.value, remove_u_prefix=self.remove_u_prefix
+                )
+                node.value = normalize_string_quotes(node.value)
+            if node.type == token.NUMBER:
+                normalize_numeric_literal(node)
+            if node.type not in WHITESPACE:
+                self.current_line.append(node)
+        yield from super().visit_default(node)
+
+    def visit_INDENT(self, node: Leaf) -> Iterator[Line]:
+        """Increase indentation level, maybe yield a line."""
+        # In blib2to3 INDENT never holds comments.
+        yield from self.line(+1)
+        yield from self.visit_default(node)
+
+    def visit_DEDENT(self, node: Leaf) -> Iterator[Line]:
+        """Decrease indentation level, maybe yield a line."""
+        # The current line might still wait for trailing comments.  At DEDENT time
+        # there won't be any (they would be prefixes on the preceding NEWLINE).
+        # Emit the line then.
+        yield from self.line()
+
+        # While DEDENT has no value, its prefix may contain standalone comments
+        # that belong to the current indentation level.  Get 'em.
+        yield from self.visit_default(node)
+
+        # Finally, emit the dedent.
+        yield from self.line(-1)
+
+    def visit_stmt(
+        self, node: Node, keywords: Set[str], parens: Set[str]
+    ) -> Iterator[Line]:
+        """Visit a statement.
+
+        This implementation is shared for `if`, `while`, `for`, `try`, `except`,
+        `def`, `with`, `class`, `assert` and assignments.
+
+        The relevant Python language `keywords` for a given statement will be
+        NAME leaves within it. This methods puts those on a separate line.
+
+        `parens` holds a set of string leaf values immediately after which
+        invisible parens should be put.
+        """
+        normalize_invisible_parens(node, parens_after=parens)
+        for child in node.children:
+            if child.type == token.NAME and child.value in keywords:  # type: ignore
+                yield from self.line()
+
+            yield from self.visit(child)
+
+    def visit_suite(self, node: Node) -> Iterator[Line]:
+        """Visit a suite."""
+        if self.mode.is_pyi and is_stub_suite(node):
+            yield from self.visit(node.children[2])
+        else:
+            yield from self.visit_default(node)
+
+    def visit_simple_stmt(self, node: Node) -> Iterator[Line]:
+        """Visit a statement without nested statements."""
+        if first_child_is_arith(node):
+            wrap_in_parentheses(node, node.children[0], visible=False)
+        is_suite_like = node.parent and node.parent.type in STATEMENT
+        if is_suite_like:
+            if self.mode.is_pyi and is_stub_body(node):
+                yield from self.visit_default(node)
+            else:
+                yield from self.line(+1)
+                yield from self.visit_default(node)
+                yield from self.line(-1)
+
+        else:
+            if (
+                not self.mode.is_pyi
+                or not node.parent
+                or not is_stub_suite(node.parent)
+            ):
+                yield from self.line()
+            yield from self.visit_default(node)
+
+    def visit_async_stmt(self, node: Node) -> Iterator[Line]:
+        """Visit `async def`, `async for`, `async with`."""
+        yield from self.line()
+
+        children = iter(node.children)
+        for child in children:
+            yield from self.visit(child)
+
+            if child.type == token.ASYNC:
+                break
+
+        internal_stmt = next(children)
+        for child in internal_stmt.children:
+            yield from self.visit(child)
+
+    def visit_decorators(self, node: Node) -> Iterator[Line]:
+        """Visit decorators."""
+        for child in node.children:
+            yield from self.line()
+            yield from self.visit(child)
+
+    def visit_SEMI(self, leaf: Leaf) -> Iterator[Line]:
+        """Remove a semicolon and put the other statement on a separate line."""
+        yield from self.line()
+
+    def visit_ENDMARKER(self, leaf: Leaf) -> Iterator[Line]:
+        """End of file. Process outstanding comments and end with a newline."""
+        yield from self.visit_default(leaf)
+        yield from self.line()
+
+    def visit_STANDALONE_COMMENT(self, leaf: Leaf) -> Iterator[Line]:
+        if not self.current_line.bracket_tracker.any_open_brackets():
+            yield from self.line()
+        yield from self.visit_default(leaf)
+
+    def visit_factor(self, node: Node) -> Iterator[Line]:
+        """Force parentheses between a unary op and a binary power:
+
+        -2 ** 8 -> -(2 ** 8)
+        """
+        _operator, operand = node.children
+        if (
+            operand.type == syms.power
+            and len(operand.children) == 3
+            and operand.children[1].type == token.DOUBLESTAR
+        ):
+            lpar = Leaf(token.LPAR, "(")
+            rpar = Leaf(token.RPAR, ")")
+            index = operand.remove() or 0
+            node.insert_child(index, Node(syms.atom, [lpar, operand, rpar]))
+        yield from self.visit_default(node)
+
+    def visit_STRING(self, leaf: Leaf) -> Iterator[Line]:
+        if is_docstring(leaf) and "\\\n" not in leaf.value:
+            # We're ignoring docstrings with backslash newline escapes because changing
+            # indentation of those changes the AST representation of the code.
+            docstring = normalize_string_prefix(leaf.value, self.remove_u_prefix)
+            prefix = get_string_prefix(docstring)
+            docstring = docstring[len(prefix) :]  # Remove the prefix
+            quote_char = docstring[0]
+            # A natural way to remove the outer quotes is to do:
+            #   docstring = docstring.strip(quote_char)
+            # but that breaks on """""x""" (which is '""x').
+            # So we actually need to remove the first character and the next two
+            # characters but only if they are the same as the first.
+            quote_len = 1 if docstring[1] != quote_char else 3
+            docstring = docstring[quote_len:-quote_len]
+            docstring_started_empty = not docstring
+
+            if is_multiline_string(leaf):
+                indent = " " * 4 * self.current_line.depth
+                docstring = fix_docstring(docstring, indent)
+            else:
+                docstring = docstring.strip()
+
+            if docstring:
+                # Add some padding if the docstring starts / ends with a quote mark.
+                if docstring[0] == quote_char:
+                    docstring = " " + docstring
+                if docstring[-1] == quote_char:
+                    docstring += " "
+                if docstring[-1] == "\\":
+                    backslash_count = len(docstring) - len(docstring.rstrip("\\"))
+                    if backslash_count % 2:
+                        # Odd number of tailing backslashes, add some padding to
+                        # avoid escaping the closing string quote.
+                        docstring += " "
+            elif not docstring_started_empty:
+                docstring = " "
+
+            # We could enforce triple quotes at this point.
+            quote = quote_char * quote_len
+            leaf.value = prefix + quote + docstring + quote
+
+        yield from self.visit_default(leaf)
+
+    def __post_init__(self) -> None:
+        """You are in a twisty little maze of passages."""
+        self.current_line = Line(mode=self.mode)
+
+        v = self.visit_stmt
+        Ø: Set[str] = set()
+        self.visit_assert_stmt = partial(v, keywords={"assert"}, parens={"assert", ","})
+        self.visit_if_stmt = partial(
+            v, keywords={"if", "else", "elif"}, parens={"if", "elif"}
+        )
+        self.visit_while_stmt = partial(v, keywords={"while", "else"}, parens={"while"})
+        self.visit_for_stmt = partial(v, keywords={"for", "else"}, parens={"for", "in"})
+        self.visit_try_stmt = partial(
+            v, keywords={"try", "except", "else", "finally"}, parens=Ø
+        )
+        self.visit_except_clause = partial(v, keywords={"except"}, parens=Ø)
+        self.visit_with_stmt = partial(v, keywords={"with"}, parens=Ø)
+        self.visit_funcdef = partial(v, keywords={"def"}, parens=Ø)
+        self.visit_classdef = partial(v, keywords={"class"}, parens=Ø)
+        self.visit_expr_stmt = partial(v, keywords=Ø, parens=ASSIGNMENTS)
+        self.visit_return_stmt = partial(v, keywords={"return"}, parens={"return"})
+        self.visit_import_from = partial(v, keywords=Ø, parens={"import"})
+        self.visit_del_stmt = partial(v, keywords=Ø, parens={"del"})
+        self.visit_async_funcdef = self.visit_async_stmt
+        self.visit_decorated = self.visit_decorators
+
+
+def transform_line(
+    line: Line, mode: Mode, features: Collection[Feature] = ()
+) -> Iterator[Line]:
+    """Transform a `line`, potentially splitting it into many lines.
+
+    They should fit in the allotted `line_length` but might not be able to.
+
+    `features` are syntactical features that may be used in the output.
+    """
+    if line.is_comment:
+        yield line
+        return
+
+    line_str = line_to_string(line)
+
+    ll = mode.line_length
+    sn = mode.string_normalization
+    string_merge = StringMerger(ll, sn)
+    string_paren_strip = StringParenStripper(ll, sn)
+    string_split = StringSplitter(ll, sn)
+    string_paren_wrap = StringParenWrapper(ll, sn)
+
+    transformers: List[Transformer]
+    if (
+        not line.contains_uncollapsable_type_comments()
+        and not line.should_split_rhs
+        and not line.magic_trailing_comma
+        and (
+            is_line_short_enough(line, line_length=mode.line_length, line_str=line_str)
+            or line.contains_unsplittable_type_ignore()
+        )
+        and not (line.inside_brackets and line.contains_standalone_comments())
+    ):
+        # Only apply basic string preprocessing, since lines shouldn't be split here.
+        if mode.experimental_string_processing:
+            transformers = [string_merge, string_paren_strip]
+        else:
+            transformers = []
+    elif line.is_def:
+        transformers = [left_hand_split]
+    else:
+
+        def rhs(line: Line, features: Collection[Feature]) -> Iterator[Line]:
+            """Wraps calls to `right_hand_split`.
+
+            The calls increasingly `omit` right-hand trailers (bracket pairs with
+            content), meaning the trailers get glued together to split on another
+            bracket pair instead.
+            """
+            for omit in generate_trailers_to_omit(line, mode.line_length):
+                lines = list(
+                    right_hand_split(line, mode.line_length, features, omit=omit)
+                )
+                # Note: this check is only able to figure out if the first line of the
+                # *current* transformation fits in the line length.  This is true only
+                # for simple cases.  All others require running more transforms via
+                # `transform_line()`.  This check doesn't know if those would succeed.
+                if is_line_short_enough(lines[0], line_length=mode.line_length):
+                    yield from lines
+                    return
+
+            # All splits failed, best effort split with no omits.
+            # This mostly happens to multiline strings that are by definition
+            # reported as not fitting a single line, as well as lines that contain
+            # trailing commas (those have to be exploded).
+            yield from right_hand_split(
+                line, line_length=mode.line_length, features=features
+            )
+
+        if mode.experimental_string_processing:
+            if line.inside_brackets:
+                transformers = [
+                    string_merge,
+                    string_paren_strip,
+                    string_split,
+                    delimiter_split,
+                    standalone_comment_split,
+                    string_paren_wrap,
+                    rhs,
+                ]
+            else:
+                transformers = [
+                    string_merge,
+                    string_paren_strip,
+                    string_split,
+                    string_paren_wrap,
+                    rhs,
+                ]
+        else:
+            if line.inside_brackets:
+                transformers = [delimiter_split, standalone_comment_split, rhs]
+            else:
+                transformers = [rhs]
+
+    for transform in transformers:
+        # We are accumulating lines in `result` because we might want to abort
+        # mission and return the original line in the end, or attempt a different
+        # split altogether.
+        try:
+            result = run_transformer(line, transform, mode, features, line_str=line_str)
+        except CannotTransform:
+            continue
+        else:
+            yield from result
+            break
+
+    else:
+        yield line
+
+
+def left_hand_split(line: Line, _features: Collection[Feature] = ()) -> Iterator[Line]:
+    """Split line into many lines, starting with the first matching bracket pair.
+
+    Note: this usually looks weird, only use this for function definitions.
+    Prefer RHS otherwise.  This is why this function is not symmetrical with
+    :func:`right_hand_split` which also handles optional parentheses.
+    """
+    tail_leaves: List[Leaf] = []
+    body_leaves: List[Leaf] = []
+    head_leaves: List[Leaf] = []
+    current_leaves = head_leaves
+    matching_bracket: Optional[Leaf] = None
+    for leaf in line.leaves:
+        if (
+            current_leaves is body_leaves
+            and leaf.type in CLOSING_BRACKETS
+            and leaf.opening_bracket is matching_bracket
+        ):
+            current_leaves = tail_leaves if body_leaves else head_leaves
+        current_leaves.append(leaf)
+        if current_leaves is head_leaves:
+            if leaf.type in OPENING_BRACKETS:
+                matching_bracket = leaf
+                current_leaves = body_leaves
+    if not matching_bracket:
+        raise CannotSplit("No brackets found")
+
+    head = bracket_split_build_line(head_leaves, line, matching_bracket)
+    body = bracket_split_build_line(body_leaves, line, matching_bracket, is_body=True)
+    tail = bracket_split_build_line(tail_leaves, line, matching_bracket)
+    bracket_split_succeeded_or_raise(head, body, tail)
+    for result in (head, body, tail):
+        if result:
+            yield result
+
+
+def right_hand_split(
+    line: Line,
+    line_length: int,
+    features: Collection[Feature] = (),
+    omit: Collection[LeafID] = (),
+) -> Iterator[Line]:
+    """Split line into many lines, starting with the last matching bracket pair.
+
+    If the split was by optional parentheses, attempt splitting without them, too.
+    `omit` is a collection of closing bracket IDs that shouldn't be considered for
+    this split.
+
+    Note: running this function modifies `bracket_depth` on the leaves of `line`.
+    """
+    tail_leaves: List[Leaf] = []
+    body_leaves: List[Leaf] = []
+    head_leaves: List[Leaf] = []
+    current_leaves = tail_leaves
+    opening_bracket: Optional[Leaf] = None
+    closing_bracket: Optional[Leaf] = None
+    for leaf in reversed(line.leaves):
+        if current_leaves is body_leaves:
+            if leaf is opening_bracket:
+                current_leaves = head_leaves if body_leaves else tail_leaves
+        current_leaves.append(leaf)
+        if current_leaves is tail_leaves:
+            if leaf.type in CLOSING_BRACKETS and id(leaf) not in omit:
+                opening_bracket = leaf.opening_bracket
+                closing_bracket = leaf
+                current_leaves = body_leaves
+    if not (opening_bracket and closing_bracket and head_leaves):
+        # If there is no opening or closing_bracket that means the split failed and
+        # all content is in the tail.  Otherwise, if `head_leaves` are empty, it means
+        # the matching `opening_bracket` wasn't available on `line` anymore.
+        raise CannotSplit("No brackets found")
+
+    tail_leaves.reverse()
+    body_leaves.reverse()
+    head_leaves.reverse()
+    head = bracket_split_build_line(head_leaves, line, opening_bracket)
+    body = bracket_split_build_line(body_leaves, line, opening_bracket, is_body=True)
+    tail = bracket_split_build_line(tail_leaves, line, opening_bracket)
+    bracket_split_succeeded_or_raise(head, body, tail)
+    if (
+        Feature.FORCE_OPTIONAL_PARENTHESES not in features
+        # the opening bracket is an optional paren
+        and opening_bracket.type == token.LPAR
+        and not opening_bracket.value
+        # the closing bracket is an optional paren
+        and closing_bracket.type == token.RPAR
+        and not closing_bracket.value
+        # it's not an import (optional parens are the only thing we can split on
+        # in this case; attempting a split without them is a waste of time)
+        and not line.is_import
+        # there are no standalone comments in the body
+        and not body.contains_standalone_comments(0)
+        # and we can actually remove the parens
+        and can_omit_invisible_parens(body, line_length, omit_on_explode=omit)
+    ):
+        omit = {id(closing_bracket), *omit}
+        try:
+            yield from right_hand_split(line, line_length, features=features, omit=omit)
+            return
+
+        except CannotSplit as e:
+            if not (
+                can_be_split(body)
+                or is_line_short_enough(body, line_length=line_length)
+            ):
+                raise CannotSplit(
+                    "Splitting failed, body is still too long and can't be split."
+                ) from e
+
+            elif head.contains_multiline_strings() or tail.contains_multiline_strings():
+                raise CannotSplit(
+                    "The current optional pair of parentheses is bound to fail to"
+                    " satisfy the splitting algorithm because the head or the tail"
+                    " contains multiline strings which by definition never fit one"
+                    " line."
+                ) from e
+
+    ensure_visible(opening_bracket)
+    ensure_visible(closing_bracket)
+    for result in (head, body, tail):
+        if result:
+            yield result
+
+
+def bracket_split_succeeded_or_raise(head: Line, body: Line, tail: Line) -> None:
+    """Raise :exc:`CannotSplit` if the last left- or right-hand split failed.
+
+    Do nothing otherwise.
+
+    A left- or right-hand split is based on a pair of brackets. Content before
+    (and including) the opening bracket is left on one line, content inside the
+    brackets is put on a separate line, and finally content starting with and
+    following the closing bracket is put on a separate line.
+
+    Those are called `head`, `body`, and `tail`, respectively. If the split
+    produced the same line (all content in `head`) or ended up with an empty `body`
+    and the `tail` is just the closing bracket, then it's considered failed.
+    """
+    tail_len = len(str(tail).strip())
+    if not body:
+        if tail_len == 0:
+            raise CannotSplit("Splitting brackets produced the same line")
+
+        elif tail_len < 3:
+            raise CannotSplit(
+                f"Splitting brackets on an empty body to save {tail_len} characters is"
+                " not worth it"
+            )
+
+
+def bracket_split_build_line(
+    leaves: List[Leaf], original: Line, opening_bracket: Leaf, *, is_body: bool = False
+) -> Line:
+    """Return a new line with given `leaves` and respective comments from `original`.
+
+    If `is_body` is True, the result line is one-indented inside brackets and as such
+    has its first leaf's prefix normalized and a trailing comma added when expected.
+    """
+    result = Line(mode=original.mode, depth=original.depth)
+    if is_body:
+        result.inside_brackets = True
+        result.depth += 1
+        if leaves:
+            # Since body is a new indent level, remove spurious leading whitespace.
+            normalize_prefix(leaves[0], inside_brackets=True)
+            # Ensure a trailing comma for imports and standalone function arguments, but
+            # be careful not to add one after any comments or within type annotations.
+            no_commas = (
+                original.is_def
+                and opening_bracket.value == "("
+                and not any(leaf.type == token.COMMA for leaf in leaves)
+                # In particular, don't add one within a parenthesized return annotation.
+                # Unfortunately the indicator we're in a return annotation (RARROW) may
+                # be defined directly in the parent node, the parent of the parent ...
+                # and so on depending on how complex the return annotation is.
+                # This isn't perfect and there's some false negatives but they are in
+                # contexts were a comma is actually fine.
+                and not any(
+                    node.prev_sibling.type == RARROW
+                    for node in (
+                        leaves[0].parent,
+                        getattr(leaves[0].parent, "parent", None),
+                    )
+                    if isinstance(node, Node) and isinstance(node.prev_sibling, Leaf)
+                )
+            )
+
+            if original.is_import or no_commas:
+                for i in range(len(leaves) - 1, -1, -1):
+                    if leaves[i].type == STANDALONE_COMMENT:
+                        continue
+
+                    if leaves[i].type != token.COMMA:
+                        new_comma = Leaf(token.COMMA, ",")
+                        leaves.insert(i + 1, new_comma)
+                    break
+
+    # Populate the line
+    for leaf in leaves:
+        result.append(leaf, preformatted=True)
+        for comment_after in original.comments_after(leaf):
+            result.append(comment_after, preformatted=True)
+    if is_body and should_split_line(result, opening_bracket):
+        result.should_split_rhs = True
+    return result
+
+
+def dont_increase_indentation(split_func: Transformer) -> Transformer:
+    """Normalize prefix of the first leaf in every line returned by `split_func`.
+
+    This is a decorator over relevant split functions.
+    """
+
+    @wraps(split_func)
+    def split_wrapper(line: Line, features: Collection[Feature] = ()) -> Iterator[Line]:
+        for line in split_func(line, features):
+            normalize_prefix(line.leaves[0], inside_brackets=True)
+            yield line
+
+    return split_wrapper
+
+
+@dont_increase_indentation
+def delimiter_split(line: Line, features: Collection[Feature] = ()) -> Iterator[Line]:
+    """Split according to delimiters of the highest priority.
+
+    If the appropriate Features are given, the split will add trailing commas
+    also in function signatures and calls that contain `*` and `**`.
+    """
+    try:
+        last_leaf = line.leaves[-1]
+    except IndexError:
+        raise CannotSplit("Line empty") from None
+
+    bt = line.bracket_tracker
+    try:
+        delimiter_priority = bt.max_delimiter_priority(exclude={id(last_leaf)})
+    except ValueError:
+        raise CannotSplit("No delimiters found") from None
+
+    if delimiter_priority == DOT_PRIORITY:
+        if bt.delimiter_count_with_priority(delimiter_priority) == 1:
+            raise CannotSplit("Splitting a single attribute from its owner looks wrong")
+
+    current_line = Line(
+        mode=line.mode, depth=line.depth, inside_brackets=line.inside_brackets
+    )
+    lowest_depth = sys.maxsize
+    trailing_comma_safe = True
+
+    def append_to_line(leaf: Leaf) -> Iterator[Line]:
+        """Append `leaf` to current line or to new line if appending impossible."""
+        nonlocal current_line
+        try:
+            current_line.append_safe(leaf, preformatted=True)
+        except ValueError:
+            yield current_line
+
+            current_line = Line(
+                mode=line.mode, depth=line.depth, inside_brackets=line.inside_brackets
+            )
+            current_line.append(leaf)
+
+    for leaf in line.leaves:
+        yield from append_to_line(leaf)
+
+        for comment_after in line.comments_after(leaf):
+            yield from append_to_line(comment_after)
+
+        lowest_depth = min(lowest_depth, leaf.bracket_depth)
+        if leaf.bracket_depth == lowest_depth:
+            if is_vararg(leaf, within={syms.typedargslist}):
+                trailing_comma_safe = (
+                    trailing_comma_safe and Feature.TRAILING_COMMA_IN_DEF in features
+                )
+            elif is_vararg(leaf, within={syms.arglist, syms.argument}):
+                trailing_comma_safe = (
+                    trailing_comma_safe and Feature.TRAILING_COMMA_IN_CALL in features
+                )
+
+        leaf_priority = bt.delimiters.get(id(leaf))
+        if leaf_priority == delimiter_priority:
+            yield current_line
+
+            current_line = Line(
+                mode=line.mode, depth=line.depth, inside_brackets=line.inside_brackets
+            )
+    if current_line:
+        if (
+            trailing_comma_safe
+            and delimiter_priority == COMMA_PRIORITY
+            and current_line.leaves[-1].type != token.COMMA
+            and current_line.leaves[-1].type != STANDALONE_COMMENT
+        ):
+            new_comma = Leaf(token.COMMA, ",")
+            current_line.append(new_comma)
+        yield current_line
+
+
+@dont_increase_indentation
+def standalone_comment_split(
+    line: Line, features: Collection[Feature] = ()
+) -> Iterator[Line]:
+    """Split standalone comments from the rest of the line."""
+    if not line.contains_standalone_comments(0):
+        raise CannotSplit("Line does not have any standalone comments")
+
+    current_line = Line(
+        mode=line.mode, depth=line.depth, inside_brackets=line.inside_brackets
+    )
+
+    def append_to_line(leaf: Leaf) -> Iterator[Line]:
+        """Append `leaf` to current line or to new line if appending impossible."""
+        nonlocal current_line
+        try:
+            current_line.append_safe(leaf, preformatted=True)
+        except ValueError:
+            yield current_line
+
+            current_line = Line(
+                line.mode, depth=line.depth, inside_brackets=line.inside_brackets
+            )
+            current_line.append(leaf)
+
+    for leaf in line.leaves:
+        yield from append_to_line(leaf)
+
+        for comment_after in line.comments_after(leaf):
+            yield from append_to_line(comment_after)
+
+    if current_line:
+        yield current_line
+
+
+def normalize_prefix(leaf: Leaf, *, inside_brackets: bool) -> None:
+    """Leave existing extra newlines if not `inside_brackets`. Remove everything
+    else.
+
+    Note: don't use backslashes for formatting or you'll lose your voting rights.
+    """
+    if not inside_brackets:
+        spl = leaf.prefix.split("#")
+        if "\\" not in spl[0]:
+            nl_count = spl[-1].count("\n")
+            if len(spl) > 1:
+                nl_count -= 1
+            leaf.prefix = "\n" * nl_count
+            return
+
+    leaf.prefix = ""
+
+
+def normalize_invisible_parens(node: Node, parens_after: Set[str]) -> None:
+    """Make existing optional parentheses invisible or create new ones.
+
+    `parens_after` is a set of string leaf values immediately after which parens
+    should be put.
+
+    Standardizes on visible parentheses for single-element tuples, and keeps
+    existing visible parentheses for other tuples and generator expressions.
+    """
+    for pc in list_comments(node.prefix, is_endmarker=False):
+        if pc.value in FMT_OFF:
+            # This `node` has a prefix with `# fmt: off`, don't mess with parens.
+            return
+    check_lpar = False
+    for index, child in enumerate(list(node.children)):
+        # Fixes a bug where invisible parens are not properly stripped from
+        # assignment statements that contain type annotations.
+        if isinstance(child, Node) and child.type == syms.annassign:
+            normalize_invisible_parens(child, parens_after=parens_after)
+
+        # Add parentheses around long tuple unpacking in assignments.
+        if (
+            index == 0
+            and isinstance(child, Node)
+            and child.type == syms.testlist_star_expr
+        ):
+            check_lpar = True
+
+        if check_lpar:
+            if child.type == syms.atom:
+                if maybe_make_parens_invisible_in_atom(child, parent=node):
+                    wrap_in_parentheses(node, child, visible=False)
+            elif is_one_tuple(child):
+                wrap_in_parentheses(node, child, visible=True)
+            elif node.type == syms.import_from:
+                # "import from" nodes store parentheses directly as part of
+                # the statement
+                if child.type == token.LPAR:
+                    # make parentheses invisible
+                    child.value = ""  # type: ignore
+                    node.children[-1].value = ""  # type: ignore
+                elif child.type != token.STAR:
+                    # insert invisible parentheses
+                    node.insert_child(index, Leaf(token.LPAR, ""))
+                    node.append_child(Leaf(token.RPAR, ""))
+                break
+
+            elif not (isinstance(child, Leaf) and is_multiline_string(child)):
+                wrap_in_parentheses(node, child, visible=False)
+
+        check_lpar = isinstance(child, Leaf) and child.value in parens_after
+
+
+def maybe_make_parens_invisible_in_atom(node: LN, parent: LN) -> bool:
+    """If it's safe, make the parens in the atom `node` invisible, recursively.
+    Additionally, remove repeated, adjacent invisible parens from the atom `node`
+    as they are redundant.
+
+    Returns whether the node should itself be wrapped in invisible parentheses.
+
+    """
+
+    if (
+        node.type != syms.atom
+        or is_empty_tuple(node)
+        or is_one_tuple(node)
+        or (is_yield(node) and parent.type != syms.expr_stmt)
+        or max_delimiter_priority_in_atom(node) >= COMMA_PRIORITY
+    ):
+        return False
+
+    if is_walrus_assignment(node):
+        if parent.type in [
+            syms.annassign,
+            syms.expr_stmt,
+            syms.assert_stmt,
+            syms.return_stmt,
+            # these ones aren't useful to end users, but they do please fuzzers
+            syms.for_stmt,
+            syms.del_stmt,
+        ]:
+            return False
+
+    first = node.children[0]
+    last = node.children[-1]
+    if first.type == token.LPAR and last.type == token.RPAR:
+        middle = node.children[1]
+        # make parentheses invisible
+        first.value = ""  # type: ignore
+        last.value = ""  # type: ignore
+        maybe_make_parens_invisible_in_atom(middle, parent=parent)
+
+        if is_atom_with_invisible_parens(middle):
+            # Strip the invisible parens from `middle` by replacing
+            # it with the child in-between the invisible parens
+            middle.replace(middle.children[1])
+
+        return False
+
+    return True
+
+
+def should_split_line(line: Line, opening_bracket: Leaf) -> bool:
+    """Should `line` be immediately split with `delimiter_split()` after RHS?"""
+
+    if not (opening_bracket.parent and opening_bracket.value in "[{("):
+        return False
+
+    # We're essentially checking if the body is delimited by commas and there's more
+    # than one of them (we're excluding the trailing comma and if the delimiter priority
+    # is still commas, that means there's more).
+    exclude = set()
+    trailing_comma = False
+    try:
+        last_leaf = line.leaves[-1]
+        if last_leaf.type == token.COMMA:
+            trailing_comma = True
+            exclude.add(id(last_leaf))
+        max_priority = line.bracket_tracker.max_delimiter_priority(exclude=exclude)
+    except (IndexError, ValueError):
+        return False
+
+    return max_priority == COMMA_PRIORITY and (
+        (line.mode.magic_trailing_comma and trailing_comma)
+        # always explode imports
+        or opening_bracket.parent.type in {syms.atom, syms.import_from}
+    )
+
+
+def generate_trailers_to_omit(line: Line, line_length: int) -> Iterator[Set[LeafID]]:
+    """Generate sets of closing bracket IDs that should be omitted in a RHS.
+
+    Brackets can be omitted if the entire trailer up to and including
+    a preceding closing bracket fits in one line.
+
+    Yielded sets are cumulative (contain results of previous yields, too).  First
+    set is empty, unless the line should explode, in which case bracket pairs until
+    the one that needs to explode are omitted.
+    """
+
+    omit: Set[LeafID] = set()
+    if not line.magic_trailing_comma:
+        yield omit
+
+    length = 4 * line.depth
+    opening_bracket: Optional[Leaf] = None
+    closing_bracket: Optional[Leaf] = None
+    inner_brackets: Set[LeafID] = set()
+    for index, leaf, leaf_length in line.enumerate_with_length(reversed=True):
+        length += leaf_length
+        if length > line_length:
+            break
+
+        has_inline_comment = leaf_length > len(leaf.value) + len(leaf.prefix)
+        if leaf.type == STANDALONE_COMMENT or has_inline_comment:
+            break
+
+        if opening_bracket:
+            if leaf is opening_bracket:
+                opening_bracket = None
+            elif leaf.type in CLOSING_BRACKETS:
+                prev = line.leaves[index - 1] if index > 0 else None
+                if (
+                    prev
+                    and prev.type == token.COMMA
+                    and not is_one_tuple_between(
+                        leaf.opening_bracket, leaf, line.leaves
+                    )
+                ):
+                    # Never omit bracket pairs with trailing commas.
+                    # We need to explode on those.
+                    break
+
+                inner_brackets.add(id(leaf))
+        elif leaf.type in CLOSING_BRACKETS:
+            prev = line.leaves[index - 1] if index > 0 else None
+            if prev and prev.type in OPENING_BRACKETS:
+                # Empty brackets would fail a split so treat them as "inner"
+                # brackets (e.g. only add them to the `omit` set if another
+                # pair of brackets was good enough.
+                inner_brackets.add(id(leaf))
+                continue
+
+            if closing_bracket:
+                omit.add(id(closing_bracket))
+                omit.update(inner_brackets)
+                inner_brackets.clear()
+                yield omit
+
+            if (
+                prev
+                and prev.type == token.COMMA
+                and not is_one_tuple_between(leaf.opening_bracket, leaf, line.leaves)
+            ):
+                # Never omit bracket pairs with trailing commas.
+                # We need to explode on those.
+                break
+
+            if leaf.value:
+                opening_bracket = leaf.opening_bracket
+                closing_bracket = leaf
+
+
+def run_transformer(
+    line: Line,
+    transform: Transformer,
+    mode: Mode,
+    features: Collection[Feature],
+    *,
+    line_str: str = "",
+) -> List[Line]:
+    if not line_str:
+        line_str = line_to_string(line)
+    result: List[Line] = []
+    for transformed_line in transform(line, features):
+        if str(transformed_line).strip("\n") == line_str:
+            raise CannotTransform("Line transformer returned an unchanged result")
+
+        result.extend(transform_line(transformed_line, mode=mode, features=features))
+
+    if (
+        transform.__name__ != "rhs"
+        or not line.bracket_tracker.invisible
+        or any(bracket.value for bracket in line.bracket_tracker.invisible)
+        or line.contains_multiline_strings()
+        or result[0].contains_uncollapsable_type_comments()
+        or result[0].contains_unsplittable_type_ignore()
+        or is_line_short_enough(result[0], line_length=mode.line_length)
+        # If any leaves have no parents (which _can_ occur since
+        # `transform(line)` potentially destroys the line's underlying node
+        # structure), then we can't proceed. Doing so would cause the below
+        # call to `append_leaves()` to fail.
+        or any(leaf.parent is None for leaf in line.leaves)
+    ):
+        return result
+
+    line_copy = line.clone()
+    append_leaves(line_copy, line, line.leaves)
+    features_fop = set(features) | {Feature.FORCE_OPTIONAL_PARENTHESES}
+    second_opinion = run_transformer(
+        line_copy, transform, mode, features_fop, line_str=line_str
+    )
+    if all(
+        is_line_short_enough(ln, line_length=mode.line_length) for ln in second_opinion
+    ):
+        result = second_opinion
+    return result
diff --git a/.vim/bundle/black/src/black/lines.py b/.vim/bundle/black/src/black/lines.py
new file mode 100644 (file)
index 0000000..63225c0
--- /dev/null
@@ -0,0 +1,734 @@
+from dataclasses import dataclass, field
+import itertools
+import sys
+from typing import (
+    Callable,
+    Collection,
+    Dict,
+    Iterator,
+    List,
+    Optional,
+    Sequence,
+    Tuple,
+    TypeVar,
+    cast,
+)
+
+from blib2to3.pytree import Node, Leaf
+from blib2to3.pgen2 import token
+
+from black.brackets import BracketTracker, DOT_PRIORITY
+from black.mode import Mode
+from black.nodes import STANDALONE_COMMENT, TEST_DESCENDANTS
+from black.nodes import BRACKETS, OPENING_BRACKETS, CLOSING_BRACKETS
+from black.nodes import syms, whitespace, replace_child, child_towards
+from black.nodes import is_multiline_string, is_import, is_type_comment, last_two_except
+from black.nodes import is_one_tuple_between
+
+# types
+T = TypeVar("T")
+Index = int
+LeafID = int
+
+
+@dataclass
+class Line:
+    """Holds leaves and comments. Can be printed with `str(line)`."""
+
+    mode: Mode
+    depth: int = 0
+    leaves: List[Leaf] = field(default_factory=list)
+    # keys ordered like `leaves`
+    comments: Dict[LeafID, List[Leaf]] = field(default_factory=dict)
+    bracket_tracker: BracketTracker = field(default_factory=BracketTracker)
+    inside_brackets: bool = False
+    should_split_rhs: bool = False
+    magic_trailing_comma: Optional[Leaf] = None
+
+    def append(self, leaf: Leaf, preformatted: bool = False) -> None:
+        """Add a new `leaf` to the end of the line.
+
+        Unless `preformatted` is True, the `leaf` will receive a new consistent
+        whitespace prefix and metadata applied by :class:`BracketTracker`.
+        Trailing commas are maybe removed, unpacked for loop variables are
+        demoted from being delimiters.
+
+        Inline comments are put aside.
+        """
+        has_value = leaf.type in BRACKETS or bool(leaf.value.strip())
+        if not has_value:
+            return
+
+        if token.COLON == leaf.type and self.is_class_paren_empty:
+            del self.leaves[-2:]
+        if self.leaves and not preformatted:
+            # Note: at this point leaf.prefix should be empty except for
+            # imports, for which we only preserve newlines.
+            leaf.prefix += whitespace(
+                leaf, complex_subscript=self.is_complex_subscript(leaf)
+            )
+        if self.inside_brackets or not preformatted:
+            self.bracket_tracker.mark(leaf)
+            if self.mode.magic_trailing_comma:
+                if self.has_magic_trailing_comma(leaf):
+                    self.magic_trailing_comma = leaf
+            elif self.has_magic_trailing_comma(leaf, ensure_removable=True):
+                self.remove_trailing_comma()
+        if not self.append_comment(leaf):
+            self.leaves.append(leaf)
+
+    def append_safe(self, leaf: Leaf, preformatted: bool = False) -> None:
+        """Like :func:`append()` but disallow invalid standalone comment structure.
+
+        Raises ValueError when any `leaf` is appended after a standalone comment
+        or when a standalone comment is not the first leaf on the line.
+        """
+        if self.bracket_tracker.depth == 0:
+            if self.is_comment:
+                raise ValueError("cannot append to standalone comments")
+
+            if self.leaves and leaf.type == STANDALONE_COMMENT:
+                raise ValueError(
+                    "cannot append standalone comments to a populated line"
+                )
+
+        self.append(leaf, preformatted=preformatted)
+
+    @property
+    def is_comment(self) -> bool:
+        """Is this line a standalone comment?"""
+        return len(self.leaves) == 1 and self.leaves[0].type == STANDALONE_COMMENT
+
+    @property
+    def is_decorator(self) -> bool:
+        """Is this line a decorator?"""
+        return bool(self) and self.leaves[0].type == token.AT
+
+    @property
+    def is_import(self) -> bool:
+        """Is this an import line?"""
+        return bool(self) and is_import(self.leaves[0])
+
+    @property
+    def is_class(self) -> bool:
+        """Is this line a class definition?"""
+        return (
+            bool(self)
+            and self.leaves[0].type == token.NAME
+            and self.leaves[0].value == "class"
+        )
+
+    @property
+    def is_stub_class(self) -> bool:
+        """Is this line a class definition with a body consisting only of "..."?"""
+        return self.is_class and self.leaves[-3:] == [
+            Leaf(token.DOT, ".") for _ in range(3)
+        ]
+
+    @property
+    def is_def(self) -> bool:
+        """Is this a function definition? (Also returns True for async defs.)"""
+        try:
+            first_leaf = self.leaves[0]
+        except IndexError:
+            return False
+
+        try:
+            second_leaf: Optional[Leaf] = self.leaves[1]
+        except IndexError:
+            second_leaf = None
+        return (first_leaf.type == token.NAME and first_leaf.value == "def") or (
+            first_leaf.type == token.ASYNC
+            and second_leaf is not None
+            and second_leaf.type == token.NAME
+            and second_leaf.value == "def"
+        )
+
+    @property
+    def is_class_paren_empty(self) -> bool:
+        """Is this a class with no base classes but using parentheses?
+
+        Those are unnecessary and should be removed.
+        """
+        return (
+            bool(self)
+            and len(self.leaves) == 4
+            and self.is_class
+            and self.leaves[2].type == token.LPAR
+            and self.leaves[2].value == "("
+            and self.leaves[3].type == token.RPAR
+            and self.leaves[3].value == ")"
+        )
+
+    @property
+    def is_triple_quoted_string(self) -> bool:
+        """Is the line a triple quoted string?"""
+        return (
+            bool(self)
+            and self.leaves[0].type == token.STRING
+            and self.leaves[0].value.startswith(('"""', "'''"))
+        )
+
+    def contains_standalone_comments(self, depth_limit: int = sys.maxsize) -> bool:
+        """If so, needs to be split before emitting."""
+        for leaf in self.leaves:
+            if leaf.type == STANDALONE_COMMENT and leaf.bracket_depth <= depth_limit:
+                return True
+
+        return False
+
+    def contains_uncollapsable_type_comments(self) -> bool:
+        ignored_ids = set()
+        try:
+            last_leaf = self.leaves[-1]
+            ignored_ids.add(id(last_leaf))
+            if last_leaf.type == token.COMMA or (
+                last_leaf.type == token.RPAR and not last_leaf.value
+            ):
+                # When trailing commas or optional parens are inserted by Black for
+                # consistency, comments after the previous last element are not moved
+                # (they don't have to, rendering will still be correct).  So we ignore
+                # trailing commas and invisible.
+                last_leaf = self.leaves[-2]
+                ignored_ids.add(id(last_leaf))
+        except IndexError:
+            return False
+
+        # A type comment is uncollapsable if it is attached to a leaf
+        # that isn't at the end of the line (since that could cause it
+        # to get associated to a different argument) or if there are
+        # comments before it (since that could cause it to get hidden
+        # behind a comment.
+        comment_seen = False
+        for leaf_id, comments in self.comments.items():
+            for comment in comments:
+                if is_type_comment(comment):
+                    if comment_seen or (
+                        not is_type_comment(comment, " ignore")
+                        and leaf_id not in ignored_ids
+                    ):
+                        return True
+
+                comment_seen = True
+
+        return False
+
+    def contains_unsplittable_type_ignore(self) -> bool:
+        if not self.leaves:
+            return False
+
+        # If a 'type: ignore' is attached to the end of a line, we
+        # can't split the line, because we can't know which of the
+        # subexpressions the ignore was meant to apply to.
+        #
+        # We only want this to apply to actual physical lines from the
+        # original source, though: we don't want the presence of a
+        # 'type: ignore' at the end of a multiline expression to
+        # justify pushing it all onto one line. Thus we
+        # (unfortunately) need to check the actual source lines and
+        # only report an unsplittable 'type: ignore' if this line was
+        # one line in the original code.
+
+        # Grab the first and last line numbers, skipping generated leaves
+        first_line = next((leaf.lineno for leaf in self.leaves if leaf.lineno != 0), 0)
+        last_line = next(
+            (leaf.lineno for leaf in reversed(self.leaves) if leaf.lineno != 0), 0
+        )
+
+        if first_line == last_line:
+            # We look at the last two leaves since a comma or an
+            # invisible paren could have been added at the end of the
+            # line.
+            for node in self.leaves[-2:]:
+                for comment in self.comments.get(id(node), []):
+                    if is_type_comment(comment, " ignore"):
+                        return True
+
+        return False
+
+    def contains_multiline_strings(self) -> bool:
+        return any(is_multiline_string(leaf) for leaf in self.leaves)
+
+    def has_magic_trailing_comma(
+        self, closing: Leaf, ensure_removable: bool = False
+    ) -> bool:
+        """Return True if we have a magic trailing comma, that is when:
+        - there's a trailing comma here
+        - it's not a one-tuple
+        Additionally, if ensure_removable:
+        - it's not from square bracket indexing
+        """
+        if not (
+            closing.type in CLOSING_BRACKETS
+            and self.leaves
+            and self.leaves[-1].type == token.COMMA
+        ):
+            return False
+
+        if closing.type == token.RBRACE:
+            return True
+
+        if closing.type == token.RSQB:
+            if not ensure_removable:
+                return True
+            comma = self.leaves[-1]
+            return bool(comma.parent and comma.parent.type == syms.listmaker)
+
+        if self.is_import:
+            return True
+
+        if not is_one_tuple_between(closing.opening_bracket, closing, self.leaves):
+            return True
+
+        return False
+
+    def append_comment(self, comment: Leaf) -> bool:
+        """Add an inline or standalone comment to the line."""
+        if (
+            comment.type == STANDALONE_COMMENT
+            and self.bracket_tracker.any_open_brackets()
+        ):
+            comment.prefix = ""
+            return False
+
+        if comment.type != token.COMMENT:
+            return False
+
+        if not self.leaves:
+            comment.type = STANDALONE_COMMENT
+            comment.prefix = ""
+            return False
+
+        last_leaf = self.leaves[-1]
+        if (
+            last_leaf.type == token.RPAR
+            and not last_leaf.value
+            and last_leaf.parent
+            and len(list(last_leaf.parent.leaves())) <= 3
+            and not is_type_comment(comment)
+        ):
+            # Comments on an optional parens wrapping a single leaf should belong to
+            # the wrapped node except if it's a type comment. Pinning the comment like
+            # this avoids unstable formatting caused by comment migration.
+            if len(self.leaves) < 2:
+                comment.type = STANDALONE_COMMENT
+                comment.prefix = ""
+                return False
+
+            last_leaf = self.leaves[-2]
+        self.comments.setdefault(id(last_leaf), []).append(comment)
+        return True
+
+    def comments_after(self, leaf: Leaf) -> List[Leaf]:
+        """Generate comments that should appear directly after `leaf`."""
+        return self.comments.get(id(leaf), [])
+
+    def remove_trailing_comma(self) -> None:
+        """Remove the trailing comma and moves the comments attached to it."""
+        trailing_comma = self.leaves.pop()
+        trailing_comma_comments = self.comments.pop(id(trailing_comma), [])
+        self.comments.setdefault(id(self.leaves[-1]), []).extend(
+            trailing_comma_comments
+        )
+
+    def is_complex_subscript(self, leaf: Leaf) -> bool:
+        """Return True iff `leaf` is part of a slice with non-trivial exprs."""
+        open_lsqb = self.bracket_tracker.get_open_lsqb()
+        if open_lsqb is None:
+            return False
+
+        subscript_start = open_lsqb.next_sibling
+
+        if isinstance(subscript_start, Node):
+            if subscript_start.type == syms.listmaker:
+                return False
+
+            if subscript_start.type == syms.subscriptlist:
+                subscript_start = child_towards(subscript_start, leaf)
+        return subscript_start is not None and any(
+            n.type in TEST_DESCENDANTS for n in subscript_start.pre_order()
+        )
+
+    def enumerate_with_length(
+        self, reversed: bool = False
+    ) -> Iterator[Tuple[Index, Leaf, int]]:
+        """Return an enumeration of leaves with their length.
+
+        Stops prematurely on multiline strings and standalone comments.
+        """
+        op = cast(
+            Callable[[Sequence[Leaf]], Iterator[Tuple[Index, Leaf]]],
+            enumerate_reversed if reversed else enumerate,
+        )
+        for index, leaf in op(self.leaves):
+            length = len(leaf.prefix) + len(leaf.value)
+            if "\n" in leaf.value:
+                return  # Multiline strings, we can't continue.
+
+            for comment in self.comments_after(leaf):
+                length += len(comment.value)
+
+            yield index, leaf, length
+
+    def clone(self) -> "Line":
+        return Line(
+            mode=self.mode,
+            depth=self.depth,
+            inside_brackets=self.inside_brackets,
+            should_split_rhs=self.should_split_rhs,
+            magic_trailing_comma=self.magic_trailing_comma,
+        )
+
+    def __str__(self) -> str:
+        """Render the line."""
+        if not self:
+            return "\n"
+
+        indent = "    " * self.depth
+        leaves = iter(self.leaves)
+        first = next(leaves)
+        res = f"{first.prefix}{indent}{first.value}"
+        for leaf in leaves:
+            res += str(leaf)
+        for comment in itertools.chain.from_iterable(self.comments.values()):
+            res += str(comment)
+
+        return res + "\n"
+
+    def __bool__(self) -> bool:
+        """Return True if the line has leaves or comments."""
+        return bool(self.leaves or self.comments)
+
+
+@dataclass
+class EmptyLineTracker:
+    """Provides a stateful method that returns the number of potential extra
+    empty lines needed before and after the currently processed line.
+
+    Note: this tracker works on lines that haven't been split yet.  It assumes
+    the prefix of the first leaf consists of optional newlines.  Those newlines
+    are consumed by `maybe_empty_lines()` and included in the computation.
+    """
+
+    is_pyi: bool = False
+    previous_line: Optional[Line] = None
+    previous_after: int = 0
+    previous_defs: List[int] = field(default_factory=list)
+
+    def maybe_empty_lines(self, current_line: Line) -> Tuple[int, int]:
+        """Return the number of extra empty lines before and after the `current_line`.
+
+        This is for separating `def`, `async def` and `class` with extra empty
+        lines (two on module-level).
+        """
+        before, after = self._maybe_empty_lines(current_line)
+        before = (
+            # Black should not insert empty lines at the beginning
+            # of the file
+            0
+            if self.previous_line is None
+            else before - self.previous_after
+        )
+        self.previous_after = after
+        self.previous_line = current_line
+        return before, after
+
+    def _maybe_empty_lines(self, current_line: Line) -> Tuple[int, int]:
+        max_allowed = 1
+        if current_line.depth == 0:
+            max_allowed = 1 if self.is_pyi else 2
+        if current_line.leaves:
+            # Consume the first leaf's extra newlines.
+            first_leaf = current_line.leaves[0]
+            before = first_leaf.prefix.count("\n")
+            before = min(before, max_allowed)
+            first_leaf.prefix = ""
+        else:
+            before = 0
+        depth = current_line.depth
+        while self.previous_defs and self.previous_defs[-1] >= depth:
+            self.previous_defs.pop()
+            if self.is_pyi:
+                before = 0 if depth else 1
+            else:
+                before = 1 if depth else 2
+        if current_line.is_decorator or current_line.is_def or current_line.is_class:
+            return self._maybe_empty_lines_for_class_or_def(current_line, before)
+
+        if (
+            self.previous_line
+            and self.previous_line.is_import
+            and not current_line.is_import
+            and depth == self.previous_line.depth
+        ):
+            return (before or 1), 0
+
+        if (
+            self.previous_line
+            and self.previous_line.is_class
+            and current_line.is_triple_quoted_string
+        ):
+            return before, 1
+
+        return before, 0
+
+    def _maybe_empty_lines_for_class_or_def(
+        self, current_line: Line, before: int
+    ) -> Tuple[int, int]:
+        if not current_line.is_decorator:
+            self.previous_defs.append(current_line.depth)
+        if self.previous_line is None:
+            # Don't insert empty lines before the first line in the file.
+            return 0, 0
+
+        if self.previous_line.is_decorator:
+            if self.is_pyi and current_line.is_stub_class:
+                # Insert an empty line after a decorated stub class
+                return 0, 1
+
+            return 0, 0
+
+        if self.previous_line.depth < current_line.depth and (
+            self.previous_line.is_class or self.previous_line.is_def
+        ):
+            return 0, 0
+
+        if (
+            self.previous_line.is_comment
+            and self.previous_line.depth == current_line.depth
+            and before == 0
+        ):
+            return 0, 0
+
+        if self.is_pyi:
+            if self.previous_line.depth > current_line.depth:
+                newlines = 1
+            elif current_line.is_class or self.previous_line.is_class:
+                if current_line.is_stub_class and self.previous_line.is_stub_class:
+                    # No blank line between classes with an empty body
+                    newlines = 0
+                else:
+                    newlines = 1
+            elif (
+                current_line.is_def or current_line.is_decorator
+            ) and not self.previous_line.is_def:
+                # Blank line between a block of functions (maybe with preceding
+                # decorators) and a block of non-functions
+                newlines = 1
+            else:
+                newlines = 0
+        else:
+            newlines = 2
+        if current_line.depth and newlines:
+            newlines -= 1
+        return newlines, 0
+
+
+def enumerate_reversed(sequence: Sequence[T]) -> Iterator[Tuple[Index, T]]:
+    """Like `reversed(enumerate(sequence))` if that were possible."""
+    index = len(sequence) - 1
+    for element in reversed(sequence):
+        yield (index, element)
+        index -= 1
+
+
+def append_leaves(
+    new_line: Line, old_line: Line, leaves: List[Leaf], preformatted: bool = False
+) -> None:
+    """
+    Append leaves (taken from @old_line) to @new_line, making sure to fix the
+    underlying Node structure where appropriate.
+
+    All of the leaves in @leaves are duplicated. The duplicates are then
+    appended to @new_line and used to replace their originals in the underlying
+    Node structure. Any comments attached to the old leaves are reattached to
+    the new leaves.
+
+    Pre-conditions:
+        set(@leaves) is a subset of set(@old_line.leaves).
+    """
+    for old_leaf in leaves:
+        new_leaf = Leaf(old_leaf.type, old_leaf.value)
+        replace_child(old_leaf, new_leaf)
+        new_line.append(new_leaf, preformatted=preformatted)
+
+        for comment_leaf in old_line.comments_after(old_leaf):
+            new_line.append(comment_leaf, preformatted=True)
+
+
+def is_line_short_enough(line: Line, *, line_length: int, line_str: str = "") -> bool:
+    """Return True if `line` is no longer than `line_length`.
+
+    Uses the provided `line_str` rendering, if any, otherwise computes a new one.
+    """
+    if not line_str:
+        line_str = line_to_string(line)
+    return (
+        len(line_str) <= line_length
+        and "\n" not in line_str  # multiline strings
+        and not line.contains_standalone_comments()
+    )
+
+
+def can_be_split(line: Line) -> bool:
+    """Return False if the line cannot be split *for sure*.
+
+    This is not an exhaustive search but a cheap heuristic that we can use to
+    avoid some unfortunate formattings (mostly around wrapping unsplittable code
+    in unnecessary parentheses).
+    """
+    leaves = line.leaves
+    if len(leaves) < 2:
+        return False
+
+    if leaves[0].type == token.STRING and leaves[1].type == token.DOT:
+        call_count = 0
+        dot_count = 0
+        next = leaves[-1]
+        for leaf in leaves[-2::-1]:
+            if leaf.type in OPENING_BRACKETS:
+                if next.type not in CLOSING_BRACKETS:
+                    return False
+
+                call_count += 1
+            elif leaf.type == token.DOT:
+                dot_count += 1
+            elif leaf.type == token.NAME:
+                if not (next.type == token.DOT or next.type in OPENING_BRACKETS):
+                    return False
+
+            elif leaf.type not in CLOSING_BRACKETS:
+                return False
+
+            if dot_count > 1 and call_count > 1:
+                return False
+
+    return True
+
+
+def can_omit_invisible_parens(
+    line: Line,
+    line_length: int,
+    omit_on_explode: Collection[LeafID] = (),
+) -> bool:
+    """Does `line` have a shape safe to reformat without optional parens around it?
+
+    Returns True for only a subset of potentially nice looking formattings but
+    the point is to not return false positives that end up producing lines that
+    are too long.
+    """
+    bt = line.bracket_tracker
+    if not bt.delimiters:
+        # Without delimiters the optional parentheses are useless.
+        return True
+
+    max_priority = bt.max_delimiter_priority()
+    if bt.delimiter_count_with_priority(max_priority) > 1:
+        # With more than one delimiter of a kind the optional parentheses read better.
+        return False
+
+    if max_priority == DOT_PRIORITY:
+        # A single stranded method call doesn't require optional parentheses.
+        return True
+
+    assert len(line.leaves) >= 2, "Stranded delimiter"
+
+    # With a single delimiter, omit if the expression starts or ends with
+    # a bracket.
+    first = line.leaves[0]
+    second = line.leaves[1]
+    if first.type in OPENING_BRACKETS and second.type not in CLOSING_BRACKETS:
+        if _can_omit_opening_paren(line, first=first, line_length=line_length):
+            return True
+
+        # Note: we are not returning False here because a line might have *both*
+        # a leading opening bracket and a trailing closing bracket.  If the
+        # opening bracket doesn't match our rule, maybe the closing will.
+
+    penultimate = line.leaves[-2]
+    last = line.leaves[-1]
+    if line.magic_trailing_comma:
+        try:
+            penultimate, last = last_two_except(line.leaves, omit=omit_on_explode)
+        except LookupError:
+            # Turns out we'd omit everything.  We cannot skip the optional parentheses.
+            return False
+
+    if (
+        last.type == token.RPAR
+        or last.type == token.RBRACE
+        or (
+            # don't use indexing for omitting optional parentheses;
+            # it looks weird
+            last.type == token.RSQB
+            and last.parent
+            and last.parent.type != syms.trailer
+        )
+    ):
+        if penultimate.type in OPENING_BRACKETS:
+            # Empty brackets don't help.
+            return False
+
+        if is_multiline_string(first):
+            # Additional wrapping of a multiline string in this situation is
+            # unnecessary.
+            return True
+
+        if line.magic_trailing_comma and penultimate.type == token.COMMA:
+            # The rightmost non-omitted bracket pair is the one we want to explode on.
+            return True
+
+        if _can_omit_closing_paren(line, last=last, line_length=line_length):
+            return True
+
+    return False
+
+
+def _can_omit_opening_paren(line: Line, *, first: Leaf, line_length: int) -> bool:
+    """See `can_omit_invisible_parens`."""
+    remainder = False
+    length = 4 * line.depth
+    _index = -1
+    for _index, leaf, leaf_length in line.enumerate_with_length():
+        if leaf.type in CLOSING_BRACKETS and leaf.opening_bracket is first:
+            remainder = True
+        if remainder:
+            length += leaf_length
+            if length > line_length:
+                break
+
+            if leaf.type in OPENING_BRACKETS:
+                # There are brackets we can further split on.
+                remainder = False
+
+    else:
+        # checked the entire string and line length wasn't exceeded
+        if len(line.leaves) == _index + 1:
+            return True
+
+    return False
+
+
+def _can_omit_closing_paren(line: Line, *, last: Leaf, line_length: int) -> bool:
+    """See `can_omit_invisible_parens`."""
+    length = 4 * line.depth
+    seen_other_brackets = False
+    for _index, leaf, leaf_length in line.enumerate_with_length():
+        length += leaf_length
+        if leaf is last.opening_bracket:
+            if seen_other_brackets or length <= line_length:
+                return True
+
+        elif leaf.type in OPENING_BRACKETS:
+            # There are brackets we can further split on.
+            seen_other_brackets = True
+
+    return False
+
+
+def line_to_string(line: Line) -> str:
+    """Returns the string representation of @line.
+
+    WARNING: This is known to be computationally expensive.
+    """
+    return str(line).strip("\n")
diff --git a/.vim/bundle/black/src/black/mode.py b/.vim/bundle/black/src/black/mode.py
new file mode 100644 (file)
index 0000000..0b7624e
--- /dev/null
@@ -0,0 +1,125 @@
+"""Data structures configuring Black behavior.
+
+Mostly around Python language feature support per version and Black configuration
+chosen by the user.
+"""
+
+from dataclasses import dataclass, field
+from enum import Enum
+from typing import Dict, Set
+
+from black.const import DEFAULT_LINE_LENGTH
+
+
+class TargetVersion(Enum):
+    PY27 = 2
+    PY33 = 3
+    PY34 = 4
+    PY35 = 5
+    PY36 = 6
+    PY37 = 7
+    PY38 = 8
+    PY39 = 9
+
+    def is_python2(self) -> bool:
+        return self is TargetVersion.PY27
+
+
+class Feature(Enum):
+    # All string literals are unicode
+    UNICODE_LITERALS = 1
+    F_STRINGS = 2
+    NUMERIC_UNDERSCORES = 3
+    TRAILING_COMMA_IN_CALL = 4
+    TRAILING_COMMA_IN_DEF = 5
+    # The following two feature-flags are mutually exclusive, and exactly one should be
+    # set for every version of python.
+    ASYNC_IDENTIFIERS = 6
+    ASYNC_KEYWORDS = 7
+    ASSIGNMENT_EXPRESSIONS = 8
+    POS_ONLY_ARGUMENTS = 9
+    RELAXED_DECORATORS = 10
+    FORCE_OPTIONAL_PARENTHESES = 50
+
+
+VERSION_TO_FEATURES: Dict[TargetVersion, Set[Feature]] = {
+    TargetVersion.PY27: {Feature.ASYNC_IDENTIFIERS},
+    TargetVersion.PY33: {Feature.UNICODE_LITERALS, Feature.ASYNC_IDENTIFIERS},
+    TargetVersion.PY34: {Feature.UNICODE_LITERALS, Feature.ASYNC_IDENTIFIERS},
+    TargetVersion.PY35: {
+        Feature.UNICODE_LITERALS,
+        Feature.TRAILING_COMMA_IN_CALL,
+        Feature.ASYNC_IDENTIFIERS,
+    },
+    TargetVersion.PY36: {
+        Feature.UNICODE_LITERALS,
+        Feature.F_STRINGS,
+        Feature.NUMERIC_UNDERSCORES,
+        Feature.TRAILING_COMMA_IN_CALL,
+        Feature.TRAILING_COMMA_IN_DEF,
+        Feature.ASYNC_IDENTIFIERS,
+    },
+    TargetVersion.PY37: {
+        Feature.UNICODE_LITERALS,
+        Feature.F_STRINGS,
+        Feature.NUMERIC_UNDERSCORES,
+        Feature.TRAILING_COMMA_IN_CALL,
+        Feature.TRAILING_COMMA_IN_DEF,
+        Feature.ASYNC_KEYWORDS,
+    },
+    TargetVersion.PY38: {
+        Feature.UNICODE_LITERALS,
+        Feature.F_STRINGS,
+        Feature.NUMERIC_UNDERSCORES,
+        Feature.TRAILING_COMMA_IN_CALL,
+        Feature.TRAILING_COMMA_IN_DEF,
+        Feature.ASYNC_KEYWORDS,
+        Feature.ASSIGNMENT_EXPRESSIONS,
+        Feature.POS_ONLY_ARGUMENTS,
+    },
+    TargetVersion.PY39: {
+        Feature.UNICODE_LITERALS,
+        Feature.F_STRINGS,
+        Feature.NUMERIC_UNDERSCORES,
+        Feature.TRAILING_COMMA_IN_CALL,
+        Feature.TRAILING_COMMA_IN_DEF,
+        Feature.ASYNC_KEYWORDS,
+        Feature.ASSIGNMENT_EXPRESSIONS,
+        Feature.RELAXED_DECORATORS,
+        Feature.POS_ONLY_ARGUMENTS,
+    },
+}
+
+
+def supports_feature(target_versions: Set[TargetVersion], feature: Feature) -> bool:
+    return all(feature in VERSION_TO_FEATURES[version] for version in target_versions)
+
+
+@dataclass
+class Mode:
+    target_versions: Set[TargetVersion] = field(default_factory=set)
+    line_length: int = DEFAULT_LINE_LENGTH
+    string_normalization: bool = True
+    is_pyi: bool = False
+    is_ipynb: bool = False
+    magic_trailing_comma: bool = True
+    experimental_string_processing: bool = False
+
+    def get_cache_key(self) -> str:
+        if self.target_versions:
+            version_str = ",".join(
+                str(version.value)
+                for version in sorted(self.target_versions, key=lambda v: v.value)
+            )
+        else:
+            version_str = "-"
+        parts = [
+            version_str,
+            str(self.line_length),
+            str(int(self.string_normalization)),
+            str(int(self.is_pyi)),
+            str(int(self.is_ipynb)),
+            str(int(self.magic_trailing_comma)),
+            str(int(self.experimental_string_processing)),
+        ]
+        return ".".join(parts)
diff --git a/.vim/bundle/black/src/black/nodes.py b/.vim/bundle/black/src/black/nodes.py
new file mode 100644 (file)
index 0000000..8f2e15b
--- /dev/null
@@ -0,0 +1,845 @@
+"""
+blib2to3 Node/Leaf transformation-related utility functions.
+"""
+
+import sys
+from typing import (
+    Collection,
+    Generic,
+    Iterator,
+    List,
+    Optional,
+    Set,
+    Tuple,
+    TypeVar,
+    Union,
+)
+
+if sys.version_info < (3, 8):
+    from typing_extensions import Final
+else:
+    from typing import Final
+
+# lib2to3 fork
+from blib2to3.pytree import Node, Leaf, type_repr
+from blib2to3 import pygram
+from blib2to3.pgen2 import token
+
+from black.cache import CACHE_DIR
+from black.strings import has_triple_quotes
+
+
+pygram.initialize(CACHE_DIR)
+syms = pygram.python_symbols
+
+
+# types
+T = TypeVar("T")
+LN = Union[Leaf, Node]
+LeafID = int
+NodeType = int
+
+
+WHITESPACE: Final = {token.DEDENT, token.INDENT, token.NEWLINE}
+STATEMENT: Final = {
+    syms.if_stmt,
+    syms.while_stmt,
+    syms.for_stmt,
+    syms.try_stmt,
+    syms.except_clause,
+    syms.with_stmt,
+    syms.funcdef,
+    syms.classdef,
+}
+STANDALONE_COMMENT: Final = 153
+token.tok_name[STANDALONE_COMMENT] = "STANDALONE_COMMENT"
+LOGIC_OPERATORS: Final = {"and", "or"}
+COMPARATORS: Final = {
+    token.LESS,
+    token.GREATER,
+    token.EQEQUAL,
+    token.NOTEQUAL,
+    token.LESSEQUAL,
+    token.GREATEREQUAL,
+}
+MATH_OPERATORS: Final = {
+    token.VBAR,
+    token.CIRCUMFLEX,
+    token.AMPER,
+    token.LEFTSHIFT,
+    token.RIGHTSHIFT,
+    token.PLUS,
+    token.MINUS,
+    token.STAR,
+    token.SLASH,
+    token.DOUBLESLASH,
+    token.PERCENT,
+    token.AT,
+    token.TILDE,
+    token.DOUBLESTAR,
+}
+STARS: Final = {token.STAR, token.DOUBLESTAR}
+VARARGS_SPECIALS: Final = STARS | {token.SLASH}
+VARARGS_PARENTS: Final = {
+    syms.arglist,
+    syms.argument,  # double star in arglist
+    syms.trailer,  # single argument to call
+    syms.typedargslist,
+    syms.varargslist,  # lambdas
+}
+UNPACKING_PARENTS: Final = {
+    syms.atom,  # single element of a list or set literal
+    syms.dictsetmaker,
+    syms.listmaker,
+    syms.testlist_gexp,
+    syms.testlist_star_expr,
+}
+TEST_DESCENDANTS: Final = {
+    syms.test,
+    syms.lambdef,
+    syms.or_test,
+    syms.and_test,
+    syms.not_test,
+    syms.comparison,
+    syms.star_expr,
+    syms.expr,
+    syms.xor_expr,
+    syms.and_expr,
+    syms.shift_expr,
+    syms.arith_expr,
+    syms.trailer,
+    syms.term,
+    syms.power,
+}
+ASSIGNMENTS: Final = {
+    "=",
+    "+=",
+    "-=",
+    "*=",
+    "@=",
+    "/=",
+    "%=",
+    "&=",
+    "|=",
+    "^=",
+    "<<=",
+    ">>=",
+    "**=",
+    "//=",
+}
+
+IMPLICIT_TUPLE = {syms.testlist, syms.testlist_star_expr, syms.exprlist}
+BRACKET = {token.LPAR: token.RPAR, token.LSQB: token.RSQB, token.LBRACE: token.RBRACE}
+OPENING_BRACKETS = set(BRACKET.keys())
+CLOSING_BRACKETS = set(BRACKET.values())
+BRACKETS = OPENING_BRACKETS | CLOSING_BRACKETS
+ALWAYS_NO_SPACE = CLOSING_BRACKETS | {token.COMMA, STANDALONE_COMMENT}
+
+RARROW = 55
+
+
+class Visitor(Generic[T]):
+    """Basic lib2to3 visitor that yields things of type `T` on `visit()`."""
+
+    def visit(self, node: LN) -> Iterator[T]:
+        """Main method to visit `node` and its children.
+
+        It tries to find a `visit_*()` method for the given `node.type`, like
+        `visit_simple_stmt` for Node objects or `visit_INDENT` for Leaf objects.
+        If no dedicated `visit_*()` method is found, chooses `visit_default()`
+        instead.
+
+        Then yields objects of type `T` from the selected visitor.
+        """
+        if node.type < 256:
+            name = token.tok_name[node.type]
+        else:
+            name = str(type_repr(node.type))
+        # We explicitly branch on whether a visitor exists (instead of
+        # using self.visit_default as the default arg to getattr) in order
+        # to save needing to create a bound method object and so mypyc can
+        # generate a native call to visit_default.
+        visitf = getattr(self, f"visit_{name}", None)
+        if visitf:
+            yield from visitf(node)
+        else:
+            yield from self.visit_default(node)
+
+    def visit_default(self, node: LN) -> Iterator[T]:
+        """Default `visit_*()` implementation. Recurses to children of `node`."""
+        if isinstance(node, Node):
+            for child in node.children:
+                yield from self.visit(child)
+
+
+def whitespace(leaf: Leaf, *, complex_subscript: bool) -> str:  # noqa: C901
+    """Return whitespace prefix if needed for the given `leaf`.
+
+    `complex_subscript` signals whether the given leaf is part of a subscription
+    which has non-trivial arguments, like arithmetic expressions or function calls.
+    """
+    NO = ""
+    SPACE = " "
+    DOUBLESPACE = "  "
+    t = leaf.type
+    p = leaf.parent
+    v = leaf.value
+    if t in ALWAYS_NO_SPACE:
+        return NO
+
+    if t == token.COMMENT:
+        return DOUBLESPACE
+
+    assert p is not None, f"INTERNAL ERROR: hand-made leaf without parent: {leaf!r}"
+    if t == token.COLON and p.type not in {
+        syms.subscript,
+        syms.subscriptlist,
+        syms.sliceop,
+    }:
+        return NO
+
+    prev = leaf.prev_sibling
+    if not prev:
+        prevp = preceding_leaf(p)
+        if not prevp or prevp.type in OPENING_BRACKETS:
+            return NO
+
+        if t == token.COLON:
+            if prevp.type == token.COLON:
+                return NO
+
+            elif prevp.type != token.COMMA and not complex_subscript:
+                return NO
+
+            return SPACE
+
+        if prevp.type == token.EQUAL:
+            if prevp.parent:
+                if prevp.parent.type in {
+                    syms.arglist,
+                    syms.argument,
+                    syms.parameters,
+                    syms.varargslist,
+                }:
+                    return NO
+
+                elif prevp.parent.type == syms.typedargslist:
+                    # A bit hacky: if the equal sign has whitespace, it means we
+                    # previously found it's a typed argument.  So, we're using
+                    # that, too.
+                    return prevp.prefix
+
+        elif prevp.type in VARARGS_SPECIALS:
+            if is_vararg(prevp, within=VARARGS_PARENTS | UNPACKING_PARENTS):
+                return NO
+
+        elif prevp.type == token.COLON:
+            if prevp.parent and prevp.parent.type in {syms.subscript, syms.sliceop}:
+                return SPACE if complex_subscript else NO
+
+        elif (
+            prevp.parent
+            and prevp.parent.type == syms.factor
+            and prevp.type in MATH_OPERATORS
+        ):
+            return NO
+
+        elif (
+            prevp.type == token.RIGHTSHIFT
+            and prevp.parent
+            and prevp.parent.type == syms.shift_expr
+            and prevp.prev_sibling
+            and prevp.prev_sibling.type == token.NAME
+            and prevp.prev_sibling.value == "print"  # type: ignore
+        ):
+            # Python 2 print chevron
+            return NO
+        elif prevp.type == token.AT and p.parent and p.parent.type == syms.decorator:
+            # no space in decorators
+            return NO
+
+    elif prev.type in OPENING_BRACKETS:
+        return NO
+
+    if p.type in {syms.parameters, syms.arglist}:
+        # untyped function signatures or calls
+        if not prev or prev.type != token.COMMA:
+            return NO
+
+    elif p.type == syms.varargslist:
+        # lambdas
+        if prev and prev.type != token.COMMA:
+            return NO
+
+    elif p.type == syms.typedargslist:
+        # typed function signatures
+        if not prev:
+            return NO
+
+        if t == token.EQUAL:
+            if prev.type != syms.tname:
+                return NO
+
+        elif prev.type == token.EQUAL:
+            # A bit hacky: if the equal sign has whitespace, it means we
+            # previously found it's a typed argument.  So, we're using that, too.
+            return prev.prefix
+
+        elif prev.type != token.COMMA:
+            return NO
+
+    elif p.type == syms.tname:
+        # type names
+        if not prev:
+            prevp = preceding_leaf(p)
+            if not prevp or prevp.type != token.COMMA:
+                return NO
+
+    elif p.type == syms.trailer:
+        # attributes and calls
+        if t == token.LPAR or t == token.RPAR:
+            return NO
+
+        if not prev:
+            if t == token.DOT:
+                prevp = preceding_leaf(p)
+                if not prevp or prevp.type != token.NUMBER:
+                    return NO
+
+            elif t == token.LSQB:
+                return NO
+
+        elif prev.type != token.COMMA:
+            return NO
+
+    elif p.type == syms.argument:
+        # single argument
+        if t == token.EQUAL:
+            return NO
+
+        if not prev:
+            prevp = preceding_leaf(p)
+            if not prevp or prevp.type == token.LPAR:
+                return NO
+
+        elif prev.type in {token.EQUAL} | VARARGS_SPECIALS:
+            return NO
+
+    elif p.type == syms.decorator:
+        # decorators
+        return NO
+
+    elif p.type == syms.dotted_name:
+        if prev:
+            return NO
+
+        prevp = preceding_leaf(p)
+        if not prevp or prevp.type == token.AT or prevp.type == token.DOT:
+            return NO
+
+    elif p.type == syms.classdef:
+        if t == token.LPAR:
+            return NO
+
+        if prev and prev.type == token.LPAR:
+            return NO
+
+    elif p.type in {syms.subscript, syms.sliceop}:
+        # indexing
+        if not prev:
+            assert p.parent is not None, "subscripts are always parented"
+            if p.parent.type == syms.subscriptlist:
+                return SPACE
+
+            return NO
+
+        elif not complex_subscript:
+            return NO
+
+    elif p.type == syms.atom:
+        if prev and t == token.DOT:
+            # dots, but not the first one.
+            return NO
+
+    elif p.type == syms.dictsetmaker:
+        # dict unpacking
+        if prev and prev.type == token.DOUBLESTAR:
+            return NO
+
+    elif p.type in {syms.factor, syms.star_expr}:
+        # unary ops
+        if not prev:
+            prevp = preceding_leaf(p)
+            if not prevp or prevp.type in OPENING_BRACKETS:
+                return NO
+
+            prevp_parent = prevp.parent
+            assert prevp_parent is not None
+            if prevp.type == token.COLON and prevp_parent.type in {
+                syms.subscript,
+                syms.sliceop,
+            }:
+                return NO
+
+            elif prevp.type == token.EQUAL and prevp_parent.type == syms.argument:
+                return NO
+
+        elif t in {token.NAME, token.NUMBER, token.STRING}:
+            return NO
+
+    elif p.type == syms.import_from:
+        if t == token.DOT:
+            if prev and prev.type == token.DOT:
+                return NO
+
+        elif t == token.NAME:
+            if v == "import":
+                return SPACE
+
+            if prev and prev.type == token.DOT:
+                return NO
+
+    elif p.type == syms.sliceop:
+        return NO
+
+    return SPACE
+
+
+def preceding_leaf(node: Optional[LN]) -> Optional[Leaf]:
+    """Return the first leaf that precedes `node`, if any."""
+    while node:
+        res = node.prev_sibling
+        if res:
+            if isinstance(res, Leaf):
+                return res
+
+            try:
+                return list(res.leaves())[-1]
+
+            except IndexError:
+                return None
+
+        node = node.parent
+    return None
+
+
+def prev_siblings_are(node: Optional[LN], tokens: List[Optional[NodeType]]) -> bool:
+    """Return if the `node` and its previous siblings match types against the provided
+    list of tokens; the provided `node`has its type matched against the last element in
+    the list.  `None` can be used as the first element to declare that the start of the
+    list is anchored at the start of its parent's children."""
+    if not tokens:
+        return True
+    if tokens[-1] is None:
+        return node is None
+    if not node:
+        return False
+    if node.type != tokens[-1]:
+        return False
+    return prev_siblings_are(node.prev_sibling, tokens[:-1])
+
+
+def last_two_except(leaves: List[Leaf], omit: Collection[LeafID]) -> Tuple[Leaf, Leaf]:
+    """Return (penultimate, last) leaves skipping brackets in `omit` and contents."""
+    stop_after = None
+    last = None
+    for leaf in reversed(leaves):
+        if stop_after:
+            if leaf is stop_after:
+                stop_after = None
+            continue
+
+        if last:
+            return leaf, last
+
+        if id(leaf) in omit:
+            stop_after = leaf.opening_bracket
+        else:
+            last = leaf
+    else:
+        raise LookupError("Last two leaves were also skipped")
+
+
+def parent_type(node: Optional[LN]) -> Optional[NodeType]:
+    """
+    Returns:
+        @node.parent.type, if @node is not None and has a parent.
+            OR
+        None, otherwise.
+    """
+    if node is None or node.parent is None:
+        return None
+
+    return node.parent.type
+
+
+def child_towards(ancestor: Node, descendant: LN) -> Optional[LN]:
+    """Return the child of `ancestor` that contains `descendant`."""
+    node: Optional[LN] = descendant
+    while node and node.parent != ancestor:
+        node = node.parent
+    return node
+
+
+def replace_child(old_child: LN, new_child: LN) -> None:
+    """
+    Side Effects:
+        * If @old_child.parent is set, replace @old_child with @new_child in
+        @old_child's underlying Node structure.
+            OR
+        * Otherwise, this function does nothing.
+    """
+    parent = old_child.parent
+    if not parent:
+        return
+
+    child_idx = old_child.remove()
+    if child_idx is not None:
+        parent.insert_child(child_idx, new_child)
+
+
+def container_of(leaf: Leaf) -> LN:
+    """Return `leaf` or one of its ancestors that is the topmost container of it.
+
+    By "container" we mean a node where `leaf` is the very first child.
+    """
+    same_prefix = leaf.prefix
+    container: LN = leaf
+    while container:
+        parent = container.parent
+        if parent is None:
+            break
+
+        if parent.children[0].prefix != same_prefix:
+            break
+
+        if parent.type == syms.file_input:
+            break
+
+        if parent.prev_sibling is not None and parent.prev_sibling.type in BRACKETS:
+            break
+
+        container = parent
+    return container
+
+
+def first_leaf_column(node: Node) -> Optional[int]:
+    """Returns the column of the first leaf child of a node."""
+    for child in node.children:
+        if isinstance(child, Leaf):
+            return child.column
+    return None
+
+
+def first_child_is_arith(node: Node) -> bool:
+    """Whether first child is an arithmetic or a binary arithmetic expression"""
+    expr_types = {
+        syms.arith_expr,
+        syms.shift_expr,
+        syms.xor_expr,
+        syms.and_expr,
+    }
+    return bool(node.children and node.children[0].type in expr_types)
+
+
+def is_docstring(leaf: Leaf) -> bool:
+    if prev_siblings_are(
+        leaf.parent, [None, token.NEWLINE, token.INDENT, syms.simple_stmt]
+    ):
+        return True
+
+    # Multiline docstring on the same line as the `def`.
+    if prev_siblings_are(leaf.parent, [syms.parameters, token.COLON, syms.simple_stmt]):
+        # `syms.parameters` is only used in funcdefs and async_funcdefs in the Python
+        # grammar. We're safe to return True without further checks.
+        return True
+
+    return False
+
+
+def is_empty_tuple(node: LN) -> bool:
+    """Return True if `node` holds an empty tuple."""
+    return (
+        node.type == syms.atom
+        and len(node.children) == 2
+        and node.children[0].type == token.LPAR
+        and node.children[1].type == token.RPAR
+    )
+
+
+def is_one_tuple(node: LN) -> bool:
+    """Return True if `node` holds a tuple with one element, with or without parens."""
+    if node.type == syms.atom:
+        gexp = unwrap_singleton_parenthesis(node)
+        if gexp is None or gexp.type != syms.testlist_gexp:
+            return False
+
+        return len(gexp.children) == 2 and gexp.children[1].type == token.COMMA
+
+    return (
+        node.type in IMPLICIT_TUPLE
+        and len(node.children) == 2
+        and node.children[1].type == token.COMMA
+    )
+
+
+def is_one_tuple_between(opening: Leaf, closing: Leaf, leaves: List[Leaf]) -> bool:
+    """Return True if content between `opening` and `closing` looks like a one-tuple."""
+    if opening.type != token.LPAR and closing.type != token.RPAR:
+        return False
+
+    depth = closing.bracket_depth + 1
+    for _opening_index, leaf in enumerate(leaves):
+        if leaf is opening:
+            break
+
+    else:
+        raise LookupError("Opening paren not found in `leaves`")
+
+    commas = 0
+    _opening_index += 1
+    for leaf in leaves[_opening_index:]:
+        if leaf is closing:
+            break
+
+        bracket_depth = leaf.bracket_depth
+        if bracket_depth == depth and leaf.type == token.COMMA:
+            commas += 1
+            if leaf.parent and leaf.parent.type in {
+                syms.arglist,
+                syms.typedargslist,
+            }:
+                commas += 1
+                break
+
+    return commas < 2
+
+
+def is_walrus_assignment(node: LN) -> bool:
+    """Return True iff `node` is of the shape ( test := test )"""
+    inner = unwrap_singleton_parenthesis(node)
+    return inner is not None and inner.type == syms.namedexpr_test
+
+
+def is_simple_decorator_trailer(node: LN, last: bool = False) -> bool:
+    """Return True iff `node` is a trailer valid in a simple decorator"""
+    return node.type == syms.trailer and (
+        (
+            len(node.children) == 2
+            and node.children[0].type == token.DOT
+            and node.children[1].type == token.NAME
+        )
+        # last trailer can be an argument-less parentheses pair
+        or (
+            last
+            and len(node.children) == 2
+            and node.children[0].type == token.LPAR
+            and node.children[1].type == token.RPAR
+        )
+        # last trailer can be arguments
+        or (
+            last
+            and len(node.children) == 3
+            and node.children[0].type == token.LPAR
+            # and node.children[1].type == syms.argument
+            and node.children[2].type == token.RPAR
+        )
+    )
+
+
+def is_simple_decorator_expression(node: LN) -> bool:
+    """Return True iff `node` could be a 'dotted name' decorator
+
+    This function takes the node of the 'namedexpr_test' of the new decorator
+    grammar and test if it would be valid under the old decorator grammar.
+
+    The old grammar was: decorator: @ dotted_name [arguments] NEWLINE
+    The new grammar is : decorator: @ namedexpr_test NEWLINE
+    """
+    if node.type == token.NAME:
+        return True
+    if node.type == syms.power:
+        if node.children:
+            return (
+                node.children[0].type == token.NAME
+                and all(map(is_simple_decorator_trailer, node.children[1:-1]))
+                and (
+                    len(node.children) < 2
+                    or is_simple_decorator_trailer(node.children[-1], last=True)
+                )
+            )
+    return False
+
+
+def is_yield(node: LN) -> bool:
+    """Return True if `node` holds a `yield` or `yield from` expression."""
+    if node.type == syms.yield_expr:
+        return True
+
+    if node.type == token.NAME and node.value == "yield":  # type: ignore
+        return True
+
+    if node.type != syms.atom:
+        return False
+
+    if len(node.children) != 3:
+        return False
+
+    lpar, expr, rpar = node.children
+    if lpar.type == token.LPAR and rpar.type == token.RPAR:
+        return is_yield(expr)
+
+    return False
+
+
+def is_vararg(leaf: Leaf, within: Set[NodeType]) -> bool:
+    """Return True if `leaf` is a star or double star in a vararg or kwarg.
+
+    If `within` includes VARARGS_PARENTS, this applies to function signatures.
+    If `within` includes UNPACKING_PARENTS, it applies to right hand-side
+    extended iterable unpacking (PEP 3132) and additional unpacking
+    generalizations (PEP 448).
+    """
+    if leaf.type not in VARARGS_SPECIALS or not leaf.parent:
+        return False
+
+    p = leaf.parent
+    if p.type == syms.star_expr:
+        # Star expressions are also used as assignment targets in extended
+        # iterable unpacking (PEP 3132).  See what its parent is instead.
+        if not p.parent:
+            return False
+
+        p = p.parent
+
+    return p.type in within
+
+
+def is_multiline_string(leaf: Leaf) -> bool:
+    """Return True if `leaf` is a multiline string that actually spans many lines."""
+    return has_triple_quotes(leaf.value) and "\n" in leaf.value
+
+
+def is_stub_suite(node: Node) -> bool:
+    """Return True if `node` is a suite with a stub body."""
+    if (
+        len(node.children) != 4
+        or node.children[0].type != token.NEWLINE
+        or node.children[1].type != token.INDENT
+        or node.children[3].type != token.DEDENT
+    ):
+        return False
+
+    return is_stub_body(node.children[2])
+
+
+def is_stub_body(node: LN) -> bool:
+    """Return True if `node` is a simple statement containing an ellipsis."""
+    if not isinstance(node, Node) or node.type != syms.simple_stmt:
+        return False
+
+    if len(node.children) != 2:
+        return False
+
+    child = node.children[0]
+    return (
+        child.type == syms.atom
+        and len(child.children) == 3
+        and all(leaf == Leaf(token.DOT, ".") for leaf in child.children)
+    )
+
+
+def is_atom_with_invisible_parens(node: LN) -> bool:
+    """Given a `LN`, determines whether it's an atom `node` with invisible
+    parens. Useful in dedupe-ing and normalizing parens.
+    """
+    if isinstance(node, Leaf) or node.type != syms.atom:
+        return False
+
+    first, last = node.children[0], node.children[-1]
+    return (
+        isinstance(first, Leaf)
+        and first.type == token.LPAR
+        and first.value == ""
+        and isinstance(last, Leaf)
+        and last.type == token.RPAR
+        and last.value == ""
+    )
+
+
+def is_empty_par(leaf: Leaf) -> bool:
+    return is_empty_lpar(leaf) or is_empty_rpar(leaf)
+
+
+def is_empty_lpar(leaf: Leaf) -> bool:
+    return leaf.type == token.LPAR and leaf.value == ""
+
+
+def is_empty_rpar(leaf: Leaf) -> bool:
+    return leaf.type == token.RPAR and leaf.value == ""
+
+
+def is_import(leaf: Leaf) -> bool:
+    """Return True if the given leaf starts an import statement."""
+    p = leaf.parent
+    t = leaf.type
+    v = leaf.value
+    return bool(
+        t == token.NAME
+        and (
+            (v == "import" and p and p.type == syms.import_name)
+            or (v == "from" and p and p.type == syms.import_from)
+        )
+    )
+
+
+def is_type_comment(leaf: Leaf, suffix: str = "") -> bool:
+    """Return True if the given leaf is a special comment.
+    Only returns true for type comments for now."""
+    t = leaf.type
+    v = leaf.value
+    return t in {token.COMMENT, STANDALONE_COMMENT} and v.startswith("# type:" + suffix)
+
+
+def wrap_in_parentheses(parent: Node, child: LN, *, visible: bool = True) -> None:
+    """Wrap `child` in parentheses.
+
+    This replaces `child` with an atom holding the parentheses and the old
+    child.  That requires moving the prefix.
+
+    If `visible` is False, the leaves will be valueless (and thus invisible).
+    """
+    lpar = Leaf(token.LPAR, "(" if visible else "")
+    rpar = Leaf(token.RPAR, ")" if visible else "")
+    prefix = child.prefix
+    child.prefix = ""
+    index = child.remove() or 0
+    new_child = Node(syms.atom, [lpar, child, rpar])
+    new_child.prefix = prefix
+    parent.insert_child(index, new_child)
+
+
+def unwrap_singleton_parenthesis(node: LN) -> Optional[LN]:
+    """Returns `wrapped` if `node` is of the shape ( wrapped ).
+
+    Parenthesis can be optional. Returns None otherwise"""
+    if len(node.children) != 3:
+        return None
+
+    lpar, wrapped, rpar = node.children
+    if not (lpar.type == token.LPAR and rpar.type == token.RPAR):
+        return None
+
+    return wrapped
+
+
+def ensure_visible(leaf: Leaf) -> None:
+    """Make sure parentheses are visible.
+
+    They could be invisible as part of some statements (see
+    :func:`normalize_invisible_parens` and :func:`visit_import_from`).
+    """
+    if leaf.type == token.LPAR:
+        leaf.value = "("
+    elif leaf.type == token.RPAR:
+        leaf.value = ")"
diff --git a/.vim/bundle/black/src/black/numerics.py b/.vim/bundle/black/src/black/numerics.py
new file mode 100644 (file)
index 0000000..cb1c83e
--- /dev/null
@@ -0,0 +1,65 @@
+"""
+Formatting numeric literals.
+"""
+from blib2to3.pytree import Leaf
+
+
+def format_hex(text: str) -> str:
+    """
+    Formats a hexadecimal string like "0x12B3"
+    """
+    before, after = text[:2], text[2:]
+    return f"{before}{after.upper()}"
+
+
+def format_scientific_notation(text: str) -> str:
+    """Formats a numeric string utilizing scentific notation"""
+    before, after = text.split("e")
+    sign = ""
+    if after.startswith("-"):
+        after = after[1:]
+        sign = "-"
+    elif after.startswith("+"):
+        after = after[1:]
+    before = format_float_or_int_string(before)
+    return f"{before}e{sign}{after}"
+
+
+def format_long_or_complex_number(text: str) -> str:
+    """Formats a long or complex string like `10L` or `10j`"""
+    number = text[:-1]
+    suffix = text[-1]
+    # Capitalize in "2L" because "l" looks too similar to "1".
+    if suffix == "l":
+        suffix = "L"
+    return f"{format_float_or_int_string(number)}{suffix}"
+
+
+def format_float_or_int_string(text: str) -> str:
+    """Formats a float string like "1.0"."""
+    if "." not in text:
+        return text
+
+    before, after = text.split(".")
+    return f"{before or 0}.{after or 0}"
+
+
+def normalize_numeric_literal(leaf: Leaf) -> None:
+    """Normalizes numeric (float, int, and complex) literals.
+
+    All letters used in the representation are normalized to lowercase (except
+    in Python 2 long literals).
+    """
+    text = leaf.value.lower()
+    if text.startswith(("0o", "0b")):
+        # Leave octal and binary literals alone.
+        pass
+    elif text.startswith("0x"):
+        text = format_hex(text)
+    elif "e" in text:
+        text = format_scientific_notation(text)
+    elif text.endswith(("j", "l")):
+        text = format_long_or_complex_number(text)
+    else:
+        text = format_float_or_int_string(text)
+    leaf.value = text
diff --git a/.vim/bundle/black/src/black/output.py b/.vim/bundle/black/src/black/output.py
new file mode 100644 (file)
index 0000000..fd3dbb3
--- /dev/null
@@ -0,0 +1,102 @@
+"""Nice output for Black.
+
+The double calls are for patching purposes in tests.
+"""
+
+import json
+from typing import Any, Optional
+from mypy_extensions import mypyc_attr
+import tempfile
+
+from click import echo, style
+
+
+def _out(message: Optional[str] = None, nl: bool = True, **styles: Any) -> None:
+    if message is not None:
+        if "bold" not in styles:
+            styles["bold"] = True
+        message = style(message, **styles)
+    echo(message, nl=nl, err=True)
+
+
+def _err(message: Optional[str] = None, nl: bool = True, **styles: Any) -> None:
+    if message is not None:
+        if "fg" not in styles:
+            styles["fg"] = "red"
+        message = style(message, **styles)
+    echo(message, nl=nl, err=True)
+
+
+def out(message: Optional[str] = None, nl: bool = True, **styles: Any) -> None:
+    _out(message, nl=nl, **styles)
+
+
+def err(message: Optional[str] = None, nl: bool = True, **styles: Any) -> None:
+    _err(message, nl=nl, **styles)
+
+
+def ipynb_diff(a: str, b: str, a_name: str, b_name: str) -> str:
+    """Return a unified diff string between each cell in notebooks `a` and `b`."""
+    a_nb = json.loads(a)
+    b_nb = json.loads(b)
+    diff_lines = [
+        diff(
+            "".join(a_nb["cells"][cell_number]["source"]) + "\n",
+            "".join(b_nb["cells"][cell_number]["source"]) + "\n",
+            f"{a_name}:cell_{cell_number}",
+            f"{b_name}:cell_{cell_number}",
+        )
+        for cell_number, cell in enumerate(a_nb["cells"])
+        if cell["cell_type"] == "code"
+    ]
+    return "".join(diff_lines)
+
+
+def diff(a: str, b: str, a_name: str, b_name: str) -> str:
+    """Return a unified diff string between strings `a` and `b`."""
+    import difflib
+
+    a_lines = [line for line in a.splitlines(keepends=True)]
+    b_lines = [line for line in b.splitlines(keepends=True)]
+    diff_lines = []
+    for line in difflib.unified_diff(
+        a_lines, b_lines, fromfile=a_name, tofile=b_name, n=5
+    ):
+        # Work around https://bugs.python.org/issue2142
+        # See:
+        # https://www.gnu.org/software/diffutils/manual/html_node/Incomplete-Lines.html
+        if line[-1] == "\n":
+            diff_lines.append(line)
+        else:
+            diff_lines.append(line + "\n")
+            diff_lines.append("\\ No newline at end of file\n")
+    return "".join(diff_lines)
+
+
+def color_diff(contents: str) -> str:
+    """Inject the ANSI color codes to the diff."""
+    lines = contents.split("\n")
+    for i, line in enumerate(lines):
+        if line.startswith("+++") or line.startswith("---"):
+            line = "\033[1;37m" + line + "\033[0m"  # bold white, reset
+        elif line.startswith("@@"):
+            line = "\033[36m" + line + "\033[0m"  # cyan, reset
+        elif line.startswith("+"):
+            line = "\033[32m" + line + "\033[0m"  # green, reset
+        elif line.startswith("-"):
+            line = "\033[31m" + line + "\033[0m"  # red, reset
+        lines[i] = line
+    return "\n".join(lines)
+
+
+@mypyc_attr(patchable=True)
+def dump_to_file(*output: str, ensure_final_newline: bool = True) -> str:
+    """Dump `output` to a temporary file. Return path to the file."""
+    with tempfile.NamedTemporaryFile(
+        mode="w", prefix="blk_", suffix=".log", delete=False, encoding="utf8"
+    ) as f:
+        for lines in output:
+            f.write(lines)
+            if ensure_final_newline and lines and lines[-1] != "\n":
+                f.write("\n")
+    return f.name
diff --git a/.vim/bundle/black/src/black/parsing.py b/.vim/bundle/black/src/black/parsing.py
new file mode 100644 (file)
index 0000000..0b8d984
--- /dev/null
@@ -0,0 +1,223 @@
+"""
+Parse Python code and perform AST validation.
+"""
+import ast
+import sys
+from typing import Iterable, Iterator, List, Set, Union, Tuple
+
+# lib2to3 fork
+from blib2to3.pytree import Node, Leaf
+from blib2to3 import pygram, pytree
+from blib2to3.pgen2 import driver
+from blib2to3.pgen2.grammar import Grammar
+from blib2to3.pgen2.parse import ParseError
+
+from black.mode import TargetVersion, Feature, supports_feature
+from black.nodes import syms
+
+try:
+    from typed_ast import ast3, ast27
+except ImportError:
+    if sys.version_info < (3, 8):
+        print(
+            "The typed_ast package is required but not installed.\n"
+            "You can upgrade to Python 3.8+ or install typed_ast with\n"
+            "`python3 -m pip install typed-ast`.",
+            file=sys.stderr,
+        )
+        sys.exit(1)
+    else:
+        ast3 = ast27 = ast
+
+
+class InvalidInput(ValueError):
+    """Raised when input source code fails all parse attempts."""
+
+
+def get_grammars(target_versions: Set[TargetVersion]) -> List[Grammar]:
+    if not target_versions:
+        # No target_version specified, so try all grammars.
+        return [
+            # Python 3.7+
+            pygram.python_grammar_no_print_statement_no_exec_statement_async_keywords,
+            # Python 3.0-3.6
+            pygram.python_grammar_no_print_statement_no_exec_statement,
+            # Python 2.7 with future print_function import
+            pygram.python_grammar_no_print_statement,
+            # Python 2.7
+            pygram.python_grammar,
+        ]
+
+    if all(version.is_python2() for version in target_versions):
+        # Python 2-only code, so try Python 2 grammars.
+        return [
+            # Python 2.7 with future print_function import
+            pygram.python_grammar_no_print_statement,
+            # Python 2.7
+            pygram.python_grammar,
+        ]
+
+    # Python 3-compatible code, so only try Python 3 grammar.
+    grammars = []
+    # If we have to parse both, try to parse async as a keyword first
+    if not supports_feature(target_versions, Feature.ASYNC_IDENTIFIERS):
+        # Python 3.7+
+        grammars.append(
+            pygram.python_grammar_no_print_statement_no_exec_statement_async_keywords
+        )
+    if not supports_feature(target_versions, Feature.ASYNC_KEYWORDS):
+        # Python 3.0-3.6
+        grammars.append(pygram.python_grammar_no_print_statement_no_exec_statement)
+    # At least one of the above branches must have been taken, because every Python
+    # version has exactly one of the two 'ASYNC_*' flags
+    return grammars
+
+
+def lib2to3_parse(src_txt: str, target_versions: Iterable[TargetVersion] = ()) -> Node:
+    """Given a string with source, return the lib2to3 Node."""
+    if not src_txt.endswith("\n"):
+        src_txt += "\n"
+
+    for grammar in get_grammars(set(target_versions)):
+        drv = driver.Driver(grammar, pytree.convert)
+        try:
+            result = drv.parse_string(src_txt, True)
+            break
+
+        except ParseError as pe:
+            lineno, column = pe.context[1]
+            lines = src_txt.splitlines()
+            try:
+                faulty_line = lines[lineno - 1]
+            except IndexError:
+                faulty_line = "<line number missing in source>"
+            exc = InvalidInput(f"Cannot parse: {lineno}:{column}: {faulty_line}")
+    else:
+        raise exc from None
+
+    if isinstance(result, Leaf):
+        result = Node(syms.file_input, [result])
+    return result
+
+
+def lib2to3_unparse(node: Node) -> str:
+    """Given a lib2to3 node, return its string representation."""
+    code = str(node)
+    return code
+
+
+def parse_single_version(
+    src: str, version: Tuple[int, int]
+) -> Union[ast.AST, ast3.AST, ast27.AST]:
+    filename = "<unknown>"
+    # typed_ast is needed because of feature version limitations in the builtin ast
+    if sys.version_info >= (3, 8) and version >= (3,):
+        return ast.parse(src, filename, feature_version=version)
+    elif version >= (3,):
+        return ast3.parse(src, filename, feature_version=version[1])
+    elif version == (2, 7):
+        return ast27.parse(src)
+    raise AssertionError("INTERNAL ERROR: Tried parsing unsupported Python version!")
+
+
+def parse_ast(src: str) -> Union[ast.AST, ast3.AST, ast27.AST]:
+    # TODO: support Python 4+ ;)
+    versions = [(3, minor) for minor in range(3, sys.version_info[1] + 1)]
+
+    if ast27.__name__ != "ast":
+        versions.append((2, 7))
+
+    first_error = ""
+    for version in sorted(versions, reverse=True):
+        try:
+            return parse_single_version(src, version)
+        except SyntaxError as e:
+            if not first_error:
+                first_error = str(e)
+
+    raise SyntaxError(first_error)
+
+
+def stringify_ast(
+    node: Union[ast.AST, ast3.AST, ast27.AST], depth: int = 0
+) -> Iterator[str]:
+    """Simple visitor generating strings to compare ASTs by content."""
+
+    node = fixup_ast_constants(node)
+
+    yield f"{'  ' * depth}{node.__class__.__name__}("
+
+    for field in sorted(node._fields):  # noqa: F402
+        # TypeIgnore has only one field 'lineno' which breaks this comparison
+        type_ignore_classes = (ast3.TypeIgnore, ast27.TypeIgnore)
+        if sys.version_info >= (3, 8):
+            type_ignore_classes += (ast.TypeIgnore,)
+        if isinstance(node, type_ignore_classes):
+            break
+
+        try:
+            value = getattr(node, field)
+        except AttributeError:
+            continue
+
+        yield f"{'  ' * (depth+1)}{field}="
+
+        if isinstance(value, list):
+            for item in value:
+                # Ignore nested tuples within del statements, because we may insert
+                # parentheses and they change the AST.
+                if (
+                    field == "targets"
+                    and isinstance(node, (ast.Delete, ast3.Delete, ast27.Delete))
+                    and isinstance(item, (ast.Tuple, ast3.Tuple, ast27.Tuple))
+                ):
+                    for item in item.elts:
+                        yield from stringify_ast(item, depth + 2)
+
+                elif isinstance(item, (ast.AST, ast3.AST, ast27.AST)):
+                    yield from stringify_ast(item, depth + 2)
+
+        elif isinstance(value, (ast.AST, ast3.AST, ast27.AST)):
+            yield from stringify_ast(value, depth + 2)
+
+        else:
+            # Constant strings may be indented across newlines, if they are
+            # docstrings; fold spaces after newlines when comparing. Similarly,
+            # trailing and leading space may be removed.
+            # Note that when formatting Python 2 code, at least with Windows
+            # line-endings, docstrings can end up here as bytes instead of
+            # str so make sure that we handle both cases.
+            if (
+                isinstance(node, ast.Constant)
+                and field == "value"
+                and isinstance(value, (str, bytes))
+            ):
+                lineend = "\n" if isinstance(value, str) else b"\n"
+                # To normalize, we strip any leading and trailing space from
+                # each line...
+                stripped = [line.strip() for line in value.splitlines()]
+                normalized = lineend.join(stripped)  # type: ignore[attr-defined]
+                # ...and remove any blank lines at the beginning and end of
+                # the whole string
+                normalized = normalized.strip()
+            else:
+                normalized = value
+            yield f"{'  ' * (depth+2)}{normalized!r},  # {value.__class__.__name__}"
+
+    yield f"{'  ' * depth})  # /{node.__class__.__name__}"
+
+
+def fixup_ast_constants(
+    node: Union[ast.AST, ast3.AST, ast27.AST]
+) -> Union[ast.AST, ast3.AST, ast27.AST]:
+    """Map ast nodes deprecated in 3.8 to Constant."""
+    if isinstance(node, (ast.Str, ast3.Str, ast27.Str, ast.Bytes, ast3.Bytes)):
+        return ast.Constant(value=node.s)
+
+    if isinstance(node, (ast.Num, ast3.Num, ast27.Num)):
+        return ast.Constant(value=node.n)
+
+    if isinstance(node, (ast.NameConstant, ast3.NameConstant)):
+        return ast.Constant(value=node.value)
+
+    return node
diff --git a/.vim/bundle/black/src/black/py.typed b/.vim/bundle/black/src/black/py.typed
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/src/black/report.py b/.vim/bundle/black/src/black/report.py
new file mode 100644 (file)
index 0000000..7e1c8b4
--- /dev/null
@@ -0,0 +1,104 @@
+"""
+Summarize Black runs to users.
+"""
+from dataclasses import dataclass
+from enum import Enum
+from pathlib import Path
+
+from click import style
+
+from black.output import out, err
+
+
+class Changed(Enum):
+    NO = 0
+    CACHED = 1
+    YES = 2
+
+
+class NothingChanged(UserWarning):
+    """Raised when reformatted code is the same as source."""
+
+
+@dataclass
+class Report:
+    """Provides a reformatting counter. Can be rendered with `str(report)`."""
+
+    check: bool = False
+    diff: bool = False
+    quiet: bool = False
+    verbose: bool = False
+    change_count: int = 0
+    same_count: int = 0
+    failure_count: int = 0
+
+    def done(self, src: Path, changed: Changed) -> None:
+        """Increment the counter for successful reformatting. Write out a message."""
+        if changed is Changed.YES:
+            reformatted = "would reformat" if self.check or self.diff else "reformatted"
+            if self.verbose or not self.quiet:
+                out(f"{reformatted} {src}")
+            self.change_count += 1
+        else:
+            if self.verbose:
+                if changed is Changed.NO:
+                    msg = f"{src} already well formatted, good job."
+                else:
+                    msg = f"{src} wasn't modified on disk since last run."
+                out(msg, bold=False)
+            self.same_count += 1
+
+    def failed(self, src: Path, message: str) -> None:
+        """Increment the counter for failed reformatting. Write out a message."""
+        err(f"error: cannot format {src}: {message}")
+        self.failure_count += 1
+
+    def path_ignored(self, path: Path, message: str) -> None:
+        if self.verbose:
+            out(f"{path} ignored: {message}", bold=False)
+
+    @property
+    def return_code(self) -> int:
+        """Return the exit code that the app should use.
+
+        This considers the current state of changed files and failures:
+        - if there were any failures, return 123;
+        - if any files were changed and --check is being used, return 1;
+        - otherwise return 0.
+        """
+        # According to http://tldp.org/LDP/abs/html/exitcodes.html starting with
+        # 126 we have special return codes reserved by the shell.
+        if self.failure_count:
+            return 123
+
+        elif self.change_count and self.check:
+            return 1
+
+        return 0
+
+    def __str__(self) -> str:
+        """Render a color report of the current state.
+
+        Use `click.unstyle` to remove colors.
+        """
+        if self.check or self.diff:
+            reformatted = "would be reformatted"
+            unchanged = "would be left unchanged"
+            failed = "would fail to reformat"
+        else:
+            reformatted = "reformatted"
+            unchanged = "left unchanged"
+            failed = "failed to reformat"
+        report = []
+        if self.change_count:
+            s = "s" if self.change_count > 1 else ""
+            report.append(
+                style(f"{self.change_count} file{s} {reformatted}", bold=True)
+            )
+        if self.same_count:
+            s = "s" if self.same_count > 1 else ""
+            report.append(f"{self.same_count} file{s} {unchanged}")
+        if self.failure_count:
+            s = "s" if self.failure_count > 1 else ""
+            report.append(style(f"{self.failure_count} file{s} {failed}", fg="red"))
+        return ", ".join(report) + "."
diff --git a/.vim/bundle/black/src/black/rusty.py b/.vim/bundle/black/src/black/rusty.py
new file mode 100644 (file)
index 0000000..822e3d7
--- /dev/null
@@ -0,0 +1,28 @@
+"""An error-handling model influenced by that used by the Rust programming language
+
+See https://doc.rust-lang.org/book/ch09-00-error-handling.html.
+"""
+from typing import Generic, TypeVar, Union
+
+
+T = TypeVar("T")
+E = TypeVar("E", bound=Exception)
+
+
+class Ok(Generic[T]):
+    def __init__(self, value: T) -> None:
+        self._value = value
+
+    def ok(self) -> T:
+        return self._value
+
+
+class Err(Generic[E]):
+    def __init__(self, e: E) -> None:
+        self._e = e
+
+    def err(self) -> E:
+        return self._e
+
+
+Result = Union[Ok[T], Err[E]]
diff --git a/.vim/bundle/black/src/black/strings.py b/.vim/bundle/black/src/black/strings.py
new file mode 100644 (file)
index 0000000..d7b6c24
--- /dev/null
@@ -0,0 +1,216 @@
+"""
+Simple formatting on strings. Further string formatting code is in trans.py.
+"""
+
+import regex as re
+import sys
+from typing import List, Pattern
+
+
+STRING_PREFIX_CHARS = "furbFURB"  # All possible string prefix characters.
+
+
+def sub_twice(regex: Pattern[str], replacement: str, original: str) -> str:
+    """Replace `regex` with `replacement` twice on `original`.
+
+    This is used by string normalization to perform replaces on
+    overlapping matches.
+    """
+    return regex.sub(replacement, regex.sub(replacement, original))
+
+
+def has_triple_quotes(string: str) -> bool:
+    """
+    Returns:
+        True iff @string starts with three quotation characters.
+    """
+    raw_string = string.lstrip(STRING_PREFIX_CHARS)
+    return raw_string[:3] in {'"""', "'''"}
+
+
+def lines_with_leading_tabs_expanded(s: str) -> List[str]:
+    """
+    Splits string into lines and expands only leading tabs (following the normal
+    Python rules)
+    """
+    lines = []
+    for line in s.splitlines():
+        # Find the index of the first non-whitespace character after a string of
+        # whitespace that includes at least one tab
+        match = re.match(r"\s*\t+\s*(\S)", line)
+        if match:
+            first_non_whitespace_idx = match.start(1)
+
+            lines.append(
+                line[:first_non_whitespace_idx].expandtabs()
+                + line[first_non_whitespace_idx:]
+            )
+        else:
+            lines.append(line)
+    return lines
+
+
+def fix_docstring(docstring: str, prefix: str) -> str:
+    # https://www.python.org/dev/peps/pep-0257/#handling-docstring-indentation
+    if not docstring:
+        return ""
+    lines = lines_with_leading_tabs_expanded(docstring)
+    # Determine minimum indentation (first line doesn't count):
+    indent = sys.maxsize
+    for line in lines[1:]:
+        stripped = line.lstrip()
+        if stripped:
+            indent = min(indent, len(line) - len(stripped))
+    # Remove indentation (first line is special):
+    trimmed = [lines[0].strip()]
+    if indent < sys.maxsize:
+        last_line_idx = len(lines) - 2
+        for i, line in enumerate(lines[1:]):
+            stripped_line = line[indent:].rstrip()
+            if stripped_line or i == last_line_idx:
+                trimmed.append(prefix + stripped_line)
+            else:
+                trimmed.append("")
+    return "\n".join(trimmed)
+
+
+def get_string_prefix(string: str) -> str:
+    """
+    Pre-conditions:
+        * assert_is_leaf_string(@string)
+
+    Returns:
+        @string's prefix (e.g. '', 'r', 'f', or 'rf').
+    """
+    assert_is_leaf_string(string)
+
+    prefix = ""
+    prefix_idx = 0
+    while string[prefix_idx] in STRING_PREFIX_CHARS:
+        prefix += string[prefix_idx]
+        prefix_idx += 1
+
+    return prefix
+
+
+def assert_is_leaf_string(string: str) -> None:
+    """
+    Checks the pre-condition that @string has the format that you would expect
+    of `leaf.value` where `leaf` is some Leaf such that `leaf.type ==
+    token.STRING`. A more precise description of the pre-conditions that are
+    checked are listed below.
+
+    Pre-conditions:
+        * @string starts with either ', ", <prefix>', or <prefix>" where
+        `set(<prefix>)` is some subset of `set(STRING_PREFIX_CHARS)`.
+        * @string ends with a quote character (' or ").
+
+    Raises:
+        AssertionError(...) if the pre-conditions listed above are not
+        satisfied.
+    """
+    dquote_idx = string.find('"')
+    squote_idx = string.find("'")
+    if -1 in [dquote_idx, squote_idx]:
+        quote_idx = max(dquote_idx, squote_idx)
+    else:
+        quote_idx = min(squote_idx, dquote_idx)
+
+    assert (
+        0 <= quote_idx < len(string) - 1
+    ), f"{string!r} is missing a starting quote character (' or \")."
+    assert string[-1] in (
+        "'",
+        '"',
+    ), f"{string!r} is missing an ending quote character (' or \")."
+    assert set(string[:quote_idx]).issubset(
+        set(STRING_PREFIX_CHARS)
+    ), f"{set(string[:quote_idx])} is NOT a subset of {set(STRING_PREFIX_CHARS)}."
+
+
+def normalize_string_prefix(s: str, remove_u_prefix: bool = False) -> str:
+    """Make all string prefixes lowercase.
+
+    If remove_u_prefix is given, also removes any u prefix from the string.
+    """
+    match = re.match(r"^([" + STRING_PREFIX_CHARS + r"]*)(.*)$", s, re.DOTALL)
+    assert match is not None, f"failed to match string {s!r}"
+    orig_prefix = match.group(1)
+    new_prefix = orig_prefix.replace("F", "f").replace("B", "b").replace("U", "u")
+    if remove_u_prefix:
+        new_prefix = new_prefix.replace("u", "")
+    return f"{new_prefix}{match.group(2)}"
+
+
+def normalize_string_quotes(s: str) -> str:
+    """Prefer double quotes but only if it doesn't cause more escaping.
+
+    Adds or removes backslashes as appropriate. Doesn't parse and fix
+    strings nested in f-strings.
+    """
+    value = s.lstrip(STRING_PREFIX_CHARS)
+    if value[:3] == '"""':
+        return s
+
+    elif value[:3] == "'''":
+        orig_quote = "'''"
+        new_quote = '"""'
+    elif value[0] == '"':
+        orig_quote = '"'
+        new_quote = "'"
+    else:
+        orig_quote = "'"
+        new_quote = '"'
+    first_quote_pos = s.find(orig_quote)
+    if first_quote_pos == -1:
+        return s  # There's an internal error
+
+    prefix = s[:first_quote_pos]
+    unescaped_new_quote = re.compile(rf"(([^\\]|^)(\\\\)*){new_quote}")
+    escaped_new_quote = re.compile(rf"([^\\]|^)\\((?:\\\\)*){new_quote}")
+    escaped_orig_quote = re.compile(rf"([^\\]|^)\\((?:\\\\)*){orig_quote}")
+    body = s[first_quote_pos + len(orig_quote) : -len(orig_quote)]
+    if "r" in prefix.casefold():
+        if unescaped_new_quote.search(body):
+            # There's at least one unescaped new_quote in this raw string
+            # so converting is impossible
+            return s
+
+        # Do not introduce or remove backslashes in raw strings
+        new_body = body
+    else:
+        # remove unnecessary escapes
+        new_body = sub_twice(escaped_new_quote, rf"\1\2{new_quote}", body)
+        if body != new_body:
+            # Consider the string without unnecessary escapes as the original
+            body = new_body
+            s = f"{prefix}{orig_quote}{body}{orig_quote}"
+        new_body = sub_twice(escaped_orig_quote, rf"\1\2{orig_quote}", new_body)
+        new_body = sub_twice(unescaped_new_quote, rf"\1\\{new_quote}", new_body)
+    if "f" in prefix.casefold():
+        matches = re.findall(
+            r"""
+            (?:(?<!\{)|^)\{  # start of the string or a non-{ followed by a single {
+                ([^{].*?)  # contents of the brackets except if begins with {{
+            \}(?:(?!\})|$)  # A } followed by end of the string or a non-}
+            """,
+            new_body,
+            re.VERBOSE,
+        )
+        for m in matches:
+            if "\\" in str(m):
+                # Do not introduce backslashes in interpolated expressions
+                return s
+
+    if new_quote == '"""' and new_body[-1:] == '"':
+        # edge case:
+        new_body = new_body[:-1] + '\\"'
+    orig_escape_count = body.count("\\")
+    new_escape_count = new_body.count("\\")
+    if new_escape_count > orig_escape_count:
+        return s  # Do not introduce more escaping
+
+    if new_escape_count == orig_escape_count and orig_quote == '"':
+        return s  # Prefer double quotes
+
+    return f"{prefix}{new_quote}{new_body}{new_quote}"
diff --git a/.vim/bundle/black/src/black/trans.py b/.vim/bundle/black/src/black/trans.py
new file mode 100644 (file)
index 0000000..023dcd3
--- /dev/null
@@ -0,0 +1,2011 @@
+"""
+String transformers that can split and merge strings.
+"""
+from abc import ABC, abstractmethod
+from collections import defaultdict
+from dataclasses import dataclass
+import regex as re
+from typing import (
+    Any,
+    Callable,
+    Collection,
+    Dict,
+    Iterable,
+    Iterator,
+    List,
+    Optional,
+    Sequence,
+    Set,
+    Tuple,
+    TypeVar,
+    Union,
+)
+
+from black.rusty import Result, Ok, Err
+
+from black.mode import Feature
+from black.nodes import syms, replace_child, parent_type
+from black.nodes import is_empty_par, is_empty_lpar, is_empty_rpar
+from black.nodes import OPENING_BRACKETS, CLOSING_BRACKETS, STANDALONE_COMMENT
+from black.lines import Line, append_leaves
+from black.brackets import BracketMatchError
+from black.comments import contains_pragma_comment
+from black.strings import has_triple_quotes, get_string_prefix, assert_is_leaf_string
+from black.strings import normalize_string_quotes
+
+from blib2to3.pytree import Leaf, Node
+from blib2to3.pgen2 import token
+
+
+class CannotTransform(Exception):
+    """Base class for errors raised by Transformers."""
+
+
+# types
+T = TypeVar("T")
+LN = Union[Leaf, Node]
+Transformer = Callable[[Line, Collection[Feature]], Iterator[Line]]
+Index = int
+NodeType = int
+ParserState = int
+StringID = int
+TResult = Result[T, CannotTransform]  # (T)ransform Result
+TMatchResult = TResult[Index]
+
+
+def TErr(err_msg: str) -> Err[CannotTransform]:
+    """(T)ransform Err
+
+    Convenience function used when working with the TResult type.
+    """
+    cant_transform = CannotTransform(err_msg)
+    return Err(cant_transform)
+
+
+@dataclass  # type: ignore
+class StringTransformer(ABC):
+    """
+    An implementation of the Transformer protocol that relies on its
+    subclasses overriding the template methods `do_match(...)` and
+    `do_transform(...)`.
+
+    This Transformer works exclusively on strings (for example, by merging
+    or splitting them).
+
+    The following sections can be found among the docstrings of each concrete
+    StringTransformer subclass.
+
+    Requirements:
+        Which requirements must be met of the given Line for this
+        StringTransformer to be applied?
+
+    Transformations:
+        If the given Line meets all of the above requirements, which string
+        transformations can you expect to be applied to it by this
+        StringTransformer?
+
+    Collaborations:
+        What contractual agreements does this StringTransformer have with other
+        StringTransfomers? Such collaborations should be eliminated/minimized
+        as much as possible.
+    """
+
+    line_length: int
+    normalize_strings: bool
+    __name__ = "StringTransformer"
+
+    @abstractmethod
+    def do_match(self, line: Line) -> TMatchResult:
+        """
+        Returns:
+            * Ok(string_idx) such that `line.leaves[string_idx]` is our target
+            string, if a match was able to be made.
+                OR
+            * Err(CannotTransform), if a match was not able to be made.
+        """
+
+    @abstractmethod
+    def do_transform(self, line: Line, string_idx: int) -> Iterator[TResult[Line]]:
+        """
+        Yields:
+            * Ok(new_line) where new_line is the new transformed line.
+                OR
+            * Err(CannotTransform) if the transformation failed for some reason. The
+            `do_match(...)` template method should usually be used to reject
+            the form of the given Line, but in some cases it is difficult to
+            know whether or not a Line meets the StringTransformer's
+            requirements until the transformation is already midway.
+
+        Side Effects:
+            This method should NOT mutate @line directly, but it MAY mutate the
+            Line's underlying Node structure. (WARNING: If the underlying Node
+            structure IS altered, then this method should NOT be allowed to
+            yield an CannotTransform after that point.)
+        """
+
+    def __call__(self, line: Line, _features: Collection[Feature]) -> Iterator[Line]:
+        """
+        StringTransformer instances have a call signature that mirrors that of
+        the Transformer type.
+
+        Raises:
+            CannotTransform(...) if the concrete StringTransformer class is unable
+            to transform @line.
+        """
+        # Optimization to avoid calling `self.do_match(...)` when the line does
+        # not contain any string.
+        if not any(leaf.type == token.STRING for leaf in line.leaves):
+            raise CannotTransform("There are no strings in this line.")
+
+        match_result = self.do_match(line)
+
+        if isinstance(match_result, Err):
+            cant_transform = match_result.err()
+            raise CannotTransform(
+                f"The string transformer {self.__class__.__name__} does not recognize"
+                " this line as one that it can transform."
+            ) from cant_transform
+
+        string_idx = match_result.ok()
+
+        for line_result in self.do_transform(line, string_idx):
+            if isinstance(line_result, Err):
+                cant_transform = line_result.err()
+                raise CannotTransform(
+                    "StringTransformer failed while attempting to transform string."
+                ) from cant_transform
+            line = line_result.ok()
+            yield line
+
+
+@dataclass
+class CustomSplit:
+    """A custom (i.e. manual) string split.
+
+    A single CustomSplit instance represents a single substring.
+
+    Examples:
+        Consider the following string:
+        ```
+        "Hi there friend."
+        " This is a custom"
+        f" string {split}."
+        ```
+
+        This string will correspond to the following three CustomSplit instances:
+        ```
+        CustomSplit(False, 16)
+        CustomSplit(False, 17)
+        CustomSplit(True, 16)
+        ```
+    """
+
+    has_prefix: bool
+    break_idx: int
+
+
+class CustomSplitMapMixin:
+    """
+    This mixin class is used to map merged strings to a sequence of
+    CustomSplits, which will then be used to re-split the strings iff none of
+    the resultant substrings go over the configured max line length.
+    """
+
+    _Key = Tuple[StringID, str]
+    _CUSTOM_SPLIT_MAP: Dict[_Key, Tuple[CustomSplit, ...]] = defaultdict(tuple)
+
+    @staticmethod
+    def _get_key(string: str) -> "CustomSplitMapMixin._Key":
+        """
+        Returns:
+            A unique identifier that is used internally to map @string to a
+            group of custom splits.
+        """
+        return (id(string), string)
+
+    def add_custom_splits(
+        self, string: str, custom_splits: Iterable[CustomSplit]
+    ) -> None:
+        """Custom Split Map Setter Method
+
+        Side Effects:
+            Adds a mapping from @string to the custom splits @custom_splits.
+        """
+        key = self._get_key(string)
+        self._CUSTOM_SPLIT_MAP[key] = tuple(custom_splits)
+
+    def pop_custom_splits(self, string: str) -> List[CustomSplit]:
+        """Custom Split Map Getter Method
+
+        Returns:
+            * A list of the custom splits that are mapped to @string, if any
+            exist.
+                OR
+            * [], otherwise.
+
+        Side Effects:
+            Deletes the mapping between @string and its associated custom
+            splits (which are returned to the caller).
+        """
+        key = self._get_key(string)
+
+        custom_splits = self._CUSTOM_SPLIT_MAP[key]
+        del self._CUSTOM_SPLIT_MAP[key]
+
+        return list(custom_splits)
+
+    def has_custom_splits(self, string: str) -> bool:
+        """
+        Returns:
+            True iff @string is associated with a set of custom splits.
+        """
+        key = self._get_key(string)
+        return key in self._CUSTOM_SPLIT_MAP
+
+
+class StringMerger(CustomSplitMapMixin, StringTransformer):
+    """StringTransformer that merges strings together.
+
+    Requirements:
+        (A) The line contains adjacent strings such that ALL of the validation checks
+        listed in StringMerger.__validate_msg(...)'s docstring pass.
+            OR
+        (B) The line contains a string which uses line continuation backslashes.
+
+    Transformations:
+        Depending on which of the two requirements above where met, either:
+
+        (A) The string group associated with the target string is merged.
+            OR
+        (B) All line-continuation backslashes are removed from the target string.
+
+    Collaborations:
+        StringMerger provides custom split information to StringSplitter.
+    """
+
+    def do_match(self, line: Line) -> TMatchResult:
+        LL = line.leaves
+
+        is_valid_index = is_valid_index_factory(LL)
+
+        for (i, leaf) in enumerate(LL):
+            if (
+                leaf.type == token.STRING
+                and is_valid_index(i + 1)
+                and LL[i + 1].type == token.STRING
+            ):
+                return Ok(i)
+
+            if leaf.type == token.STRING and "\\\n" in leaf.value:
+                return Ok(i)
+
+        return TErr("This line has no strings that need merging.")
+
+    def do_transform(self, line: Line, string_idx: int) -> Iterator[TResult[Line]]:
+        new_line = line
+        rblc_result = self._remove_backslash_line_continuation_chars(
+            new_line, string_idx
+        )
+        if isinstance(rblc_result, Ok):
+            new_line = rblc_result.ok()
+
+        msg_result = self._merge_string_group(new_line, string_idx)
+        if isinstance(msg_result, Ok):
+            new_line = msg_result.ok()
+
+        if isinstance(rblc_result, Err) and isinstance(msg_result, Err):
+            msg_cant_transform = msg_result.err()
+            rblc_cant_transform = rblc_result.err()
+            cant_transform = CannotTransform(
+                "StringMerger failed to merge any strings in this line."
+            )
+
+            # Chain the errors together using `__cause__`.
+            msg_cant_transform.__cause__ = rblc_cant_transform
+            cant_transform.__cause__ = msg_cant_transform
+
+            yield Err(cant_transform)
+        else:
+            yield Ok(new_line)
+
+    @staticmethod
+    def _remove_backslash_line_continuation_chars(
+        line: Line, string_idx: int
+    ) -> TResult[Line]:
+        """
+        Merge strings that were split across multiple lines using
+        line-continuation backslashes.
+
+        Returns:
+            Ok(new_line), if @line contains backslash line-continuation
+            characters.
+                OR
+            Err(CannotTransform), otherwise.
+        """
+        LL = line.leaves
+
+        string_leaf = LL[string_idx]
+        if not (
+            string_leaf.type == token.STRING
+            and "\\\n" in string_leaf.value
+            and not has_triple_quotes(string_leaf.value)
+        ):
+            return TErr(
+                f"String leaf {string_leaf} does not contain any backslash line"
+                " continuation characters."
+            )
+
+        new_line = line.clone()
+        new_line.comments = line.comments.copy()
+        append_leaves(new_line, line, LL)
+
+        new_string_leaf = new_line.leaves[string_idx]
+        new_string_leaf.value = new_string_leaf.value.replace("\\\n", "")
+
+        return Ok(new_line)
+
+    def _merge_string_group(self, line: Line, string_idx: int) -> TResult[Line]:
+        """
+        Merges string group (i.e. set of adjacent strings) where the first
+        string in the group is `line.leaves[string_idx]`.
+
+        Returns:
+            Ok(new_line), if ALL of the validation checks found in
+            __validate_msg(...) pass.
+                OR
+            Err(CannotTransform), otherwise.
+        """
+        LL = line.leaves
+
+        is_valid_index = is_valid_index_factory(LL)
+
+        vresult = self._validate_msg(line, string_idx)
+        if isinstance(vresult, Err):
+            return vresult
+
+        # If the string group is wrapped inside an Atom node, we must make sure
+        # to later replace that Atom with our new (merged) string leaf.
+        atom_node = LL[string_idx].parent
+
+        # We will place BREAK_MARK in between every two substrings that we
+        # merge. We will then later go through our final result and use the
+        # various instances of BREAK_MARK we find to add the right values to
+        # the custom split map.
+        BREAK_MARK = "@@@@@ BLACK BREAKPOINT MARKER @@@@@"
+
+        QUOTE = LL[string_idx].value[-1]
+
+        def make_naked(string: str, string_prefix: str) -> str:
+            """Strip @string (i.e. make it a "naked" string)
+
+            Pre-conditions:
+                * assert_is_leaf_string(@string)
+
+            Returns:
+                A string that is identical to @string except that
+                @string_prefix has been stripped, the surrounding QUOTE
+                characters have been removed, and any remaining QUOTE
+                characters have been escaped.
+            """
+            assert_is_leaf_string(string)
+
+            RE_EVEN_BACKSLASHES = r"(?:(?<!\\)(?:\\\\)*)"
+            naked_string = string[len(string_prefix) + 1 : -1]
+            naked_string = re.sub(
+                "(" + RE_EVEN_BACKSLASHES + ")" + QUOTE, r"\1\\" + QUOTE, naked_string
+            )
+            return naked_string
+
+        # Holds the CustomSplit objects that will later be added to the custom
+        # split map.
+        custom_splits = []
+
+        # Temporary storage for the 'has_prefix' part of the CustomSplit objects.
+        prefix_tracker = []
+
+        # Sets the 'prefix' variable. This is the prefix that the final merged
+        # string will have.
+        next_str_idx = string_idx
+        prefix = ""
+        while (
+            not prefix
+            and is_valid_index(next_str_idx)
+            and LL[next_str_idx].type == token.STRING
+        ):
+            prefix = get_string_prefix(LL[next_str_idx].value).lower()
+            next_str_idx += 1
+
+        # The next loop merges the string group. The final string will be
+        # contained in 'S'.
+        #
+        # The following convenience variables are used:
+        #
+        #   S: string
+        #   NS: naked string
+        #   SS: next string
+        #   NSS: naked next string
+        S = ""
+        NS = ""
+        num_of_strings = 0
+        next_str_idx = string_idx
+        while is_valid_index(next_str_idx) and LL[next_str_idx].type == token.STRING:
+            num_of_strings += 1
+
+            SS = LL[next_str_idx].value
+            next_prefix = get_string_prefix(SS).lower()
+
+            # If this is an f-string group but this substring is not prefixed
+            # with 'f'...
+            if "f" in prefix and "f" not in next_prefix:
+                # Then we must escape any braces contained in this substring.
+                SS = re.subf(r"(\{|\})", "{1}{1}", SS)
+
+            NSS = make_naked(SS, next_prefix)
+
+            has_prefix = bool(next_prefix)
+            prefix_tracker.append(has_prefix)
+
+            S = prefix + QUOTE + NS + NSS + BREAK_MARK + QUOTE
+            NS = make_naked(S, prefix)
+
+            next_str_idx += 1
+
+        S_leaf = Leaf(token.STRING, S)
+        if self.normalize_strings:
+            S_leaf.value = normalize_string_quotes(S_leaf.value)
+
+        # Fill the 'custom_splits' list with the appropriate CustomSplit objects.
+        temp_string = S_leaf.value[len(prefix) + 1 : -1]
+        for has_prefix in prefix_tracker:
+            mark_idx = temp_string.find(BREAK_MARK)
+            assert (
+                mark_idx >= 0
+            ), "Logic error while filling the custom string breakpoint cache."
+
+            temp_string = temp_string[mark_idx + len(BREAK_MARK) :]
+            breakpoint_idx = mark_idx + (len(prefix) if has_prefix else 0) + 1
+            custom_splits.append(CustomSplit(has_prefix, breakpoint_idx))
+
+        string_leaf = Leaf(token.STRING, S_leaf.value.replace(BREAK_MARK, ""))
+
+        if atom_node is not None:
+            replace_child(atom_node, string_leaf)
+
+        # Build the final line ('new_line') that this method will later return.
+        new_line = line.clone()
+        for (i, leaf) in enumerate(LL):
+            if i == string_idx:
+                new_line.append(string_leaf)
+
+            if string_idx <= i < string_idx + num_of_strings:
+                for comment_leaf in line.comments_after(LL[i]):
+                    new_line.append(comment_leaf, preformatted=True)
+                continue
+
+            append_leaves(new_line, line, [leaf])
+
+        self.add_custom_splits(string_leaf.value, custom_splits)
+        return Ok(new_line)
+
+    @staticmethod
+    def _validate_msg(line: Line, string_idx: int) -> TResult[None]:
+        """Validate (M)erge (S)tring (G)roup
+
+        Transform-time string validation logic for __merge_string_group(...).
+
+        Returns:
+            * Ok(None), if ALL validation checks (listed below) pass.
+                OR
+            * Err(CannotTransform), if any of the following are true:
+                - The target string group does not contain ANY stand-alone comments.
+                - The target string is not in a string group (i.e. it has no
+                  adjacent strings).
+                - The string group has more than one inline comment.
+                - The string group has an inline comment that appears to be a pragma.
+                - The set of all string prefixes in the string group is of
+                  length greater than one and is not equal to {"", "f"}.
+                - The string group consists of raw strings.
+        """
+        # We first check for "inner" stand-alone comments (i.e. stand-alone
+        # comments that have a string leaf before them AND after them).
+        for inc in [1, -1]:
+            i = string_idx
+            found_sa_comment = False
+            is_valid_index = is_valid_index_factory(line.leaves)
+            while is_valid_index(i) and line.leaves[i].type in [
+                token.STRING,
+                STANDALONE_COMMENT,
+            ]:
+                if line.leaves[i].type == STANDALONE_COMMENT:
+                    found_sa_comment = True
+                elif found_sa_comment:
+                    return TErr(
+                        "StringMerger does NOT merge string groups which contain "
+                        "stand-alone comments."
+                    )
+
+                i += inc
+
+        num_of_inline_string_comments = 0
+        set_of_prefixes = set()
+        num_of_strings = 0
+        for leaf in line.leaves[string_idx:]:
+            if leaf.type != token.STRING:
+                # If the string group is trailed by a comma, we count the
+                # comments trailing the comma to be one of the string group's
+                # comments.
+                if leaf.type == token.COMMA and id(leaf) in line.comments:
+                    num_of_inline_string_comments += 1
+                break
+
+            if has_triple_quotes(leaf.value):
+                return TErr("StringMerger does NOT merge multiline strings.")
+
+            num_of_strings += 1
+            prefix = get_string_prefix(leaf.value).lower()
+            if "r" in prefix:
+                return TErr("StringMerger does NOT merge raw strings.")
+
+            set_of_prefixes.add(prefix)
+
+            if id(leaf) in line.comments:
+                num_of_inline_string_comments += 1
+                if contains_pragma_comment(line.comments[id(leaf)]):
+                    return TErr("Cannot merge strings which have pragma comments.")
+
+        if num_of_strings < 2:
+            return TErr(
+                f"Not enough strings to merge (num_of_strings={num_of_strings})."
+            )
+
+        if num_of_inline_string_comments > 1:
+            return TErr(
+                f"Too many inline string comments ({num_of_inline_string_comments})."
+            )
+
+        if len(set_of_prefixes) > 1 and set_of_prefixes != {"", "f"}:
+            return TErr(f"Too many different prefixes ({set_of_prefixes}).")
+
+        return Ok(None)
+
+
+class StringParenStripper(StringTransformer):
+    """StringTransformer that strips surrounding parentheses from strings.
+
+    Requirements:
+        The line contains a string which is surrounded by parentheses and:
+            - The target string is NOT the only argument to a function call.
+            - The target string is NOT a "pointless" string.
+            - If the target string contains a PERCENT, the brackets are not
+              preceded or followed by an operator with higher precedence than
+              PERCENT.
+
+    Transformations:
+        The parentheses mentioned in the 'Requirements' section are stripped.
+
+    Collaborations:
+        StringParenStripper has its own inherent usefulness, but it is also
+        relied on to clean up the parentheses created by StringParenWrapper (in
+        the event that they are no longer needed).
+    """
+
+    def do_match(self, line: Line) -> TMatchResult:
+        LL = line.leaves
+
+        is_valid_index = is_valid_index_factory(LL)
+
+        for (idx, leaf) in enumerate(LL):
+            # Should be a string...
+            if leaf.type != token.STRING:
+                continue
+
+            # If this is a "pointless" string...
+            if (
+                leaf.parent
+                and leaf.parent.parent
+                and leaf.parent.parent.type == syms.simple_stmt
+            ):
+                continue
+
+            # Should be preceded by a non-empty LPAR...
+            if (
+                not is_valid_index(idx - 1)
+                or LL[idx - 1].type != token.LPAR
+                or is_empty_lpar(LL[idx - 1])
+            ):
+                continue
+
+            # That LPAR should NOT be preceded by a function name or a closing
+            # bracket (which could be a function which returns a function or a
+            # list/dictionary that contains a function)...
+            if is_valid_index(idx - 2) and (
+                LL[idx - 2].type == token.NAME or LL[idx - 2].type in CLOSING_BRACKETS
+            ):
+                continue
+
+            string_idx = idx
+
+            # Skip the string trailer, if one exists.
+            string_parser = StringParser()
+            next_idx = string_parser.parse(LL, string_idx)
+
+            # if the leaves in the parsed string include a PERCENT, we need to
+            # make sure the initial LPAR is NOT preceded by an operator with
+            # higher or equal precedence to PERCENT
+            if is_valid_index(idx - 2):
+                # mypy can't quite follow unless we name this
+                before_lpar = LL[idx - 2]
+                if token.PERCENT in {leaf.type for leaf in LL[idx - 1 : next_idx]} and (
+                    (
+                        before_lpar.type
+                        in {
+                            token.STAR,
+                            token.AT,
+                            token.SLASH,
+                            token.DOUBLESLASH,
+                            token.PERCENT,
+                            token.TILDE,
+                            token.DOUBLESTAR,
+                            token.AWAIT,
+                            token.LSQB,
+                            token.LPAR,
+                        }
+                    )
+                    or (
+                        # only unary PLUS/MINUS
+                        before_lpar.parent
+                        and before_lpar.parent.type == syms.factor
+                        and (before_lpar.type in {token.PLUS, token.MINUS})
+                    )
+                ):
+                    continue
+
+            # Should be followed by a non-empty RPAR...
+            if (
+                is_valid_index(next_idx)
+                and LL[next_idx].type == token.RPAR
+                and not is_empty_rpar(LL[next_idx])
+            ):
+                # That RPAR should NOT be followed by anything with higher
+                # precedence than PERCENT
+                if is_valid_index(next_idx + 1) and LL[next_idx + 1].type in {
+                    token.DOUBLESTAR,
+                    token.LSQB,
+                    token.LPAR,
+                    token.DOT,
+                }:
+                    continue
+
+                return Ok(string_idx)
+
+        return TErr("This line has no strings wrapped in parens.")
+
+    def do_transform(self, line: Line, string_idx: int) -> Iterator[TResult[Line]]:
+        LL = line.leaves
+
+        string_parser = StringParser()
+        rpar_idx = string_parser.parse(LL, string_idx)
+
+        for leaf in (LL[string_idx - 1], LL[rpar_idx]):
+            if line.comments_after(leaf):
+                yield TErr(
+                    "Will not strip parentheses which have comments attached to them."
+                )
+                return
+
+        new_line = line.clone()
+        new_line.comments = line.comments.copy()
+        try:
+            append_leaves(new_line, line, LL[: string_idx - 1])
+        except BracketMatchError:
+            # HACK: I believe there is currently a bug somewhere in
+            # right_hand_split() that is causing brackets to not be tracked
+            # properly by a shared BracketTracker.
+            append_leaves(new_line, line, LL[: string_idx - 1], preformatted=True)
+
+        string_leaf = Leaf(token.STRING, LL[string_idx].value)
+        LL[string_idx - 1].remove()
+        replace_child(LL[string_idx], string_leaf)
+        new_line.append(string_leaf)
+
+        append_leaves(
+            new_line, line, LL[string_idx + 1 : rpar_idx] + LL[rpar_idx + 1 :]
+        )
+
+        LL[rpar_idx].remove()
+
+        yield Ok(new_line)
+
+
+class BaseStringSplitter(StringTransformer):
+    """
+    Abstract class for StringTransformers which transform a Line's strings by splitting
+    them or placing them on their own lines where necessary to avoid going over
+    the configured line length.
+
+    Requirements:
+        * The target string value is responsible for the line going over the
+        line length limit. It follows that after all of black's other line
+        split methods have been exhausted, this line (or one of the resulting
+        lines after all line splits are performed) would still be over the
+        line_length limit unless we split this string.
+            AND
+        * The target string is NOT a "pointless" string (i.e. a string that has
+        no parent or siblings).
+            AND
+        * The target string is not followed by an inline comment that appears
+        to be a pragma.
+            AND
+        * The target string is not a multiline (i.e. triple-quote) string.
+    """
+
+    STRING_OPERATORS = [
+        token.EQEQUAL,
+        token.GREATER,
+        token.GREATEREQUAL,
+        token.LESS,
+        token.LESSEQUAL,
+        token.NOTEQUAL,
+        token.PERCENT,
+        token.PLUS,
+        token.STAR,
+    ]
+
+    @abstractmethod
+    def do_splitter_match(self, line: Line) -> TMatchResult:
+        """
+        BaseStringSplitter asks its clients to override this method instead of
+        `StringTransformer.do_match(...)`.
+
+        Follows the same protocol as `StringTransformer.do_match(...)`.
+
+        Refer to `help(StringTransformer.do_match)` for more information.
+        """
+
+    def do_match(self, line: Line) -> TMatchResult:
+        match_result = self.do_splitter_match(line)
+        if isinstance(match_result, Err):
+            return match_result
+
+        string_idx = match_result.ok()
+        vresult = self._validate(line, string_idx)
+        if isinstance(vresult, Err):
+            return vresult
+
+        return match_result
+
+    def _validate(self, line: Line, string_idx: int) -> TResult[None]:
+        """
+        Checks that @line meets all of the requirements listed in this classes'
+        docstring. Refer to `help(BaseStringSplitter)` for a detailed
+        description of those requirements.
+
+        Returns:
+            * Ok(None), if ALL of the requirements are met.
+                OR
+            * Err(CannotTransform), if ANY of the requirements are NOT met.
+        """
+        LL = line.leaves
+
+        string_leaf = LL[string_idx]
+
+        max_string_length = self._get_max_string_length(line, string_idx)
+        if len(string_leaf.value) <= max_string_length:
+            return TErr(
+                "The string itself is not what is causing this line to be too long."
+            )
+
+        if not string_leaf.parent or [L.type for L in string_leaf.parent.children] == [
+            token.STRING,
+            token.NEWLINE,
+        ]:
+            return TErr(
+                f"This string ({string_leaf.value}) appears to be pointless (i.e. has"
+                " no parent)."
+            )
+
+        if id(line.leaves[string_idx]) in line.comments and contains_pragma_comment(
+            line.comments[id(line.leaves[string_idx])]
+        ):
+            return TErr(
+                "Line appears to end with an inline pragma comment. Splitting the line"
+                " could modify the pragma's behavior."
+            )
+
+        if has_triple_quotes(string_leaf.value):
+            return TErr("We cannot split multiline strings.")
+
+        return Ok(None)
+
+    def _get_max_string_length(self, line: Line, string_idx: int) -> int:
+        """
+        Calculates the max string length used when attempting to determine
+        whether or not the target string is responsible for causing the line to
+        go over the line length limit.
+
+        WARNING: This method is tightly coupled to both StringSplitter and
+        (especially) StringParenWrapper. There is probably a better way to
+        accomplish what is being done here.
+
+        Returns:
+            max_string_length: such that `line.leaves[string_idx].value >
+            max_string_length` implies that the target string IS responsible
+            for causing this line to exceed the line length limit.
+        """
+        LL = line.leaves
+
+        is_valid_index = is_valid_index_factory(LL)
+
+        # We use the shorthand "WMA4" in comments to abbreviate "We must
+        # account for". When giving examples, we use STRING to mean some/any
+        # valid string.
+        #
+        # Finally, we use the following convenience variables:
+        #
+        #   P:  The leaf that is before the target string leaf.
+        #   N:  The leaf that is after the target string leaf.
+        #   NN: The leaf that is after N.
+
+        # WMA4 the whitespace at the beginning of the line.
+        offset = line.depth * 4
+
+        if is_valid_index(string_idx - 1):
+            p_idx = string_idx - 1
+            if (
+                LL[string_idx - 1].type == token.LPAR
+                and LL[string_idx - 1].value == ""
+                and string_idx >= 2
+            ):
+                # If the previous leaf is an empty LPAR placeholder, we should skip it.
+                p_idx -= 1
+
+            P = LL[p_idx]
+            if P.type in self.STRING_OPERATORS:
+                # WMA4 a space and a string operator (e.g. `+ STRING` or `== STRING`).
+                offset += len(str(P)) + 1
+
+            if P.type == token.COMMA:
+                # WMA4 a space, a comma, and a closing bracket [e.g. `), STRING`].
+                offset += 3
+
+            if P.type in [token.COLON, token.EQUAL, token.PLUSEQUAL, token.NAME]:
+                # This conditional branch is meant to handle dictionary keys,
+                # variable assignments, 'return STRING' statement lines, and
+                # 'else STRING' ternary expression lines.
+
+                # WMA4 a single space.
+                offset += 1
+
+                # WMA4 the lengths of any leaves that came before that space,
+                # but after any closing bracket before that space.
+                for leaf in reversed(LL[: p_idx + 1]):
+                    offset += len(str(leaf))
+                    if leaf.type in CLOSING_BRACKETS:
+                        break
+
+        if is_valid_index(string_idx + 1):
+            N = LL[string_idx + 1]
+            if N.type == token.RPAR and N.value == "" and len(LL) > string_idx + 2:
+                # If the next leaf is an empty RPAR placeholder, we should skip it.
+                N = LL[string_idx + 2]
+
+            if N.type == token.COMMA:
+                # WMA4 a single comma at the end of the string (e.g `STRING,`).
+                offset += 1
+
+            if is_valid_index(string_idx + 2):
+                NN = LL[string_idx + 2]
+
+                if N.type == token.DOT and NN.type == token.NAME:
+                    # This conditional branch is meant to handle method calls invoked
+                    # off of a string literal up to and including the LPAR character.
+
+                    # WMA4 the '.' character.
+                    offset += 1
+
+                    if (
+                        is_valid_index(string_idx + 3)
+                        and LL[string_idx + 3].type == token.LPAR
+                    ):
+                        # WMA4 the left parenthesis character.
+                        offset += 1
+
+                    # WMA4 the length of the method's name.
+                    offset += len(NN.value)
+
+        has_comments = False
+        for comment_leaf in line.comments_after(LL[string_idx]):
+            if not has_comments:
+                has_comments = True
+                # WMA4 two spaces before the '#' character.
+                offset += 2
+
+            # WMA4 the length of the inline comment.
+            offset += len(comment_leaf.value)
+
+        max_string_length = self.line_length - offset
+        return max_string_length
+
+
+class StringSplitter(CustomSplitMapMixin, BaseStringSplitter):
+    """
+    StringTransformer that splits "atom" strings (i.e. strings which exist on
+    lines by themselves).
+
+    Requirements:
+        * The line consists ONLY of a single string (possibly prefixed by a
+        string operator [e.g. '+' or '==']), MAYBE a string trailer, and MAYBE
+        a trailing comma.
+            AND
+        * All of the requirements listed in BaseStringSplitter's docstring.
+
+    Transformations:
+        The string mentioned in the 'Requirements' section is split into as
+        many substrings as necessary to adhere to the configured line length.
+
+        In the final set of substrings, no substring should be smaller than
+        MIN_SUBSTR_SIZE characters.
+
+        The string will ONLY be split on spaces (i.e. each new substring should
+        start with a space). Note that the string will NOT be split on a space
+        which is escaped with a backslash.
+
+        If the string is an f-string, it will NOT be split in the middle of an
+        f-expression (e.g. in f"FooBar: {foo() if x else bar()}", {foo() if x
+        else bar()} is an f-expression).
+
+        If the string that is being split has an associated set of custom split
+        records and those custom splits will NOT result in any line going over
+        the configured line length, those custom splits are used. Otherwise the
+        string is split as late as possible (from left-to-right) while still
+        adhering to the transformation rules listed above.
+
+    Collaborations:
+        StringSplitter relies on StringMerger to construct the appropriate
+        CustomSplit objects and add them to the custom split map.
+    """
+
+    MIN_SUBSTR_SIZE = 6
+    # Matches an "f-expression" (e.g. {var}) that might be found in an f-string.
+    RE_FEXPR = r"""
+    (?<!\{) (?:\{\{)* \{ (?!\{)
+        (?:
+            [^\{\}]
+            | \{\{
+            | \}\}
+            | (?R)
+        )+
+    \}
+    """
+
+    def do_splitter_match(self, line: Line) -> TMatchResult:
+        LL = line.leaves
+
+        is_valid_index = is_valid_index_factory(LL)
+
+        idx = 0
+
+        # The first two leaves MAY be the 'not in' keywords...
+        if (
+            is_valid_index(idx)
+            and is_valid_index(idx + 1)
+            and [LL[idx].type, LL[idx + 1].type] == [token.NAME, token.NAME]
+            and str(LL[idx]) + str(LL[idx + 1]) == "not in"
+        ):
+            idx += 2
+        # Else the first leaf MAY be a string operator symbol or the 'in' keyword...
+        elif is_valid_index(idx) and (
+            LL[idx].type in self.STRING_OPERATORS
+            or LL[idx].type == token.NAME
+            and str(LL[idx]) == "in"
+        ):
+            idx += 1
+
+        # The next/first leaf MAY be an empty LPAR...
+        if is_valid_index(idx) and is_empty_lpar(LL[idx]):
+            idx += 1
+
+        # The next/first leaf MUST be a string...
+        if not is_valid_index(idx) or LL[idx].type != token.STRING:
+            return TErr("Line does not start with a string.")
+
+        string_idx = idx
+
+        # Skip the string trailer, if one exists.
+        string_parser = StringParser()
+        idx = string_parser.parse(LL, string_idx)
+
+        # That string MAY be followed by an empty RPAR...
+        if is_valid_index(idx) and is_empty_rpar(LL[idx]):
+            idx += 1
+
+        # That string / empty RPAR leaf MAY be followed by a comma...
+        if is_valid_index(idx) and LL[idx].type == token.COMMA:
+            idx += 1
+
+        # But no more leaves are allowed...
+        if is_valid_index(idx):
+            return TErr("This line does not end with a string.")
+
+        return Ok(string_idx)
+
+    def do_transform(self, line: Line, string_idx: int) -> Iterator[TResult[Line]]:
+        LL = line.leaves
+
+        QUOTE = LL[string_idx].value[-1]
+
+        is_valid_index = is_valid_index_factory(LL)
+        insert_str_child = insert_str_child_factory(LL[string_idx])
+
+        prefix = get_string_prefix(LL[string_idx].value).lower()
+
+        # We MAY choose to drop the 'f' prefix from substrings that don't
+        # contain any f-expressions, but ONLY if the original f-string
+        # contains at least one f-expression. Otherwise, we will alter the AST
+        # of the program.
+        drop_pointless_f_prefix = ("f" in prefix) and re.search(
+            self.RE_FEXPR, LL[string_idx].value, re.VERBOSE
+        )
+
+        first_string_line = True
+
+        string_op_leaves = self._get_string_operator_leaves(LL)
+        string_op_leaves_length = (
+            sum([len(str(prefix_leaf)) for prefix_leaf in string_op_leaves]) + 1
+            if string_op_leaves
+            else 0
+        )
+
+        def maybe_append_string_operators(new_line: Line) -> None:
+            """
+            Side Effects:
+                If @line starts with a string operator and this is the first
+                line we are constructing, this function appends the string
+                operator to @new_line and replaces the old string operator leaf
+                in the node structure. Otherwise this function does nothing.
+            """
+            maybe_prefix_leaves = string_op_leaves if first_string_line else []
+            for i, prefix_leaf in enumerate(maybe_prefix_leaves):
+                replace_child(LL[i], prefix_leaf)
+                new_line.append(prefix_leaf)
+
+        ends_with_comma = (
+            is_valid_index(string_idx + 1) and LL[string_idx + 1].type == token.COMMA
+        )
+
+        def max_last_string() -> int:
+            """
+            Returns:
+                The max allowed length of the string value used for the last
+                line we will construct.
+            """
+            result = self.line_length
+            result -= line.depth * 4
+            result -= 1 if ends_with_comma else 0
+            result -= string_op_leaves_length
+            return result
+
+        # --- Calculate Max Break Index (for string value)
+        # We start with the line length limit
+        max_break_idx = self.line_length
+        # The last index of a string of length N is N-1.
+        max_break_idx -= 1
+        # Leading whitespace is not present in the string value (e.g. Leaf.value).
+        max_break_idx -= line.depth * 4
+        if max_break_idx < 0:
+            yield TErr(
+                f"Unable to split {LL[string_idx].value} at such high of a line depth:"
+                f" {line.depth}"
+            )
+            return
+
+        # Check if StringMerger registered any custom splits.
+        custom_splits = self.pop_custom_splits(LL[string_idx].value)
+        # We use them ONLY if none of them would produce lines that exceed the
+        # line limit.
+        use_custom_breakpoints = bool(
+            custom_splits
+            and all(csplit.break_idx <= max_break_idx for csplit in custom_splits)
+        )
+
+        # Temporary storage for the remaining chunk of the string line that
+        # can't fit onto the line currently being constructed.
+        rest_value = LL[string_idx].value
+
+        def more_splits_should_be_made() -> bool:
+            """
+            Returns:
+                True iff `rest_value` (the remaining string value from the last
+                split), should be split again.
+            """
+            if use_custom_breakpoints:
+                return len(custom_splits) > 1
+            else:
+                return len(rest_value) > max_last_string()
+
+        string_line_results: List[Ok[Line]] = []
+        while more_splits_should_be_made():
+            if use_custom_breakpoints:
+                # Custom User Split (manual)
+                csplit = custom_splits.pop(0)
+                break_idx = csplit.break_idx
+            else:
+                # Algorithmic Split (automatic)
+                max_bidx = max_break_idx - string_op_leaves_length
+                maybe_break_idx = self._get_break_idx(rest_value, max_bidx)
+                if maybe_break_idx is None:
+                    # If we are unable to algorithmically determine a good split
+                    # and this string has custom splits registered to it, we
+                    # fall back to using them--which means we have to start
+                    # over from the beginning.
+                    if custom_splits:
+                        rest_value = LL[string_idx].value
+                        string_line_results = []
+                        first_string_line = True
+                        use_custom_breakpoints = True
+                        continue
+
+                    # Otherwise, we stop splitting here.
+                    break
+
+                break_idx = maybe_break_idx
+
+            # --- Construct `next_value`
+            next_value = rest_value[:break_idx] + QUOTE
+
+            # HACK: The following 'if' statement is a hack to fix the custom
+            # breakpoint index in the case of either: (a) substrings that were
+            # f-strings but will have the 'f' prefix removed OR (b) substrings
+            # that were not f-strings but will now become f-strings because of
+            # redundant use of the 'f' prefix (i.e. none of the substrings
+            # contain f-expressions but one or more of them had the 'f' prefix
+            # anyway; in which case, we will prepend 'f' to _all_ substrings).
+            #
+            # There is probably a better way to accomplish what is being done
+            # here...
+            #
+            # If this substring is an f-string, we _could_ remove the 'f'
+            # prefix, and the current custom split did NOT originally use a
+            # prefix...
+            if (
+                next_value != self._normalize_f_string(next_value, prefix)
+                and use_custom_breakpoints
+                and not csplit.has_prefix
+            ):
+                # Then `csplit.break_idx` will be off by one after removing
+                # the 'f' prefix.
+                break_idx += 1
+                next_value = rest_value[:break_idx] + QUOTE
+
+            if drop_pointless_f_prefix:
+                next_value = self._normalize_f_string(next_value, prefix)
+
+            # --- Construct `next_leaf`
+            next_leaf = Leaf(token.STRING, next_value)
+            insert_str_child(next_leaf)
+            self._maybe_normalize_string_quotes(next_leaf)
+
+            # --- Construct `next_line`
+            next_line = line.clone()
+            maybe_append_string_operators(next_line)
+            next_line.append(next_leaf)
+            string_line_results.append(Ok(next_line))
+
+            rest_value = prefix + QUOTE + rest_value[break_idx:]
+            first_string_line = False
+
+        yield from string_line_results
+
+        if drop_pointless_f_prefix:
+            rest_value = self._normalize_f_string(rest_value, prefix)
+
+        rest_leaf = Leaf(token.STRING, rest_value)
+        insert_str_child(rest_leaf)
+
+        # NOTE: I could not find a test case that verifies that the following
+        # line is actually necessary, but it seems to be. Otherwise we risk
+        # not normalizing the last substring, right?
+        self._maybe_normalize_string_quotes(rest_leaf)
+
+        last_line = line.clone()
+        maybe_append_string_operators(last_line)
+
+        # If there are any leaves to the right of the target string...
+        if is_valid_index(string_idx + 1):
+            # We use `temp_value` here to determine how long the last line
+            # would be if we were to append all the leaves to the right of the
+            # target string to the last string line.
+            temp_value = rest_value
+            for leaf in LL[string_idx + 1 :]:
+                temp_value += str(leaf)
+                if leaf.type == token.LPAR:
+                    break
+
+            # Try to fit them all on the same line with the last substring...
+            if (
+                len(temp_value) <= max_last_string()
+                or LL[string_idx + 1].type == token.COMMA
+            ):
+                last_line.append(rest_leaf)
+                append_leaves(last_line, line, LL[string_idx + 1 :])
+                yield Ok(last_line)
+            # Otherwise, place the last substring on one line and everything
+            # else on a line below that...
+            else:
+                last_line.append(rest_leaf)
+                yield Ok(last_line)
+
+                non_string_line = line.clone()
+                append_leaves(non_string_line, line, LL[string_idx + 1 :])
+                yield Ok(non_string_line)
+        # Else the target string was the last leaf...
+        else:
+            last_line.append(rest_leaf)
+            last_line.comments = line.comments.copy()
+            yield Ok(last_line)
+
+    def _iter_nameescape_slices(self, string: str) -> Iterator[Tuple[Index, Index]]:
+        """
+        Yields:
+            All ranges of @string which, if @string were to be split there,
+            would result in the splitting of an \\N{...} expression (which is NOT
+            allowed).
+        """
+        # True - the previous backslash was unescaped
+        # False - the previous backslash was escaped *or* there was no backslash
+        previous_was_unescaped_backslash = False
+        it = iter(enumerate(string))
+        for idx, c in it:
+            if c == "\\":
+                previous_was_unescaped_backslash = not previous_was_unescaped_backslash
+                continue
+            if not previous_was_unescaped_backslash or c != "N":
+                previous_was_unescaped_backslash = False
+                continue
+            previous_was_unescaped_backslash = False
+
+            begin = idx - 1  # the position of backslash before \N{...}
+            for idx, c in it:
+                if c == "}":
+                    end = idx
+                    break
+            else:
+                # malformed nameescape expression?
+                # should have been detected by AST parsing earlier...
+                raise RuntimeError(f"{self.__class__.__name__} LOGIC ERROR!")
+            yield begin, end
+
+    def _iter_fexpr_slices(self, string: str) -> Iterator[Tuple[Index, Index]]:
+        """
+        Yields:
+            All ranges of @string which, if @string were to be split there,
+            would result in the splitting of an f-expression (which is NOT
+            allowed).
+        """
+        if "f" not in get_string_prefix(string).lower():
+            return
+
+        for match in re.finditer(self.RE_FEXPR, string, re.VERBOSE):
+            yield match.span()
+
+    def _get_illegal_split_indices(self, string: str) -> Set[Index]:
+        illegal_indices: Set[Index] = set()
+        iterators = [
+            self._iter_fexpr_slices(string),
+            self._iter_nameescape_slices(string),
+        ]
+        for it in iterators:
+            for begin, end in it:
+                illegal_indices.update(range(begin, end + 1))
+        return illegal_indices
+
+    def _get_break_idx(self, string: str, max_break_idx: int) -> Optional[int]:
+        """
+        This method contains the algorithm that StringSplitter uses to
+        determine which character to split each string at.
+
+        Args:
+            @string: The substring that we are attempting to split.
+            @max_break_idx: The ideal break index. We will return this value if it
+            meets all the necessary conditions. In the likely event that it
+            doesn't we will try to find the closest index BELOW @max_break_idx
+            that does. If that fails, we will expand our search by also
+            considering all valid indices ABOVE @max_break_idx.
+
+        Pre-Conditions:
+            * assert_is_leaf_string(@string)
+            * 0 <= @max_break_idx < len(@string)
+
+        Returns:
+            break_idx, if an index is able to be found that meets all of the
+            conditions listed in the 'Transformations' section of this classes'
+            docstring.
+                OR
+            None, otherwise.
+        """
+        is_valid_index = is_valid_index_factory(string)
+
+        assert is_valid_index(max_break_idx)
+        assert_is_leaf_string(string)
+
+        _illegal_split_indices = self._get_illegal_split_indices(string)
+
+        def breaks_unsplittable_expression(i: Index) -> bool:
+            """
+            Returns:
+                True iff returning @i would result in the splitting of an
+                unsplittable expression (which is NOT allowed).
+            """
+            return i in _illegal_split_indices
+
+        def passes_all_checks(i: Index) -> bool:
+            """
+            Returns:
+                True iff ALL of the conditions listed in the 'Transformations'
+                section of this classes' docstring would be be met by returning @i.
+            """
+            is_space = string[i] == " "
+
+            is_not_escaped = True
+            j = i - 1
+            while is_valid_index(j) and string[j] == "\\":
+                is_not_escaped = not is_not_escaped
+                j -= 1
+
+            is_big_enough = (
+                len(string[i:]) >= self.MIN_SUBSTR_SIZE
+                and len(string[:i]) >= self.MIN_SUBSTR_SIZE
+            )
+            return (
+                is_space
+                and is_not_escaped
+                and is_big_enough
+                and not breaks_unsplittable_expression(i)
+            )
+
+        # First, we check all indices BELOW @max_break_idx.
+        break_idx = max_break_idx
+        while is_valid_index(break_idx - 1) and not passes_all_checks(break_idx):
+            break_idx -= 1
+
+        if not passes_all_checks(break_idx):
+            # If that fails, we check all indices ABOVE @max_break_idx.
+            #
+            # If we are able to find a valid index here, the next line is going
+            # to be longer than the specified line length, but it's probably
+            # better than doing nothing at all.
+            break_idx = max_break_idx + 1
+            while is_valid_index(break_idx + 1) and not passes_all_checks(break_idx):
+                break_idx += 1
+
+            if not is_valid_index(break_idx) or not passes_all_checks(break_idx):
+                return None
+
+        return break_idx
+
+    def _maybe_normalize_string_quotes(self, leaf: Leaf) -> None:
+        if self.normalize_strings:
+            leaf.value = normalize_string_quotes(leaf.value)
+
+    def _normalize_f_string(self, string: str, prefix: str) -> str:
+        """
+        Pre-Conditions:
+            * assert_is_leaf_string(@string)
+
+        Returns:
+            * If @string is an f-string that contains no f-expressions, we
+            return a string identical to @string except that the 'f' prefix
+            has been stripped and all double braces (i.e. '{{' or '}}') have
+            been normalized (i.e. turned into '{' or '}').
+                OR
+            * Otherwise, we return @string.
+        """
+        assert_is_leaf_string(string)
+
+        if "f" in prefix and not re.search(self.RE_FEXPR, string, re.VERBOSE):
+            new_prefix = prefix.replace("f", "")
+
+            temp = string[len(prefix) :]
+            temp = re.sub(r"\{\{", "{", temp)
+            temp = re.sub(r"\}\}", "}", temp)
+            new_string = temp
+
+            return f"{new_prefix}{new_string}"
+        else:
+            return string
+
+    def _get_string_operator_leaves(self, leaves: Iterable[Leaf]) -> List[Leaf]:
+        LL = list(leaves)
+
+        string_op_leaves = []
+        i = 0
+        while LL[i].type in self.STRING_OPERATORS + [token.NAME]:
+            prefix_leaf = Leaf(LL[i].type, str(LL[i]).strip())
+            string_op_leaves.append(prefix_leaf)
+            i += 1
+        return string_op_leaves
+
+
+class StringParenWrapper(CustomSplitMapMixin, BaseStringSplitter):
+    """
+    StringTransformer that splits non-"atom" strings (i.e. strings that do not
+    exist on lines by themselves).
+
+    Requirements:
+        All of the requirements listed in BaseStringSplitter's docstring in
+        addition to the requirements listed below:
+
+        * The line is a return/yield statement, which returns/yields a string.
+            OR
+        * The line is part of a ternary expression (e.g. `x = y if cond else
+        z`) such that the line starts with `else <string>`, where <string> is
+        some string.
+            OR
+        * The line is an assert statement, which ends with a string.
+            OR
+        * The line is an assignment statement (e.g. `x = <string>` or `x +=
+        <string>`) such that the variable is being assigned the value of some
+        string.
+            OR
+        * The line is a dictionary key assignment where some valid key is being
+        assigned the value of some string.
+
+    Transformations:
+        The chosen string is wrapped in parentheses and then split at the LPAR.
+
+        We then have one line which ends with an LPAR and another line that
+        starts with the chosen string. The latter line is then split again at
+        the RPAR. This results in the RPAR (and possibly a trailing comma)
+        being placed on its own line.
+
+        NOTE: If any leaves exist to the right of the chosen string (except
+        for a trailing comma, which would be placed after the RPAR), those
+        leaves are placed inside the parentheses.  In effect, the chosen
+        string is not necessarily being "wrapped" by parentheses. We can,
+        however, count on the LPAR being placed directly before the chosen
+        string.
+
+        In other words, StringParenWrapper creates "atom" strings. These
+        can then be split again by StringSplitter, if necessary.
+
+    Collaborations:
+        In the event that a string line split by StringParenWrapper is
+        changed such that it no longer needs to be given its own line,
+        StringParenWrapper relies on StringParenStripper to clean up the
+        parentheses it created.
+    """
+
+    def do_splitter_match(self, line: Line) -> TMatchResult:
+        LL = line.leaves
+
+        if line.leaves[-1].type in OPENING_BRACKETS:
+            return TErr(
+                "Cannot wrap parens around a line that ends in an opening bracket."
+            )
+
+        string_idx = (
+            self._return_match(LL)
+            or self._else_match(LL)
+            or self._assert_match(LL)
+            or self._assign_match(LL)
+            or self._dict_match(LL)
+        )
+
+        if string_idx is not None:
+            string_value = line.leaves[string_idx].value
+            # If the string has no spaces...
+            if " " not in string_value:
+                # And will still violate the line length limit when split...
+                max_string_length = self.line_length - ((line.depth + 1) * 4)
+                if len(string_value) > max_string_length:
+                    # And has no associated custom splits...
+                    if not self.has_custom_splits(string_value):
+                        # Then we should NOT put this string on its own line.
+                        return TErr(
+                            "We do not wrap long strings in parentheses when the"
+                            " resultant line would still be over the specified line"
+                            " length and can't be split further by StringSplitter."
+                        )
+            return Ok(string_idx)
+
+        return TErr("This line does not contain any non-atomic strings.")
+
+    @staticmethod
+    def _return_match(LL: List[Leaf]) -> Optional[int]:
+        """
+        Returns:
+            string_idx such that @LL[string_idx] is equal to our target (i.e.
+            matched) string, if this line matches the return/yield statement
+            requirements listed in the 'Requirements' section of this classes'
+            docstring.
+                OR
+            None, otherwise.
+        """
+        # If this line is apart of a return/yield statement and the first leaf
+        # contains either the "return" or "yield" keywords...
+        if parent_type(LL[0]) in [syms.return_stmt, syms.yield_expr] and LL[
+            0
+        ].value in ["return", "yield"]:
+            is_valid_index = is_valid_index_factory(LL)
+
+            idx = 2 if is_valid_index(1) and is_empty_par(LL[1]) else 1
+            # The next visible leaf MUST contain a string...
+            if is_valid_index(idx) and LL[idx].type == token.STRING:
+                return idx
+
+        return None
+
+    @staticmethod
+    def _else_match(LL: List[Leaf]) -> Optional[int]:
+        """
+        Returns:
+            string_idx such that @LL[string_idx] is equal to our target (i.e.
+            matched) string, if this line matches the ternary expression
+            requirements listed in the 'Requirements' section of this classes'
+            docstring.
+                OR
+            None, otherwise.
+        """
+        # If this line is apart of a ternary expression and the first leaf
+        # contains the "else" keyword...
+        if (
+            parent_type(LL[0]) == syms.test
+            and LL[0].type == token.NAME
+            and LL[0].value == "else"
+        ):
+            is_valid_index = is_valid_index_factory(LL)
+
+            idx = 2 if is_valid_index(1) and is_empty_par(LL[1]) else 1
+            # The next visible leaf MUST contain a string...
+            if is_valid_index(idx) and LL[idx].type == token.STRING:
+                return idx
+
+        return None
+
+    @staticmethod
+    def _assert_match(LL: List[Leaf]) -> Optional[int]:
+        """
+        Returns:
+            string_idx such that @LL[string_idx] is equal to our target (i.e.
+            matched) string, if this line matches the assert statement
+            requirements listed in the 'Requirements' section of this classes'
+            docstring.
+                OR
+            None, otherwise.
+        """
+        # If this line is apart of an assert statement and the first leaf
+        # contains the "assert" keyword...
+        if parent_type(LL[0]) == syms.assert_stmt and LL[0].value == "assert":
+            is_valid_index = is_valid_index_factory(LL)
+
+            for (i, leaf) in enumerate(LL):
+                # We MUST find a comma...
+                if leaf.type == token.COMMA:
+                    idx = i + 2 if is_empty_par(LL[i + 1]) else i + 1
+
+                    # That comma MUST be followed by a string...
+                    if is_valid_index(idx) and LL[idx].type == token.STRING:
+                        string_idx = idx
+
+                        # Skip the string trailer, if one exists.
+                        string_parser = StringParser()
+                        idx = string_parser.parse(LL, string_idx)
+
+                        # But no more leaves are allowed...
+                        if not is_valid_index(idx):
+                            return string_idx
+
+        return None
+
+    @staticmethod
+    def _assign_match(LL: List[Leaf]) -> Optional[int]:
+        """
+        Returns:
+            string_idx such that @LL[string_idx] is equal to our target (i.e.
+            matched) string, if this line matches the assignment statement
+            requirements listed in the 'Requirements' section of this classes'
+            docstring.
+                OR
+            None, otherwise.
+        """
+        # If this line is apart of an expression statement or is a function
+        # argument AND the first leaf contains a variable name...
+        if (
+            parent_type(LL[0]) in [syms.expr_stmt, syms.argument, syms.power]
+            and LL[0].type == token.NAME
+        ):
+            is_valid_index = is_valid_index_factory(LL)
+
+            for (i, leaf) in enumerate(LL):
+                # We MUST find either an '=' or '+=' symbol...
+                if leaf.type in [token.EQUAL, token.PLUSEQUAL]:
+                    idx = i + 2 if is_empty_par(LL[i + 1]) else i + 1
+
+                    # That symbol MUST be followed by a string...
+                    if is_valid_index(idx) and LL[idx].type == token.STRING:
+                        string_idx = idx
+
+                        # Skip the string trailer, if one exists.
+                        string_parser = StringParser()
+                        idx = string_parser.parse(LL, string_idx)
+
+                        # The next leaf MAY be a comma iff this line is apart
+                        # of a function argument...
+                        if (
+                            parent_type(LL[0]) == syms.argument
+                            and is_valid_index(idx)
+                            and LL[idx].type == token.COMMA
+                        ):
+                            idx += 1
+
+                        # But no more leaves are allowed...
+                        if not is_valid_index(idx):
+                            return string_idx
+
+        return None
+
+    @staticmethod
+    def _dict_match(LL: List[Leaf]) -> Optional[int]:
+        """
+        Returns:
+            string_idx such that @LL[string_idx] is equal to our target (i.e.
+            matched) string, if this line matches the dictionary key assignment
+            statement requirements listed in the 'Requirements' section of this
+            classes' docstring.
+                OR
+            None, otherwise.
+        """
+        # If this line is apart of a dictionary key assignment...
+        if syms.dictsetmaker in [parent_type(LL[0]), parent_type(LL[0].parent)]:
+            is_valid_index = is_valid_index_factory(LL)
+
+            for (i, leaf) in enumerate(LL):
+                # We MUST find a colon...
+                if leaf.type == token.COLON:
+                    idx = i + 2 if is_empty_par(LL[i + 1]) else i + 1
+
+                    # That colon MUST be followed by a string...
+                    if is_valid_index(idx) and LL[idx].type == token.STRING:
+                        string_idx = idx
+
+                        # Skip the string trailer, if one exists.
+                        string_parser = StringParser()
+                        idx = string_parser.parse(LL, string_idx)
+
+                        # That string MAY be followed by a comma...
+                        if is_valid_index(idx) and LL[idx].type == token.COMMA:
+                            idx += 1
+
+                        # But no more leaves are allowed...
+                        if not is_valid_index(idx):
+                            return string_idx
+
+        return None
+
+    def do_transform(self, line: Line, string_idx: int) -> Iterator[TResult[Line]]:
+        LL = line.leaves
+
+        is_valid_index = is_valid_index_factory(LL)
+        insert_str_child = insert_str_child_factory(LL[string_idx])
+
+        comma_idx = -1
+        ends_with_comma = False
+        if LL[comma_idx].type == token.COMMA:
+            ends_with_comma = True
+
+        leaves_to_steal_comments_from = [LL[string_idx]]
+        if ends_with_comma:
+            leaves_to_steal_comments_from.append(LL[comma_idx])
+
+        # --- First Line
+        first_line = line.clone()
+        left_leaves = LL[:string_idx]
+
+        # We have to remember to account for (possibly invisible) LPAR and RPAR
+        # leaves that already wrapped the target string. If these leaves do
+        # exist, we will replace them with our own LPAR and RPAR leaves.
+        old_parens_exist = False
+        if left_leaves and left_leaves[-1].type == token.LPAR:
+            old_parens_exist = True
+            leaves_to_steal_comments_from.append(left_leaves[-1])
+            left_leaves.pop()
+
+        append_leaves(first_line, line, left_leaves)
+
+        lpar_leaf = Leaf(token.LPAR, "(")
+        if old_parens_exist:
+            replace_child(LL[string_idx - 1], lpar_leaf)
+        else:
+            insert_str_child(lpar_leaf)
+        first_line.append(lpar_leaf)
+
+        # We throw inline comments that were originally to the right of the
+        # target string to the top line. They will now be shown to the right of
+        # the LPAR.
+        for leaf in leaves_to_steal_comments_from:
+            for comment_leaf in line.comments_after(leaf):
+                first_line.append(comment_leaf, preformatted=True)
+
+        yield Ok(first_line)
+
+        # --- Middle (String) Line
+        # We only need to yield one (possibly too long) string line, since the
+        # `StringSplitter` will break it down further if necessary.
+        string_value = LL[string_idx].value
+        string_line = Line(
+            mode=line.mode,
+            depth=line.depth + 1,
+            inside_brackets=True,
+            should_split_rhs=line.should_split_rhs,
+            magic_trailing_comma=line.magic_trailing_comma,
+        )
+        string_leaf = Leaf(token.STRING, string_value)
+        insert_str_child(string_leaf)
+        string_line.append(string_leaf)
+
+        old_rpar_leaf = None
+        if is_valid_index(string_idx + 1):
+            right_leaves = LL[string_idx + 1 :]
+            if ends_with_comma:
+                right_leaves.pop()
+
+            if old_parens_exist:
+                assert right_leaves and right_leaves[-1].type == token.RPAR, (
+                    "Apparently, old parentheses do NOT exist?!"
+                    f" (left_leaves={left_leaves}, right_leaves={right_leaves})"
+                )
+                old_rpar_leaf = right_leaves.pop()
+
+            append_leaves(string_line, line, right_leaves)
+
+        yield Ok(string_line)
+
+        # --- Last Line
+        last_line = line.clone()
+        last_line.bracket_tracker = first_line.bracket_tracker
+
+        new_rpar_leaf = Leaf(token.RPAR, ")")
+        if old_rpar_leaf is not None:
+            replace_child(old_rpar_leaf, new_rpar_leaf)
+        else:
+            insert_str_child(new_rpar_leaf)
+        last_line.append(new_rpar_leaf)
+
+        # If the target string ended with a comma, we place this comma to the
+        # right of the RPAR on the last line.
+        if ends_with_comma:
+            comma_leaf = Leaf(token.COMMA, ",")
+            replace_child(LL[comma_idx], comma_leaf)
+            last_line.append(comma_leaf)
+
+        yield Ok(last_line)
+
+
+class StringParser:
+    """
+    A state machine that aids in parsing a string's "trailer", which can be
+    either non-existent, an old-style formatting sequence (e.g. `% varX` or `%
+    (varX, varY)`), or a method-call / attribute access (e.g. `.format(varX,
+    varY)`).
+
+    NOTE: A new StringParser object MUST be instantiated for each string
+    trailer we need to parse.
+
+    Examples:
+        We shall assume that `line` equals the `Line` object that corresponds
+        to the following line of python code:
+        ```
+        x = "Some {}.".format("String") + some_other_string
+        ```
+
+        Furthermore, we will assume that `string_idx` is some index such that:
+        ```
+        assert line.leaves[string_idx].value == "Some {}."
+        ```
+
+        The following code snippet then holds:
+        ```
+        string_parser = StringParser()
+        idx = string_parser.parse(line.leaves, string_idx)
+        assert line.leaves[idx].type == token.PLUS
+        ```
+    """
+
+    DEFAULT_TOKEN = -1
+
+    # String Parser States
+    START = 1
+    DOT = 2
+    NAME = 3
+    PERCENT = 4
+    SINGLE_FMT_ARG = 5
+    LPAR = 6
+    RPAR = 7
+    DONE = 8
+
+    # Lookup Table for Next State
+    _goto: Dict[Tuple[ParserState, NodeType], ParserState] = {
+        # A string trailer may start with '.' OR '%'.
+        (START, token.DOT): DOT,
+        (START, token.PERCENT): PERCENT,
+        (START, DEFAULT_TOKEN): DONE,
+        # A '.' MUST be followed by an attribute or method name.
+        (DOT, token.NAME): NAME,
+        # A method name MUST be followed by an '(', whereas an attribute name
+        # is the last symbol in the string trailer.
+        (NAME, token.LPAR): LPAR,
+        (NAME, DEFAULT_TOKEN): DONE,
+        # A '%' symbol can be followed by an '(' or a single argument (e.g. a
+        # string or variable name).
+        (PERCENT, token.LPAR): LPAR,
+        (PERCENT, DEFAULT_TOKEN): SINGLE_FMT_ARG,
+        # If a '%' symbol is followed by a single argument, that argument is
+        # the last leaf in the string trailer.
+        (SINGLE_FMT_ARG, DEFAULT_TOKEN): DONE,
+        # If present, a ')' symbol is the last symbol in a string trailer.
+        # (NOTE: LPARS and nested RPARS are not included in this lookup table,
+        # since they are treated as a special case by the parsing logic in this
+        # classes' implementation.)
+        (RPAR, DEFAULT_TOKEN): DONE,
+    }
+
+    def __init__(self) -> None:
+        self._state = self.START
+        self._unmatched_lpars = 0
+
+    def parse(self, leaves: List[Leaf], string_idx: int) -> int:
+        """
+        Pre-conditions:
+            * @leaves[@string_idx].type == token.STRING
+
+        Returns:
+            The index directly after the last leaf which is apart of the string
+            trailer, if a "trailer" exists.
+                OR
+            @string_idx + 1, if no string "trailer" exists.
+        """
+        assert leaves[string_idx].type == token.STRING
+
+        idx = string_idx + 1
+        while idx < len(leaves) and self._next_state(leaves[idx]):
+            idx += 1
+        return idx
+
+    def _next_state(self, leaf: Leaf) -> bool:
+        """
+        Pre-conditions:
+            * On the first call to this function, @leaf MUST be the leaf that
+            was directly after the string leaf in question (e.g. if our target
+            string is `line.leaves[i]` then the first call to this method must
+            be `line.leaves[i + 1]`).
+            * On the next call to this function, the leaf parameter passed in
+            MUST be the leaf directly following @leaf.
+
+        Returns:
+            True iff @leaf is apart of the string's trailer.
+        """
+        # We ignore empty LPAR or RPAR leaves.
+        if is_empty_par(leaf):
+            return True
+
+        next_token = leaf.type
+        if next_token == token.LPAR:
+            self._unmatched_lpars += 1
+
+        current_state = self._state
+
+        # The LPAR parser state is a special case. We will return True until we
+        # find the matching RPAR token.
+        if current_state == self.LPAR:
+            if next_token == token.RPAR:
+                self._unmatched_lpars -= 1
+                if self._unmatched_lpars == 0:
+                    self._state = self.RPAR
+        # Otherwise, we use a lookup table to determine the next state.
+        else:
+            # If the lookup table matches the current state to the next
+            # token, we use the lookup table.
+            if (current_state, next_token) in self._goto:
+                self._state = self._goto[current_state, next_token]
+            else:
+                # Otherwise, we check if a the current state was assigned a
+                # default.
+                if (current_state, self.DEFAULT_TOKEN) in self._goto:
+                    self._state = self._goto[current_state, self.DEFAULT_TOKEN]
+                # If no default has been assigned, then this parser has a logic
+                # error.
+                else:
+                    raise RuntimeError(f"{self.__class__.__name__} LOGIC ERROR!")
+
+            if self._state == self.DONE:
+                return False
+
+        return True
+
+
+def insert_str_child_factory(string_leaf: Leaf) -> Callable[[LN], None]:
+    """
+    Factory for a convenience function that is used to orphan @string_leaf
+    and then insert multiple new leaves into the same part of the node
+    structure that @string_leaf had originally occupied.
+
+    Examples:
+        Let `string_leaf = Leaf(token.STRING, '"foo"')` and `N =
+        string_leaf.parent`. Assume the node `N` has the following
+        original structure:
+
+        Node(
+            expr_stmt, [
+                Leaf(NAME, 'x'),
+                Leaf(EQUAL, '='),
+                Leaf(STRING, '"foo"'),
+            ]
+        )
+
+        We then run the code snippet shown below.
+        ```
+        insert_str_child = insert_str_child_factory(string_leaf)
+
+        lpar = Leaf(token.LPAR, '(')
+        insert_str_child(lpar)
+
+        bar = Leaf(token.STRING, '"bar"')
+        insert_str_child(bar)
+
+        rpar = Leaf(token.RPAR, ')')
+        insert_str_child(rpar)
+        ```
+
+        After which point, it follows that `string_leaf.parent is None` and
+        the node `N` now has the following structure:
+
+        Node(
+            expr_stmt, [
+                Leaf(NAME, 'x'),
+                Leaf(EQUAL, '='),
+                Leaf(LPAR, '('),
+                Leaf(STRING, '"bar"'),
+                Leaf(RPAR, ')'),
+            ]
+        )
+    """
+    string_parent = string_leaf.parent
+    string_child_idx = string_leaf.remove()
+
+    def insert_str_child(child: LN) -> None:
+        nonlocal string_child_idx
+
+        assert string_parent is not None
+        assert string_child_idx is not None
+
+        string_parent.insert_child(string_child_idx, child)
+        string_child_idx += 1
+
+    return insert_str_child
+
+
+def is_valid_index_factory(seq: Sequence[Any]) -> Callable[[int], bool]:
+    """
+    Examples:
+        ```
+        my_list = [1, 2, 3]
+
+        is_valid_index = is_valid_index_factory(my_list)
+
+        assert is_valid_index(0)
+        assert is_valid_index(2)
+
+        assert not is_valid_index(3)
+        assert not is_valid_index(-1)
+        ```
+    """
+
+    def is_valid_index(idx: int) -> bool:
+        """
+        Returns:
+            True iff @idx is positive AND seq[@idx] does NOT raise an
+            IndexError.
+        """
+        return 0 <= idx < len(seq)
+
+    return is_valid_index
diff --git a/.vim/bundle/black/src/black_primer/__init__.py b/.vim/bundle/black/src/black_primer/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/src/black_primer/cli.py b/.vim/bundle/black/src/black_primer/cli.py
new file mode 100644 (file)
index 0000000..8360fc3
--- /dev/null
@@ -0,0 +1,155 @@
+# coding=utf8
+
+import asyncio
+import logging
+import sys
+from datetime import datetime
+from pathlib import Path
+from shutil import rmtree, which
+from tempfile import gettempdir
+from typing import Any, Union, Optional
+
+import click
+
+from black_primer import lib
+
+# If our environment has uvloop installed lets use it
+try:
+    import uvloop
+
+    uvloop.install()
+except ImportError:
+    pass
+
+
+DEFAULT_CONFIG = Path(__file__).parent / "primer.json"
+_timestamp = datetime.now().strftime("%Y%m%d%H%M%S")
+DEFAULT_WORKDIR = Path(gettempdir()) / f"primer.{_timestamp}"
+LOG = logging.getLogger(__name__)
+
+
+def _handle_debug(
+    ctx: Optional[click.core.Context],
+    param: Optional[Union[click.core.Option, click.core.Parameter]],
+    debug: Union[bool, int, str],
+) -> Union[bool, int, str]:
+    """Turn on debugging if asked otherwise INFO default"""
+    log_level = logging.DEBUG if debug else logging.INFO
+    logging.basicConfig(
+        format="[%(asctime)s] %(levelname)s: %(message)s (%(filename)s:%(lineno)d)",
+        level=log_level,
+    )
+    return debug
+
+
+async def async_main(
+    config: str,
+    debug: bool,
+    keep: bool,
+    long_checkouts: bool,
+    no_diff: bool,
+    rebase: bool,
+    workdir: str,
+    workers: int,
+) -> int:
+    work_path = Path(workdir)
+    if not work_path.exists():
+        LOG.debug(f"Creating {work_path}")
+        work_path.mkdir()
+
+    if not which("black"):
+        LOG.error("Can not find 'black' executable in PATH. No point in running")
+        return -1
+
+    try:
+        ret_val = await lib.process_queue(
+            config,
+            work_path,
+            workers,
+            keep,
+            long_checkouts,
+            rebase,
+            no_diff,
+        )
+        return int(ret_val)
+    finally:
+        if not keep and work_path.exists():
+            LOG.debug(f"Removing {work_path}")
+            rmtree(work_path, onerror=lib.handle_PermissionError)
+
+    return -2
+
+
+@click.command(context_settings={"help_option_names": ["-h", "--help"]})
+@click.option(
+    "-c",
+    "--config",
+    default=str(DEFAULT_CONFIG),
+    type=click.Path(exists=True),
+    show_default=True,
+    help="JSON config file path",
+)
+@click.option(
+    "--debug",
+    is_flag=True,
+    callback=_handle_debug,
+    show_default=True,
+    help="Turn on debug logging",
+)
+@click.option(
+    "-k",
+    "--keep",
+    is_flag=True,
+    show_default=True,
+    help="Keep workdir + repos post run",
+)
+@click.option(
+    "-L",
+    "--long-checkouts",
+    is_flag=True,
+    show_default=True,
+    help="Pull big projects to test",
+)
+@click.option(
+    "--no-diff",
+    is_flag=True,
+    show_default=True,
+    help="Disable showing source file changes in black output",
+)
+@click.option(
+    "-R",
+    "--rebase",
+    is_flag=True,
+    show_default=True,
+    help="Rebase project if already checked out",
+)
+@click.option(
+    "-w",
+    "--workdir",
+    default=str(DEFAULT_WORKDIR),
+    type=click.Path(exists=False),
+    show_default=True,
+    help="Directory path for repo checkouts",
+)
+@click.option(
+    "-W",
+    "--workers",
+    default=2,
+    type=int,
+    show_default=True,
+    help="Number of parallel worker coroutines",
+)
+@click.pass_context
+def main(ctx: click.core.Context, **kwargs: Any) -> None:
+    """primer - prime projects for blackening... 🏴"""
+    LOG.debug(f"Starting {sys.argv[0]}")
+    # TODO: Change to asyncio.run when Black >= 3.7 only
+    loop = asyncio.get_event_loop()
+    try:
+        ctx.exit(loop.run_until_complete(async_main(**kwargs)))
+    finally:
+        loop.close()
+
+
+if __name__ == "__main__":  # pragma: nocover
+    main()
diff --git a/.vim/bundle/black/src/black_primer/lib.py b/.vim/bundle/black/src/black_primer/lib.py
new file mode 100644 (file)
index 0000000..7494ae6
--- /dev/null
@@ -0,0 +1,418 @@
+import asyncio
+import errno
+import json
+import logging
+import os
+import stat
+import sys
+from functools import partial
+from pathlib import Path
+from platform import system
+from shutil import rmtree, which
+from subprocess import CalledProcessError
+from sys import version_info
+from tempfile import TemporaryDirectory
+from typing import (
+    Any,
+    Callable,
+    Dict,
+    List,
+    NamedTuple,
+    Optional,
+    Sequence,
+    Tuple,
+    Union,
+)
+from urllib.parse import urlparse
+
+import click
+
+
+TEN_MINUTES_SECONDS = 600
+WINDOWS = system() == "Windows"
+BLACK_BINARY = "black.exe" if WINDOWS else "black"
+GIT_BINARY = "git.exe" if WINDOWS else "git"
+LOG = logging.getLogger(__name__)
+
+
+# Windows needs a ProactorEventLoop if you want to exec subprocesses
+# Starting with 3.8 this is the default - can remove when Black >= 3.8
+# mypy only respects sys.platform if directly in the evaluation
+# https://mypy.readthedocs.io/en/latest/common_issues.html#python-version-and-system-platform-checks  # noqa: B950
+if sys.platform == "win32":
+    asyncio.set_event_loop(asyncio.ProactorEventLoop())
+
+
+class Results(NamedTuple):
+    stats: Dict[str, int] = {}
+    failed_projects: Dict[str, CalledProcessError] = {}
+
+
+async def _gen_check_output(
+    cmd: Sequence[str],
+    timeout: float = TEN_MINUTES_SECONDS,
+    env: Optional[Dict[str, str]] = None,
+    cwd: Optional[Path] = None,
+    stdin: Optional[bytes] = None,
+) -> Tuple[bytes, bytes]:
+    process = await asyncio.create_subprocess_exec(
+        *cmd,
+        stdin=asyncio.subprocess.PIPE,
+        stdout=asyncio.subprocess.PIPE,
+        stderr=asyncio.subprocess.STDOUT,
+        env=env,
+        cwd=cwd,
+    )
+    try:
+        (stdout, stderr) = await asyncio.wait_for(process.communicate(stdin), timeout)
+    except asyncio.TimeoutError:
+        process.kill()
+        await process.wait()
+        raise
+
+    # A non-optional timeout was supplied to asyncio.wait_for, guaranteeing
+    # a timeout or completed process.  A terminated Python process will have a
+    # non-empty returncode value.
+    assert process.returncode is not None
+
+    if process.returncode != 0:
+        cmd_str = " ".join(cmd)
+        raise CalledProcessError(
+            process.returncode, cmd_str, output=stdout, stderr=stderr
+        )
+
+    return (stdout, stderr)
+
+
+def analyze_results(project_count: int, results: Results) -> int:
+    failed_pct = round(((results.stats["failed"] / project_count) * 100), 2)
+    success_pct = round(((results.stats["success"] / project_count) * 100), 2)
+
+    click.secho("-- primer results 📊 --\n", bold=True)
+    click.secho(
+        f"{results.stats['success']} / {project_count} succeeded ({success_pct}%) ✅",
+        bold=True,
+        fg="green",
+    )
+    click.secho(
+        f"{results.stats['failed']} / {project_count} FAILED ({failed_pct}%) 💩",
+        bold=bool(results.stats["failed"]),
+        fg="red",
+    )
+    s = "" if results.stats["disabled"] == 1 else "s"
+    click.echo(f" - {results.stats['disabled']} project{s} disabled by config")
+    s = "" if results.stats["wrong_py_ver"] == 1 else "s"
+    click.echo(
+        f" - {results.stats['wrong_py_ver']} project{s} skipped due to Python version"
+    )
+    click.echo(
+        f" - {results.stats['skipped_long_checkout']} skipped due to long checkout"
+    )
+
+    if results.failed_projects:
+        click.secho("\nFailed projects:\n", bold=True)
+
+    for project_name, project_cpe in results.failed_projects.items():
+        print(f"## {project_name}:")
+        print(f" - Returned {project_cpe.returncode}")
+        if project_cpe.stderr:
+            print(f" - stderr:\n{project_cpe.stderr.decode('utf8')}")
+        if project_cpe.stdout:
+            print(f" - stdout:\n{project_cpe.stdout.decode('utf8')}")
+        print("")
+
+    return results.stats["failed"]
+
+
+def _flatten_cli_args(cli_args: List[Union[Sequence[str], str]]) -> List[str]:
+    """Allow a user to put long arguments into a list of strs
+    to make the JSON human readable"""
+    flat_args = []
+    for arg in cli_args:
+        if isinstance(arg, str):
+            flat_args.append(arg)
+            continue
+
+        args_as_str = "".join(arg)
+        flat_args.append(args_as_str)
+
+    return flat_args
+
+
+async def black_run(
+    project_name: str,
+    repo_path: Optional[Path],
+    project_config: Dict[str, Any],
+    results: Results,
+    no_diff: bool = False,
+) -> None:
+    """Run Black and record failures"""
+    if not repo_path:
+        results.stats["failed"] += 1
+        results.failed_projects[project_name] = CalledProcessError(
+            69, [], f"{project_name} has no repo_path: {repo_path}".encode(), b""
+        )
+        return
+
+    stdin_test = project_name.upper() == "STDIN"
+    cmd = [str(which(BLACK_BINARY))]
+    if "cli_arguments" in project_config and project_config["cli_arguments"]:
+        cmd.extend(_flatten_cli_args(project_config["cli_arguments"]))
+    cmd.append("--check")
+    if not no_diff:
+        cmd.append("--diff")
+
+    # Workout if we should read in a python file or search from cwd
+    stdin = None
+    if stdin_test:
+        cmd.append("-")
+        stdin = repo_path.read_bytes()
+    elif "base_path" in project_config:
+        cmd.append(project_config["base_path"])
+    else:
+        cmd.append(".")
+
+    timeout = (
+        project_config["timeout_seconds"]
+        if "timeout_seconds" in project_config
+        else TEN_MINUTES_SECONDS
+    )
+    with TemporaryDirectory() as tmp_path:
+        # Prevent reading top-level user configs by manipulating environment variables
+        env = {
+            **os.environ,
+            "XDG_CONFIG_HOME": tmp_path,  # Unix-like
+            "USERPROFILE": tmp_path,  # Windows (changes `Path.home()` output)
+        }
+
+        cwd_path = repo_path.parent if stdin_test else repo_path
+        try:
+            LOG.debug(f"Running black for {project_name}: {' '.join(cmd)}")
+            _stdout, _stderr = await _gen_check_output(
+                cmd, cwd=cwd_path, env=env, stdin=stdin, timeout=timeout
+            )
+        except asyncio.TimeoutError:
+            results.stats["failed"] += 1
+            LOG.error(f"Running black for {repo_path} timed out ({cmd})")
+        except CalledProcessError as cpe:
+            # TODO: Tune for smarter for higher signal
+            # If any other return value than 1 we raise - can disable project in config
+            if cpe.returncode == 1:
+                if not project_config["expect_formatting_changes"]:
+                    results.stats["failed"] += 1
+                    results.failed_projects[repo_path.name] = cpe
+                else:
+                    results.stats["success"] += 1
+                return
+            elif cpe.returncode > 1:
+                results.stats["failed"] += 1
+                results.failed_projects[repo_path.name] = cpe
+                return
+
+            LOG.error(f"Unknown error with {repo_path}")
+            raise
+
+    # If we get here and expect formatting changes something is up
+    if project_config["expect_formatting_changes"]:
+        results.stats["failed"] += 1
+        results.failed_projects[repo_path.name] = CalledProcessError(
+            0, cmd, b"Expected formatting changes but didn't get any!", b""
+        )
+        return
+
+    results.stats["success"] += 1
+
+
+async def git_checkout_or_rebase(
+    work_path: Path,
+    project_config: Dict[str, Any],
+    rebase: bool = False,
+    *,
+    depth: int = 1,
+) -> Optional[Path]:
+    """git Clone project or rebase"""
+    git_bin = str(which(GIT_BINARY))
+    if not git_bin:
+        LOG.error("No git binary found")
+        return None
+
+    repo_url_parts = urlparse(project_config["git_clone_url"])
+    path_parts = repo_url_parts.path[1:].split("/", maxsplit=1)
+
+    repo_path: Path = work_path / path_parts[1].replace(".git", "")
+    cmd = [git_bin, "clone", "--depth", str(depth), project_config["git_clone_url"]]
+    cwd = work_path
+    if repo_path.exists() and rebase:
+        cmd = [git_bin, "pull", "--rebase"]
+        cwd = repo_path
+    elif repo_path.exists():
+        return repo_path
+
+    try:
+        _stdout, _stderr = await _gen_check_output(cmd, cwd=cwd)
+    except (asyncio.TimeoutError, CalledProcessError) as e:
+        LOG.error(f"Unable to git clone / pull {project_config['git_clone_url']}: {e}")
+        return None
+
+    return repo_path
+
+
+def handle_PermissionError(
+    func: Callable, path: Path, exc: Tuple[Any, Any, Any]
+) -> None:
+    """
+    Handle PermissionError during shutil.rmtree.
+
+    This checks if the erroring function is either 'os.rmdir' or 'os.unlink', and that
+    the error was EACCES (i.e. Permission denied). If true, the path is set writable,
+    readable, and executable by everyone. Finally, it tries the error causing delete
+    operation again.
+
+    If the check is false, then the original error will be reraised as this function
+    can't handle it.
+    """
+    excvalue = exc[1]
+    LOG.debug(f"Handling {excvalue} from {func.__name__}... ")
+    if func in (os.rmdir, os.unlink) and excvalue.errno == errno.EACCES:
+        LOG.debug(f"Setting {path} writable, readable, and executable by everyone... ")
+        os.chmod(path, stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO)  # chmod 0777
+        func(path)  # Try the error causing delete operation again
+    else:
+        raise
+
+
+async def load_projects_queue(
+    config_path: Path,
+) -> Tuple[Dict[str, Any], asyncio.Queue]:
+    """Load project config and fill queue with all the project names"""
+    with config_path.open("r") as cfp:
+        config = json.load(cfp)
+
+    # TODO: Offer more options here
+    # e.g. Run on X random packages or specific sub list etc.
+    project_names = sorted(config["projects"].keys())
+    queue: asyncio.Queue = asyncio.Queue(maxsize=len(project_names))
+    for project in project_names:
+        await queue.put(project)
+
+    return config, queue
+
+
+async def project_runner(
+    idx: int,
+    config: Dict[str, Any],
+    queue: asyncio.Queue,
+    work_path: Path,
+    results: Results,
+    long_checkouts: bool = False,
+    rebase: bool = False,
+    keep: bool = False,
+    no_diff: bool = False,
+) -> None:
+    """Check out project and run Black on it + record result"""
+    loop = asyncio.get_event_loop()
+    py_version = f"{version_info[0]}.{version_info[1]}"
+    while True:
+        try:
+            project_name = queue.get_nowait()
+        except asyncio.QueueEmpty:
+            LOG.debug(f"project_runner {idx} exiting")
+            return
+        LOG.debug(f"worker {idx} working on {project_name}")
+
+        project_config = config["projects"][project_name]
+
+        # Check if disabled by config
+        if "disabled" in project_config and project_config["disabled"]:
+            results.stats["disabled"] += 1
+            LOG.info(f"Skipping {project_name} as it's disabled via config")
+            continue
+
+        # Check if we should run on this version of Python
+        if (
+            "all" not in project_config["py_versions"]
+            and py_version not in project_config["py_versions"]
+        ):
+            results.stats["wrong_py_ver"] += 1
+            LOG.debug(f"Skipping {project_name} as it's not enabled for {py_version}")
+            continue
+
+        # Check if we're doing big projects / long checkouts
+        if not long_checkouts and project_config["long_checkout"]:
+            results.stats["skipped_long_checkout"] += 1
+            LOG.debug(f"Skipping {project_name} as it's configured as a long checkout")
+            continue
+
+        repo_path: Optional[Path] = Path(__file__)
+        stdin_project = project_name.upper() == "STDIN"
+        if not stdin_project:
+            repo_path = await git_checkout_or_rebase(work_path, project_config, rebase)
+            if not repo_path:
+                continue
+        await black_run(project_name, repo_path, project_config, results, no_diff)
+
+        if not keep and not stdin_project:
+            LOG.debug(f"Removing {repo_path}")
+            rmtree_partial = partial(
+                rmtree, path=repo_path, onerror=handle_PermissionError
+            )
+            await loop.run_in_executor(None, rmtree_partial)
+
+        LOG.info(f"Finished {project_name}")
+
+
+async def process_queue(
+    config_file: str,
+    work_path: Path,
+    workers: int,
+    keep: bool = False,
+    long_checkouts: bool = False,
+    rebase: bool = False,
+    no_diff: bool = False,
+) -> int:
+    """
+    Process the queue with X workers and evaluate results
+    - Success is guaged via the config "expect_formatting_changes"
+
+    Integer return equals the number of failed projects
+    """
+    results = Results()
+    results.stats["disabled"] = 0
+    results.stats["failed"] = 0
+    results.stats["skipped_long_checkout"] = 0
+    results.stats["success"] = 0
+    results.stats["wrong_py_ver"] = 0
+
+    config, queue = await load_projects_queue(Path(config_file))
+    project_count = queue.qsize()
+    s = "" if project_count == 1 else "s"
+    LOG.info(f"{project_count} project{s} to run Black over")
+    if project_count < 1:
+        return -1
+
+    s = "" if workers == 1 else "s"
+    LOG.debug(f"Using {workers} parallel worker{s} to run Black")
+    # Wait until we finish running all the projects before analyzing
+    await asyncio.gather(
+        *[
+            project_runner(
+                i,
+                config,
+                queue,
+                work_path,
+                results,
+                long_checkouts,
+                rebase,
+                keep,
+                no_diff,
+            )
+            for i in range(workers)
+        ]
+    )
+
+    LOG.info("Analyzing results")
+    return analyze_results(project_count, results)
+
+
+if __name__ == "__main__":  # pragma: nocover
+    raise NotImplementedError("lib is a library, funnily enough.")
diff --git a/.vim/bundle/black/src/black_primer/primer.json b/.vim/bundle/black/src/black_primer/primer.json
new file mode 100644 (file)
index 0000000..0d1018f
--- /dev/null
@@ -0,0 +1,188 @@
+{
+  "configuration_format_version": 20210815,
+  "projects": {
+    "STDIN": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": false,
+      "git_clone_url": "",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "aioexabgp": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": false,
+      "git_clone_url": "https://github.com/cooperlees/aioexabgp.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "attrs": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/python-attrs/attrs.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "bandersnatch": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/pypa/bandersnatch.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "channels": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/django/channels.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "cpython": {
+      "disabled": true,
+      "disabled_reason": "To big / slow for GitHub Actions but handy to keep config to use manually or in some other CI in the future",
+      "base_path": "Lib",
+      "cli_arguments": [
+        "--experimental-string-processing",
+        "--extend-exclude",
+        [
+          "Lib/lib2to3/tests/data/different_encoding.py",
+          "|Lib/lib2to3/tests/data/false_encoding.py",
+          "|Lib/lib2to3/tests/data/py2_test_grammar.py",
+          "|Lib/test/bad_coding.py",
+          "|Lib/test/bad_coding2.py",
+          "|Lib/test/badsyntax_3131.py",
+          "|Lib/test/badsyntax_pep3120.py",
+          "|Lib/test/test_base64.py",
+          "|Lib/test/test_exceptions.py",
+          "|Lib/test/test_grammar.py",
+          "|Lib/test/test_named_expressions.py",
+          "|Lib/test/test_patma.py",
+          "|Lib/test/test_tokenize.py",
+          "|Lib/test/test_xml_etree.py",
+          "|Lib/traceback.py"
+        ]
+      ],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/python/cpython.git",
+      "long_checkout": false,
+      "py_versions": ["3.9", "3.10"],
+      "timeout_seconds": 900
+    },
+    "django": {
+      "cli_arguments": [
+        "--experimental-string-processing",
+        "--skip-string-normalization",
+        "--extend-exclude",
+        "/((docs|scripts)/|django/forms/models.py|tests/gis_tests/test_spatialrefsys.py|tests/test_runner_apps/tagged/tests_syntax_error.py)"
+      ],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/django/django.git",
+      "long_checkout": false,
+      "py_versions": ["3.8", "3.9"]
+    },
+    "flake8-bugbear": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": false,
+      "git_clone_url": "https://github.com/PyCQA/flake8-bugbear.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "hypothesis": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/HypothesisWorks/hypothesis.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "pandas": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/pandas-dev/pandas.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "pillow": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/python-pillow/Pillow.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "poetry": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/python-poetry/poetry.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "pyanalyze": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": false,
+      "git_clone_url": "https://github.com/quora/pyanalyze.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "pyramid": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/Pylons/pyramid.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "ptr": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": false,
+      "git_clone_url": "https://github.com/facebookincubator/ptr.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "pytest": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/pytest-dev/pytest.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "scikit-lego": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/koaning/scikit-lego",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "sqlalchemy": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/sqlalchemy/sqlalchemy.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "tox": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/tox-dev/tox.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "typeshed": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/python/typeshed.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "virtualenv": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/pypa/virtualenv.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    },
+    "warehouse": {
+      "cli_arguments": ["--experimental-string-processing"],
+      "expect_formatting_changes": true,
+      "git_clone_url": "https://github.com/pypa/warehouse.git",
+      "long_checkout": false,
+      "py_versions": ["all"]
+    }
+  }
+}
diff --git a/.vim/bundle/black/src/blackd/__init__.py b/.vim/bundle/black/src/blackd/__init__.py
new file mode 100644 (file)
index 0000000..cc96640
--- /dev/null
@@ -0,0 +1,201 @@
+import asyncio
+import logging
+from concurrent.futures import Executor, ProcessPoolExecutor
+from datetime import datetime
+from functools import partial
+from multiprocessing import freeze_support
+from typing import Set, Tuple
+
+try:
+    from aiohttp import web
+    from .middlewares import cors
+except ImportError as ie:
+    raise ImportError(
+        f"aiohttp dependency is not installed: {ie}. "
+        + "Please re-install black with the '[d]' extra install "
+        + "to obtain aiohttp_cors: `pip install black[d]`"
+    ) from None
+
+import black
+from black.concurrency import maybe_install_uvloop
+import click
+
+from _black_version import version as __version__
+
+# This is used internally by tests to shut down the server prematurely
+_stop_signal = asyncio.Event()
+
+# Request headers
+PROTOCOL_VERSION_HEADER = "X-Protocol-Version"
+LINE_LENGTH_HEADER = "X-Line-Length"
+PYTHON_VARIANT_HEADER = "X-Python-Variant"
+SKIP_STRING_NORMALIZATION_HEADER = "X-Skip-String-Normalization"
+SKIP_MAGIC_TRAILING_COMMA = "X-Skip-Magic-Trailing-Comma"
+FAST_OR_SAFE_HEADER = "X-Fast-Or-Safe"
+DIFF_HEADER = "X-Diff"
+
+BLACK_HEADERS = [
+    PROTOCOL_VERSION_HEADER,
+    LINE_LENGTH_HEADER,
+    PYTHON_VARIANT_HEADER,
+    SKIP_STRING_NORMALIZATION_HEADER,
+    SKIP_MAGIC_TRAILING_COMMA,
+    FAST_OR_SAFE_HEADER,
+    DIFF_HEADER,
+]
+
+# Response headers
+BLACK_VERSION_HEADER = "X-Black-Version"
+
+
+class InvalidVariantHeader(Exception):
+    pass
+
+
+@click.command(context_settings={"help_option_names": ["-h", "--help"]})
+@click.option(
+    "--bind-host", type=str, help="Address to bind the server to.", default="localhost"
+)
+@click.option("--bind-port", type=int, help="Port to listen on", default=45484)
+@click.version_option(version=black.__version__)
+def main(bind_host: str, bind_port: int) -> None:
+    logging.basicConfig(level=logging.INFO)
+    app = make_app()
+    ver = black.__version__
+    black.out(f"blackd version {ver} listening on {bind_host} port {bind_port}")
+    web.run_app(app, host=bind_host, port=bind_port, handle_signals=True, print=None)
+
+
+def make_app() -> web.Application:
+    app = web.Application(
+        middlewares=[cors(allow_headers=(*BLACK_HEADERS, "Content-Type"))]
+    )
+    executor = ProcessPoolExecutor()
+    app.add_routes([web.post("/", partial(handle, executor=executor))])
+    return app
+
+
+async def handle(request: web.Request, executor: Executor) -> web.Response:
+    headers = {BLACK_VERSION_HEADER: __version__}
+    try:
+        if request.headers.get(PROTOCOL_VERSION_HEADER, "1") != "1":
+            return web.Response(
+                status=501, text="This server only supports protocol version 1"
+            )
+        try:
+            line_length = int(
+                request.headers.get(LINE_LENGTH_HEADER, black.DEFAULT_LINE_LENGTH)
+            )
+        except ValueError:
+            return web.Response(status=400, text="Invalid line length header value")
+
+        if PYTHON_VARIANT_HEADER in request.headers:
+            value = request.headers[PYTHON_VARIANT_HEADER]
+            try:
+                pyi, versions = parse_python_variant_header(value)
+            except InvalidVariantHeader as e:
+                return web.Response(
+                    status=400,
+                    text=f"Invalid value for {PYTHON_VARIANT_HEADER}: {e.args[0]}",
+                )
+        else:
+            pyi = False
+            versions = set()
+
+        skip_string_normalization = bool(
+            request.headers.get(SKIP_STRING_NORMALIZATION_HEADER, False)
+        )
+        skip_magic_trailing_comma = bool(
+            request.headers.get(SKIP_MAGIC_TRAILING_COMMA, False)
+        )
+        fast = False
+        if request.headers.get(FAST_OR_SAFE_HEADER, "safe") == "fast":
+            fast = True
+        mode = black.FileMode(
+            target_versions=versions,
+            is_pyi=pyi,
+            line_length=line_length,
+            string_normalization=not skip_string_normalization,
+            magic_trailing_comma=not skip_magic_trailing_comma,
+        )
+        req_bytes = await request.content.read()
+        charset = request.charset if request.charset is not None else "utf8"
+        req_str = req_bytes.decode(charset)
+        then = datetime.utcnow()
+
+        loop = asyncio.get_event_loop()
+        formatted_str = await loop.run_in_executor(
+            executor, partial(black.format_file_contents, req_str, fast=fast, mode=mode)
+        )
+
+        # Only output the diff in the HTTP response
+        only_diff = bool(request.headers.get(DIFF_HEADER, False))
+        if only_diff:
+            now = datetime.utcnow()
+            src_name = f"In\t{then} +0000"
+            dst_name = f"Out\t{now} +0000"
+            loop = asyncio.get_event_loop()
+            formatted_str = await loop.run_in_executor(
+                executor,
+                partial(black.diff, req_str, formatted_str, src_name, dst_name),
+            )
+
+        return web.Response(
+            content_type=request.content_type,
+            charset=charset,
+            headers=headers,
+            text=formatted_str,
+        )
+    except black.NothingChanged:
+        return web.Response(status=204, headers=headers)
+    except black.InvalidInput as e:
+        return web.Response(status=400, headers=headers, text=str(e))
+    except Exception as e:
+        logging.exception("Exception during handling a request")
+        return web.Response(status=500, headers=headers, text=str(e))
+
+
+def parse_python_variant_header(value: str) -> Tuple[bool, Set[black.TargetVersion]]:
+    if value == "pyi":
+        return True, set()
+    else:
+        versions = set()
+        for version in value.split(","):
+            if version.startswith("py"):
+                version = version[len("py") :]
+            if "." in version:
+                major_str, *rest = version.split(".")
+            else:
+                major_str = version[0]
+                rest = [version[1:]] if len(version) > 1 else []
+            try:
+                major = int(major_str)
+                if major not in (2, 3):
+                    raise InvalidVariantHeader("major version must be 2 or 3")
+                if len(rest) > 0:
+                    minor = int(rest[0])
+                    if major == 2 and minor != 7:
+                        raise InvalidVariantHeader(
+                            "minor version must be 7 for Python 2"
+                        )
+                else:
+                    # Default to lowest supported minor version.
+                    minor = 7 if major == 2 else 3
+                version_str = f"PY{major}{minor}"
+                if major == 3 and not hasattr(black.TargetVersion, version_str):
+                    raise InvalidVariantHeader(f"3.{minor} is not supported")
+                versions.add(black.TargetVersion[version_str])
+            except (KeyError, ValueError):
+                raise InvalidVariantHeader("expected e.g. '3.7', 'py3.5'") from None
+        return False, versions
+
+
+def patched_main() -> None:
+    maybe_install_uvloop()
+    freeze_support()
+    black.patch_click()
+    main()
+
+
+if __name__ == "__main__":
+    patched_main()
diff --git a/.vim/bundle/black/src/blackd/middlewares.py b/.vim/bundle/black/src/blackd/middlewares.py
new file mode 100644 (file)
index 0000000..97994ec
--- /dev/null
@@ -0,0 +1,34 @@
+from typing import Iterable, Awaitable, Callable
+from aiohttp.web_response import StreamResponse
+from aiohttp.web_request import Request
+from aiohttp.web_middlewares import middleware
+
+Handler = Callable[[Request], Awaitable[StreamResponse]]
+Middleware = Callable[[Request, Handler], Awaitable[StreamResponse]]
+
+
+def cors(allow_headers: Iterable[str]) -> Middleware:
+    @middleware
+    async def impl(request: Request, handler: Handler) -> StreamResponse:
+        is_options = request.method == "OPTIONS"
+        is_preflight = is_options and "Access-Control-Request-Method" in request.headers
+        if is_preflight:
+            resp = StreamResponse()
+        else:
+            resp = await handler(request)
+
+        origin = request.headers.get("Origin")
+        if not origin:
+            return resp
+
+        resp.headers["Access-Control-Allow-Origin"] = "*"
+        resp.headers["Access-Control-Expose-Headers"] = "*"
+        if is_options:
+            resp.headers["Access-Control-Allow-Headers"] = ", ".join(allow_headers)
+            resp.headers["Access-Control-Allow-Methods"] = ", ".join(
+                ("OPTIONS", "POST")
+            )
+
+        return resp
+
+    return impl  # type: ignore
diff --git a/.vim/bundle/black/src/blib2to3/Grammar.txt b/.vim/bundle/black/src/blib2to3/Grammar.txt
new file mode 100644 (file)
index 0000000..ac8a067
--- /dev/null
@@ -0,0 +1,215 @@
+# Grammar for 2to3. This grammar supports Python 2.x and 3.x.
+
+# NOTE WELL: You should also follow all the steps listed at
+# https://devguide.python.org/grammar/
+
+# Start symbols for the grammar:
+#      file_input is a module or sequence of commands read from an input file;
+#      single_input is a single interactive statement;
+#      eval_input is the input for the eval() and input() functions.
+# NB: compound_stmt in single_input is followed by extra NEWLINE!
+file_input: (NEWLINE | stmt)* ENDMARKER
+single_input: NEWLINE | simple_stmt | compound_stmt NEWLINE
+eval_input: testlist NEWLINE* ENDMARKER
+
+decorator: '@' namedexpr_test NEWLINE
+decorators: decorator+
+decorated: decorators (classdef | funcdef | async_funcdef)
+async_funcdef: ASYNC funcdef
+funcdef: 'def' NAME parameters ['->' test] ':' suite
+parameters: '(' [typedargslist] ')'
+
+# The following definition for typedarglist is equivalent to this set of rules:
+#
+#     arguments = argument (',' argument)*
+#     argument = tfpdef ['=' test]
+#     kwargs = '**' tname [',']
+#     args = '*' [tname]
+#     kwonly_kwargs = (',' argument)* [',' [kwargs]]
+#     args_kwonly_kwargs = args kwonly_kwargs | kwargs
+#     poskeyword_args_kwonly_kwargs = arguments [',' [args_kwonly_kwargs]]
+#     typedargslist_no_posonly  = poskeyword_args_kwonly_kwargs | args_kwonly_kwargs
+#     typedarglist = arguments ',' '/' [',' [typedargslist_no_posonly]])|(typedargslist_no_posonly)"
+#
+# It needs to be fully expanded to allow our LL(1) parser to work on it.
+
+typedargslist: tfpdef ['=' test] (',' tfpdef ['=' test])* ',' '/' [
+                     ',' [((tfpdef ['=' test] ',')* ('*' [tname] (',' tname ['=' test])*
+                            [',' ['**' tname [',']]] | '**' tname [','])
+                     | tfpdef ['=' test] (',' tfpdef ['=' test])* [','])]
+                ] | ((tfpdef ['=' test] ',')* ('*' [tname] (',' tname ['=' test])*
+                     [',' ['**' tname [',']]] | '**' tname [','])
+                     | tfpdef ['=' test] (',' tfpdef ['=' test])* [','])
+
+tname: NAME [':' test]
+tfpdef: tname | '(' tfplist ')'
+tfplist: tfpdef (',' tfpdef)* [',']
+
+# The following definition for varargslist is equivalent to this set of rules:
+#
+#     arguments = argument (',' argument )*
+#     argument = vfpdef ['=' test]
+#     kwargs = '**' vname [',']
+#     args = '*' [vname]
+#     kwonly_kwargs = (',' argument )* [',' [kwargs]]
+#     args_kwonly_kwargs = args kwonly_kwargs | kwargs
+#     poskeyword_args_kwonly_kwargs = arguments [',' [args_kwonly_kwargs]]
+#     vararglist_no_posonly = poskeyword_args_kwonly_kwargs | args_kwonly_kwargs
+#     varargslist = arguments ',' '/' [','[(vararglist_no_posonly)]] | (vararglist_no_posonly)
+#
+# It needs to be fully expanded to allow our LL(1) parser to work on it.
+
+varargslist: vfpdef ['=' test ](',' vfpdef ['=' test])* ',' '/' [',' [
+                     ((vfpdef ['=' test] ',')* ('*' [vname] (',' vname ['=' test])*
+                            [',' ['**' vname [',']]] | '**' vname [','])
+                            | vfpdef ['=' test] (',' vfpdef ['=' test])* [','])
+                     ]] | ((vfpdef ['=' test] ',')*
+                     ('*' [vname] (',' vname ['=' test])*  [',' ['**' vname [',']]]| '**' vname [','])
+                     | vfpdef ['=' test] (',' vfpdef ['=' test])* [','])
+
+vname: NAME
+vfpdef: vname | '(' vfplist ')'
+vfplist: vfpdef (',' vfpdef)* [',']
+
+stmt: simple_stmt | compound_stmt
+simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE
+small_stmt: (expr_stmt | print_stmt  | del_stmt | pass_stmt | flow_stmt |
+             import_stmt | global_stmt | exec_stmt | assert_stmt)
+expr_stmt: testlist_star_expr (annassign | augassign (yield_expr|testlist) |
+                     ('=' (yield_expr|testlist_star_expr))*)
+annassign: ':' test ['=' (yield_expr|testlist_star_expr)]
+testlist_star_expr: (test|star_expr) (',' (test|star_expr))* [',']
+augassign: ('+=' | '-=' | '*=' | '@=' | '/=' | '%=' | '&=' | '|=' | '^=' |
+            '<<=' | '>>=' | '**=' | '//=')
+# For normal and annotated assignments, additional restrictions enforced by the interpreter
+print_stmt: 'print' ( [ test (',' test)* [','] ] |
+                      '>>' test [ (',' test)+ [','] ] )
+del_stmt: 'del' exprlist
+pass_stmt: 'pass'
+flow_stmt: break_stmt | continue_stmt | return_stmt | raise_stmt | yield_stmt
+break_stmt: 'break'
+continue_stmt: 'continue'
+return_stmt: 'return' [testlist_star_expr]
+yield_stmt: yield_expr
+raise_stmt: 'raise' [test ['from' test | ',' test [',' test]]]
+import_stmt: import_name | import_from
+import_name: 'import' dotted_as_names
+import_from: ('from' ('.'* dotted_name | '.'+)
+              'import' ('*' | '(' import_as_names ')' | import_as_names))
+import_as_name: NAME ['as' NAME]
+dotted_as_name: dotted_name ['as' NAME]
+import_as_names: import_as_name (',' import_as_name)* [',']
+dotted_as_names: dotted_as_name (',' dotted_as_name)*
+dotted_name: NAME ('.' NAME)*
+global_stmt: ('global' | 'nonlocal') NAME (',' NAME)*
+exec_stmt: 'exec' expr ['in' test [',' test]]
+assert_stmt: 'assert' test [',' test]
+
+compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | with_stmt | funcdef | classdef | decorated | async_stmt
+async_stmt: ASYNC (funcdef | with_stmt | for_stmt)
+if_stmt: 'if' namedexpr_test ':' suite ('elif' namedexpr_test ':' suite)* ['else' ':' suite]
+while_stmt: 'while' namedexpr_test ':' suite ['else' ':' suite]
+for_stmt: 'for' exprlist 'in' testlist ':' suite ['else' ':' suite]
+try_stmt: ('try' ':' suite
+           ((except_clause ':' suite)+
+           ['else' ':' suite]
+           ['finally' ':' suite] |
+          'finally' ':' suite))
+with_stmt: 'with' with_item (',' with_item)*  ':' suite
+with_item: test ['as' expr]
+with_var: 'as' expr
+# NB compile.c makes sure that the default except clause is last
+except_clause: 'except' [test [(',' | 'as') test]]
+suite: simple_stmt | NEWLINE INDENT stmt+ DEDENT
+
+# Backward compatibility cruft to support:
+# [ x for x in lambda: True, lambda: False if x() ]
+# even while also allowing:
+# lambda x: 5 if x else 2
+# (But not a mix of the two)
+testlist_safe: old_test [(',' old_test)+ [',']]
+old_test: or_test | old_lambdef
+old_lambdef: 'lambda' [varargslist] ':' old_test
+
+namedexpr_test: test [':=' test]
+test: or_test ['if' or_test 'else' test] | lambdef
+or_test: and_test ('or' and_test)*
+and_test: not_test ('and' not_test)*
+not_test: 'not' not_test | comparison
+comparison: expr (comp_op expr)*
+comp_op: '<'|'>'|'=='|'>='|'<='|'<>'|'!='|'in'|'not' 'in'|'is'|'is' 'not'
+star_expr: '*' expr
+expr: xor_expr ('|' xor_expr)*
+xor_expr: and_expr ('^' and_expr)*
+and_expr: shift_expr ('&' shift_expr)*
+shift_expr: arith_expr (('<<'|'>>') arith_expr)*
+arith_expr: term (('+'|'-') term)*
+term: factor (('*'|'@'|'/'|'%'|'//') factor)*
+factor: ('+'|'-'|'~') factor | power
+power: [AWAIT] atom trailer* ['**' factor]
+atom: ('(' [yield_expr|testlist_gexp] ')' |
+       '[' [listmaker] ']' |
+       '{' [dictsetmaker] '}' |
+       '`' testlist1 '`' |
+       NAME | NUMBER | STRING+ | '.' '.' '.')
+listmaker: (namedexpr_test|star_expr) ( old_comp_for | (',' (namedexpr_test|star_expr))* [','] )
+testlist_gexp: (namedexpr_test|star_expr) ( old_comp_for | (',' (namedexpr_test|star_expr))* [','] )
+lambdef: 'lambda' [varargslist] ':' test
+trailer: '(' [arglist] ')' | '[' subscriptlist ']' | '.' NAME
+subscriptlist: subscript (',' subscript)* [',']
+subscript: test [':=' test] | [test] ':' [test] [sliceop]
+sliceop: ':' [test]
+exprlist: (expr|star_expr) (',' (expr|star_expr))* [',']
+testlist: test (',' test)* [',']
+dictsetmaker: ( ((test ':' test | '**' expr)
+                 (comp_for | (',' (test ':' test | '**' expr))* [','])) |
+                ((test [':=' test] | star_expr)
+                (comp_for | (',' (test [':=' test] | star_expr))* [','])) )
+
+classdef: 'class' NAME ['(' [arglist] ')'] ':' suite
+
+arglist: argument (',' argument)* [',']
+
+# "test '=' test" is really "keyword '=' test", but we have no such token.
+# These need to be in a single rule to avoid grammar that is ambiguous
+# to our LL(1) parser. Even though 'test' includes '*expr' in star_expr,
+# we explicitly match '*' here, too, to give it proper precedence.
+# Illegal combinations and orderings are blocked in ast.c:
+# multiple (test comp_for) arguments are blocked; keyword unpackings
+# that precede iterable unpackings are blocked; etc.
+argument: ( test [comp_for] |
+            test ':=' test |
+            test '=' test |
+           '**' test |
+            '*' test )
+
+comp_iter: comp_for | comp_if
+comp_for: [ASYNC] 'for' exprlist 'in' or_test [comp_iter]
+comp_if: 'if' old_test [comp_iter]
+
+# As noted above, testlist_safe extends the syntax allowed in list
+# comprehensions and generators. We can't use it indiscriminately in all
+# derivations using a comp_for-like pattern because the testlist_safe derivation
+# contains comma which clashes with trailing comma in arglist.
+#
+# This was an issue because the parser would not follow the correct derivation
+# when parsing syntactically valid Python code. Since testlist_safe was created
+# specifically to handle list comprehensions and generator expressions enclosed
+# with parentheses, it's safe to only use it in those. That avoids the issue; we
+# can parse code like set(x for x in [],).
+#
+# The syntax supported by this set of rules is not a valid Python 3 syntax,
+# hence the prefix "old".
+#
+# See https://bugs.python.org/issue27494
+old_comp_iter: old_comp_for | old_comp_if
+old_comp_for: [ASYNC] 'for' exprlist 'in' testlist_safe [old_comp_iter]
+old_comp_if: 'if' old_test [old_comp_iter]
+
+testlist1: test (',' test)*
+
+# not used in grammar, but may appear in "node" passed from Parser to Compiler
+encoding_decl: NAME
+
+yield_expr: 'yield' [yield_arg]
+yield_arg: 'from' test | testlist_star_expr
diff --git a/.vim/bundle/black/src/blib2to3/LICENSE b/.vim/bundle/black/src/blib2to3/LICENSE
new file mode 100644 (file)
index 0000000..ef8df06
--- /dev/null
@@ -0,0 +1,254 @@
+A. HISTORY OF THE SOFTWARE
+==========================
+
+Python was created in the early 1990s by Guido van Rossum at Stichting
+Mathematisch Centrum (CWI, see https://www.cwi.nl) in the Netherlands
+as a successor of a language called ABC.  Guido remains Python's
+principal author, although it includes many contributions from others.
+
+In 1995, Guido continued his work on Python at the Corporation for
+National Research Initiatives (CNRI, see https://www.cnri.reston.va.us)
+in Reston, Virginia where he released several versions of the
+software.
+
+In May 2000, Guido and the Python core development team moved to
+BeOpen.com to form the BeOpen PythonLabs team.  In October of the same
+year, the PythonLabs team moved to Digital Creations, which became
+Zope Corporation.  In 2001, the Python Software Foundation (PSF, see
+https://www.python.org/psf/) was formed, a non-profit organization
+created specifically to own Python-related Intellectual Property.
+Zope Corporation was a sponsoring member of the PSF.
+
+All Python releases are Open Source (see https://opensource.org for
+the Open Source Definition).  Historically, most, but not all, Python
+releases have also been GPL-compatible; the table below summarizes
+the various releases.
+
+    Release         Derived     Year        Owner       GPL-
+                    from                                compatible? (1)
+
+    0.9.0 thru 1.2              1991-1995   CWI         yes
+    1.3 thru 1.5.2  1.2         1995-1999   CNRI        yes
+    1.6             1.5.2       2000        CNRI        no
+    2.0             1.6         2000        BeOpen.com  no
+    1.6.1           1.6         2001        CNRI        yes (2)
+    2.1             2.0+1.6.1   2001        PSF         no
+    2.0.1           2.0+1.6.1   2001        PSF         yes
+    2.1.1           2.1+2.0.1   2001        PSF         yes
+    2.1.2           2.1.1       2002        PSF         yes
+    2.1.3           2.1.2       2002        PSF         yes
+    2.2 and above   2.1.1       2001-now    PSF         yes
+
+Footnotes:
+
+(1) GPL-compatible doesn't mean that we're distributing Python under
+    the GPL.  All Python licenses, unlike the GPL, let you distribute
+    a modified version without making your changes open source.  The
+    GPL-compatible licenses make it possible to combine Python with
+    other software that is released under the GPL; the others don't.
+
+(2) According to Richard Stallman, 1.6.1 is not GPL-compatible,
+    because its license has a choice of law clause.  According to
+    CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1
+    is "not incompatible" with the GPL.
+
+Thanks to the many outside volunteers who have worked under Guido's
+direction to make these releases possible.
+
+
+B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON
+===============================================================
+
+PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
+--------------------------------------------
+
+1. This LICENSE AGREEMENT is between the Python Software Foundation
+("PSF"), and the Individual or Organization ("Licensee") accessing and
+otherwise using this software ("Python") in source or binary form and
+its associated documentation.
+
+2. Subject to the terms and conditions of this License Agreement, PSF hereby
+grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce,
+analyze, test, perform and/or display publicly, prepare derivative works,
+distribute, and otherwise use Python alone or in any derivative version,
+provided, however, that PSF's License Agreement and PSF's notice of copyright,
+i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Python Software Foundation; All
+Rights Reserved" are retained in Python alone or in any derivative version
+prepared by Licensee.
+
+3. In the event Licensee prepares a derivative work that is based on
+or incorporates Python or any part thereof, and wants to make
+the derivative work available to others as provided herein, then
+Licensee hereby agrees to include in any such work a brief summary of
+the changes made to Python.
+
+4. PSF is making Python available to Licensee on an "AS IS"
+basis.  PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED.  BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
+DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT
+INFRINGE ANY THIRD PARTY RIGHTS.
+
+5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
+FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
+A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON,
+OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
+
+6. This License Agreement will automatically terminate upon a material
+breach of its terms and conditions.
+
+7. Nothing in this License Agreement shall be deemed to create any
+relationship of agency, partnership, or joint venture between PSF and
+Licensee.  This License Agreement does not grant permission to use PSF
+trademarks or trade name in a trademark sense to endorse or promote
+products or services of Licensee, or any third party.
+
+8. By copying, installing or otherwise using Python, Licensee
+agrees to be bound by the terms and conditions of this License
+Agreement.
+
+
+BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0
+-------------------------------------------
+
+BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1
+
+1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an
+office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the
+Individual or Organization ("Licensee") accessing and otherwise using
+this software in source or binary form and its associated
+documentation ("the Software").
+
+2. Subject to the terms and conditions of this BeOpen Python License
+Agreement, BeOpen hereby grants Licensee a non-exclusive,
+royalty-free, world-wide license to reproduce, analyze, test, perform
+and/or display publicly, prepare derivative works, distribute, and
+otherwise use the Software alone or in any derivative version,
+provided, however, that the BeOpen Python License is retained in the
+Software, alone or in any derivative version prepared by Licensee.
+
+3. BeOpen is making the Software available to Licensee on an "AS IS"
+basis.  BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED.  BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND
+DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT
+INFRINGE ANY THIRD PARTY RIGHTS.
+
+4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE
+SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS
+AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY
+DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
+
+5. This License Agreement will automatically terminate upon a material
+breach of its terms and conditions.
+
+6. This License Agreement shall be governed by and interpreted in all
+respects by the law of the State of California, excluding conflict of
+law provisions.  Nothing in this License Agreement shall be deemed to
+create any relationship of agency, partnership, or joint venture
+between BeOpen and Licensee.  This License Agreement does not grant
+permission to use BeOpen trademarks or trade names in a trademark
+sense to endorse or promote products or services of Licensee, or any
+third party.  As an exception, the "BeOpen Python" logos available at
+http://www.pythonlabs.com/logos.html may be used according to the
+permissions granted on that web page.
+
+7. By copying, installing or otherwise using the software, Licensee
+agrees to be bound by the terms and conditions of this License
+Agreement.
+
+
+CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1
+---------------------------------------
+
+1. This LICENSE AGREEMENT is between the Corporation for National
+Research Initiatives, having an office at 1895 Preston White Drive,
+Reston, VA 20191 ("CNRI"), and the Individual or Organization
+("Licensee") accessing and otherwise using Python 1.6.1 software in
+source or binary form and its associated documentation.
+
+2. Subject to the terms and conditions of this License Agreement, CNRI
+hereby grants Licensee a nonexclusive, royalty-free, world-wide
+license to reproduce, analyze, test, perform and/or display publicly,
+prepare derivative works, distribute, and otherwise use Python 1.6.1
+alone or in any derivative version, provided, however, that CNRI's
+License Agreement and CNRI's notice of copyright, i.e., "Copyright (c)
+1995-2001 Corporation for National Research Initiatives; All Rights
+Reserved" are retained in Python 1.6.1 alone or in any derivative
+version prepared by Licensee.  Alternately, in lieu of CNRI's License
+Agreement, Licensee may substitute the following text (omitting the
+quotes): "Python 1.6.1 is made available subject to the terms and
+conditions in CNRI's License Agreement.  This Agreement together with
+Python 1.6.1 may be located on the Internet using the following
+unique, persistent identifier (known as a handle): 1895.22/1013.  This
+Agreement may also be obtained from a proxy server on the Internet
+using the following URL: http://hdl.handle.net/1895.22/1013".
+
+3. In the event Licensee prepares a derivative work that is based on
+or incorporates Python 1.6.1 or any part thereof, and wants to make
+the derivative work available to others as provided herein, then
+Licensee hereby agrees to include in any such work a brief summary of
+the changes made to Python 1.6.1.
+
+4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS"
+basis.  CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED.  BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND
+DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
+FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT
+INFRINGE ANY THIRD PARTY RIGHTS.
+
+5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
+1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
+A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1,
+OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
+
+6. This License Agreement will automatically terminate upon a material
+breach of its terms and conditions.
+
+7. This License Agreement shall be governed by the federal
+intellectual property law of the United States, including without
+limitation the federal copyright law, and, to the extent such
+U.S. federal law does not apply, by the law of the Commonwealth of
+Virginia, excluding Virginia's conflict of law provisions.
+Notwithstanding the foregoing, with regard to derivative works based
+on Python 1.6.1 that incorporate non-separable material that was
+previously distributed under the GNU General Public License (GPL), the
+law of the Commonwealth of Virginia shall govern this License
+Agreement only as to issues arising under or with respect to
+Paragraphs 4, 5, and 7 of this License Agreement.  Nothing in this
+License Agreement shall be deemed to create any relationship of
+agency, partnership, or joint venture between CNRI and Licensee.  This
+License Agreement does not grant permission to use CNRI trademarks or
+trade name in a trademark sense to endorse or promote products or
+services of Licensee, or any third party.
+
+8. By clicking on the "ACCEPT" button where indicated, or by copying,
+installing or otherwise using Python 1.6.1, Licensee agrees to be
+bound by the terms and conditions of this License Agreement.
+
+        ACCEPT
+
+
+CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2
+--------------------------------------------------
+
+Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam,
+The Netherlands.  All rights reserved.
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the name of Stichting Mathematisch
+Centrum or CWI not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior
+permission.
+
+STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
+THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
+FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/.vim/bundle/black/src/blib2to3/PatternGrammar.txt b/.vim/bundle/black/src/blib2to3/PatternGrammar.txt
new file mode 100644 (file)
index 0000000..36bf814
--- /dev/null
@@ -0,0 +1,28 @@
+# Copyright 2006 Google, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+# A grammar to describe tree matching patterns.
+# Not shown here:
+# - 'TOKEN' stands for any token (leaf node)
+# - 'any' stands for any node (leaf or interior)
+# With 'any' we can still specify the sub-structure.
+
+# The start symbol is 'Matcher'.
+
+Matcher: Alternatives ENDMARKER
+
+Alternatives: Alternative ('|' Alternative)*
+
+Alternative: (Unit | NegatedUnit)+
+
+Unit: [NAME '='] ( STRING [Repeater]
+                 | NAME [Details] [Repeater]
+                 | '(' Alternatives ')' [Repeater]
+                 | '[' Alternatives ']'
+                )
+
+NegatedUnit: 'not' (STRING | NAME [Details] | '(' Alternatives ')')
+
+Repeater: '*' | '+' | '{' NUMBER [',' NUMBER] '}'
+
+Details: '<' Alternatives '>'
diff --git a/.vim/bundle/black/src/blib2to3/README b/.vim/bundle/black/src/blib2to3/README
new file mode 100644 (file)
index 0000000..ccad283
--- /dev/null
@@ -0,0 +1,21 @@
+A subset of lib2to3 taken from Python 3.7.0b2.
+Commit hash: 9c17e3a1987004b8bcfbe423953aad84493a7984
+
+Reasons for forking:
+- consistent handling of f-strings for users of Python < 3.6.2
+- backport of BPO-33064 that fixes parsing files with trailing commas after
+  *args and **kwargs
+- backport of GH-6143 that restores the ability to reformat legacy usage of
+  `async`
+- support all types of string literals
+- better ability to debug (better reprs)
+- INDENT and DEDENT don't hold whitespace and comment prefixes
+- ability to Cythonize
+
+Change Log:
+- Changes default logger used by Driver
+- Backported the following upstream parser changes:
+  - "bpo-42381: Allow walrus in set literals and set comprehensions (GH-23332)"
+    https://github.com/python/cpython/commit/cae60187cf7a7b26281d012e1952fafe4e2e97e9
+  - "bpo-42316: Allow unparenthesized walrus operator in indexes (GH-23317)"
+    https://github.com/python/cpython/commit/b0aba1fcdc3da952698d99aec2334faa79a8b68c
diff --git a/.vim/bundle/black/src/blib2to3/__init__.py b/.vim/bundle/black/src/blib2to3/__init__.py
new file mode 100644 (file)
index 0000000..1bb8bf6
--- /dev/null
@@ -0,0 +1 @@
+# empty
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/__init__.py b/.vim/bundle/black/src/blib2to3/pgen2/__init__.py
new file mode 100644 (file)
index 0000000..af39048
--- /dev/null
@@ -0,0 +1,4 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""The pgen2 package."""
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/conv.py b/.vim/bundle/black/src/blib2to3/pgen2/conv.py
new file mode 100644 (file)
index 0000000..7816521
--- /dev/null
@@ -0,0 +1,256 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+# mypy: ignore-errors
+
+"""Convert graminit.[ch] spit out by pgen to Python code.
+
+Pgen is the Python parser generator.  It is useful to quickly create a
+parser from a grammar file in Python's grammar notation.  But I don't
+want my parsers to be written in C (yet), so I'm translating the
+parsing tables to Python data structures and writing a Python parse
+engine.
+
+Note that the token numbers are constants determined by the standard
+Python tokenizer.  The standard token module defines these numbers and
+their names (the names are not used much).  The token numbers are
+hardcoded into the Python tokenizer and into pgen.  A Python
+implementation of the Python tokenizer is also available, in the
+standard tokenize module.
+
+On the other hand, symbol numbers (representing the grammar's
+non-terminals) are assigned by pgen based on the actual grammar
+input.
+
+Note: this module is pretty much obsolete; the pgen module generates
+equivalent grammar tables directly from the Grammar.txt input file
+without having to invoke the Python pgen C program.
+
+"""
+
+# Python imports
+import regex as re
+
+# Local imports
+from pgen2 import grammar, token
+
+
+class Converter(grammar.Grammar):
+    """Grammar subclass that reads classic pgen output files.
+
+    The run() method reads the tables as produced by the pgen parser
+    generator, typically contained in two C files, graminit.h and
+    graminit.c.  The other methods are for internal use only.
+
+    See the base class for more documentation.
+
+    """
+
+    def run(self, graminit_h, graminit_c):
+        """Load the grammar tables from the text files written by pgen."""
+        self.parse_graminit_h(graminit_h)
+        self.parse_graminit_c(graminit_c)
+        self.finish_off()
+
+    def parse_graminit_h(self, filename):
+        """Parse the .h file written by pgen.  (Internal)
+
+        This file is a sequence of #define statements defining the
+        nonterminals of the grammar as numbers.  We build two tables
+        mapping the numbers to names and back.
+
+        """
+        try:
+            f = open(filename)
+        except OSError as err:
+            print("Can't open %s: %s" % (filename, err))
+            return False
+        self.symbol2number = {}
+        self.number2symbol = {}
+        lineno = 0
+        for line in f:
+            lineno += 1
+            mo = re.match(r"^#define\s+(\w+)\s+(\d+)$", line)
+            if not mo and line.strip():
+                print("%s(%s): can't parse %s" % (filename, lineno, line.strip()))
+            else:
+                symbol, number = mo.groups()
+                number = int(number)
+                assert symbol not in self.symbol2number
+                assert number not in self.number2symbol
+                self.symbol2number[symbol] = number
+                self.number2symbol[number] = symbol
+        return True
+
+    def parse_graminit_c(self, filename):
+        """Parse the .c file written by pgen.  (Internal)
+
+        The file looks as follows.  The first two lines are always this:
+
+        #include "pgenheaders.h"
+        #include "grammar.h"
+
+        After that come four blocks:
+
+        1) one or more state definitions
+        2) a table defining dfas
+        3) a table defining labels
+        4) a struct defining the grammar
+
+        A state definition has the following form:
+        - one or more arc arrays, each of the form:
+          static arc arcs_<n>_<m>[<k>] = {
+                  {<i>, <j>},
+                  ...
+          };
+        - followed by a state array, of the form:
+          static state states_<s>[<t>] = {
+                  {<k>, arcs_<n>_<m>},
+                  ...
+          };
+
+        """
+        try:
+            f = open(filename)
+        except OSError as err:
+            print("Can't open %s: %s" % (filename, err))
+            return False
+        # The code below essentially uses f's iterator-ness!
+        lineno = 0
+
+        # Expect the two #include lines
+        lineno, line = lineno + 1, next(f)
+        assert line == '#include "pgenheaders.h"\n', (lineno, line)
+        lineno, line = lineno + 1, next(f)
+        assert line == '#include "grammar.h"\n', (lineno, line)
+
+        # Parse the state definitions
+        lineno, line = lineno + 1, next(f)
+        allarcs = {}
+        states = []
+        while line.startswith("static arc "):
+            while line.startswith("static arc "):
+                mo = re.match(r"static arc arcs_(\d+)_(\d+)\[(\d+)\] = {$", line)
+                assert mo, (lineno, line)
+                n, m, k = list(map(int, mo.groups()))
+                arcs = []
+                for _ in range(k):
+                    lineno, line = lineno + 1, next(f)
+                    mo = re.match(r"\s+{(\d+), (\d+)},$", line)
+                    assert mo, (lineno, line)
+                    i, j = list(map(int, mo.groups()))
+                    arcs.append((i, j))
+                lineno, line = lineno + 1, next(f)
+                assert line == "};\n", (lineno, line)
+                allarcs[(n, m)] = arcs
+                lineno, line = lineno + 1, next(f)
+            mo = re.match(r"static state states_(\d+)\[(\d+)\] = {$", line)
+            assert mo, (lineno, line)
+            s, t = list(map(int, mo.groups()))
+            assert s == len(states), (lineno, line)
+            state = []
+            for _ in range(t):
+                lineno, line = lineno + 1, next(f)
+                mo = re.match(r"\s+{(\d+), arcs_(\d+)_(\d+)},$", line)
+                assert mo, (lineno, line)
+                k, n, m = list(map(int, mo.groups()))
+                arcs = allarcs[n, m]
+                assert k == len(arcs), (lineno, line)
+                state.append(arcs)
+            states.append(state)
+            lineno, line = lineno + 1, next(f)
+            assert line == "};\n", (lineno, line)
+            lineno, line = lineno + 1, next(f)
+        self.states = states
+
+        # Parse the dfas
+        dfas = {}
+        mo = re.match(r"static dfa dfas\[(\d+)\] = {$", line)
+        assert mo, (lineno, line)
+        ndfas = int(mo.group(1))
+        for i in range(ndfas):
+            lineno, line = lineno + 1, next(f)
+            mo = re.match(r'\s+{(\d+), "(\w+)", (\d+), (\d+), states_(\d+),$', line)
+            assert mo, (lineno, line)
+            symbol = mo.group(2)
+            number, x, y, z = list(map(int, mo.group(1, 3, 4, 5)))
+            assert self.symbol2number[symbol] == number, (lineno, line)
+            assert self.number2symbol[number] == symbol, (lineno, line)
+            assert x == 0, (lineno, line)
+            state = states[z]
+            assert y == len(state), (lineno, line)
+            lineno, line = lineno + 1, next(f)
+            mo = re.match(r'\s+("(?:\\\d\d\d)*")},$', line)
+            assert mo, (lineno, line)
+            first = {}
+            rawbitset = eval(mo.group(1))
+            for i, c in enumerate(rawbitset):
+                byte = ord(c)
+                for j in range(8):
+                    if byte & (1 << j):
+                        first[i * 8 + j] = 1
+            dfas[number] = (state, first)
+        lineno, line = lineno + 1, next(f)
+        assert line == "};\n", (lineno, line)
+        self.dfas = dfas
+
+        # Parse the labels
+        labels = []
+        lineno, line = lineno + 1, next(f)
+        mo = re.match(r"static label labels\[(\d+)\] = {$", line)
+        assert mo, (lineno, line)
+        nlabels = int(mo.group(1))
+        for i in range(nlabels):
+            lineno, line = lineno + 1, next(f)
+            mo = re.match(r'\s+{(\d+), (0|"\w+")},$', line)
+            assert mo, (lineno, line)
+            x, y = mo.groups()
+            x = int(x)
+            if y == "0":
+                y = None
+            else:
+                y = eval(y)
+            labels.append((x, y))
+        lineno, line = lineno + 1, next(f)
+        assert line == "};\n", (lineno, line)
+        self.labels = labels
+
+        # Parse the grammar struct
+        lineno, line = lineno + 1, next(f)
+        assert line == "grammar _PyParser_Grammar = {\n", (lineno, line)
+        lineno, line = lineno + 1, next(f)
+        mo = re.match(r"\s+(\d+),$", line)
+        assert mo, (lineno, line)
+        ndfas = int(mo.group(1))
+        assert ndfas == len(self.dfas)
+        lineno, line = lineno + 1, next(f)
+        assert line == "\tdfas,\n", (lineno, line)
+        lineno, line = lineno + 1, next(f)
+        mo = re.match(r"\s+{(\d+), labels},$", line)
+        assert mo, (lineno, line)
+        nlabels = int(mo.group(1))
+        assert nlabels == len(self.labels), (lineno, line)
+        lineno, line = lineno + 1, next(f)
+        mo = re.match(r"\s+(\d+)$", line)
+        assert mo, (lineno, line)
+        start = int(mo.group(1))
+        assert start in self.number2symbol, (lineno, line)
+        self.start = start
+        lineno, line = lineno + 1, next(f)
+        assert line == "};\n", (lineno, line)
+        try:
+            lineno, line = lineno + 1, next(f)
+        except StopIteration:
+            pass
+        else:
+            assert 0, (lineno, line)
+
+    def finish_off(self):
+        """Create additional useful structures.  (Internal)."""
+        self.keywords = {}  # map from keyword strings to arc labels
+        self.tokens = {}  # map from numeric token values to arc labels
+        for ilabel, (type, value) in enumerate(self.labels):
+            if type == token.NAME and value is not None:
+                self.keywords[value] = ilabel
+            elif value is None:
+                self.tokens[type] = ilabel
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/driver.py b/.vim/bundle/black/src/blib2to3/pgen2/driver.py
new file mode 100644 (file)
index 0000000..af1dc6b
--- /dev/null
@@ -0,0 +1,253 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+# Modifications:
+# Copyright 2006 Google, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""Parser driver.
+
+This provides a high-level interface to parse a file into a syntax tree.
+
+"""
+
+__author__ = "Guido van Rossum <guido@python.org>"
+
+__all__ = ["Driver", "load_grammar"]
+
+# Python imports
+import io
+import os
+import logging
+import pkgutil
+import sys
+from typing import (
+    Any,
+    IO,
+    Iterable,
+    List,
+    Optional,
+    Text,
+    Tuple,
+    Union,
+)
+
+# Pgen imports
+from . import grammar, parse, token, tokenize, pgen
+from logging import Logger
+from blib2to3.pytree import _Convert, NL
+from blib2to3.pgen2.grammar import Grammar
+
+Path = Union[str, "os.PathLike[str]"]
+
+
+class Driver(object):
+    def __init__(
+        self,
+        grammar: Grammar,
+        convert: Optional[_Convert] = None,
+        logger: Optional[Logger] = None,
+    ) -> None:
+        self.grammar = grammar
+        if logger is None:
+            logger = logging.getLogger(__name__)
+        self.logger = logger
+        self.convert = convert
+
+    def parse_tokens(self, tokens: Iterable[Any], debug: bool = False) -> NL:
+        """Parse a series of tokens and return the syntax tree."""
+        # XXX Move the prefix computation into a wrapper around tokenize.
+        p = parse.Parser(self.grammar, self.convert)
+        p.setup()
+        lineno = 1
+        column = 0
+        indent_columns = []
+        type = value = start = end = line_text = None
+        prefix = ""
+        for quintuple in tokens:
+            type, value, start, end, line_text = quintuple
+            if start != (lineno, column):
+                assert (lineno, column) <= start, ((lineno, column), start)
+                s_lineno, s_column = start
+                if lineno < s_lineno:
+                    prefix += "\n" * (s_lineno - lineno)
+                    lineno = s_lineno
+                    column = 0
+                if column < s_column:
+                    prefix += line_text[column:s_column]
+                    column = s_column
+            if type in (tokenize.COMMENT, tokenize.NL):
+                prefix += value
+                lineno, column = end
+                if value.endswith("\n"):
+                    lineno += 1
+                    column = 0
+                continue
+            if type == token.OP:
+                type = grammar.opmap[value]
+            if debug:
+                self.logger.debug(
+                    "%s %r (prefix=%r)", token.tok_name[type], value, prefix
+                )
+            if type == token.INDENT:
+                indent_columns.append(len(value))
+                _prefix = prefix + value
+                prefix = ""
+                value = ""
+            elif type == token.DEDENT:
+                _indent_col = indent_columns.pop()
+                prefix, _prefix = self._partially_consume_prefix(prefix, _indent_col)
+            if p.addtoken(type, value, (prefix, start)):
+                if debug:
+                    self.logger.debug("Stop.")
+                break
+            prefix = ""
+            if type in {token.INDENT, token.DEDENT}:
+                prefix = _prefix
+            lineno, column = end
+            if value.endswith("\n"):
+                lineno += 1
+                column = 0
+        else:
+            # We never broke out -- EOF is too soon (how can this happen???)
+            assert start is not None
+            raise parse.ParseError("incomplete input", type, value, (prefix, start))
+        assert p.rootnode is not None
+        return p.rootnode
+
+    def parse_stream_raw(self, stream: IO[Text], debug: bool = False) -> NL:
+        """Parse a stream and return the syntax tree."""
+        tokens = tokenize.generate_tokens(stream.readline, grammar=self.grammar)
+        return self.parse_tokens(tokens, debug)
+
+    def parse_stream(self, stream: IO[Text], debug: bool = False) -> NL:
+        """Parse a stream and return the syntax tree."""
+        return self.parse_stream_raw(stream, debug)
+
+    def parse_file(
+        self, filename: Path, encoding: Optional[Text] = None, debug: bool = False
+    ) -> NL:
+        """Parse a file and return the syntax tree."""
+        with io.open(filename, "r", encoding=encoding) as stream:
+            return self.parse_stream(stream, debug)
+
+    def parse_string(self, text: Text, debug: bool = False) -> NL:
+        """Parse a string and return the syntax tree."""
+        tokens = tokenize.generate_tokens(
+            io.StringIO(text).readline, grammar=self.grammar
+        )
+        return self.parse_tokens(tokens, debug)
+
+    def _partially_consume_prefix(self, prefix: Text, column: int) -> Tuple[Text, Text]:
+        lines: List[str] = []
+        current_line = ""
+        current_column = 0
+        wait_for_nl = False
+        for char in prefix:
+            current_line += char
+            if wait_for_nl:
+                if char == "\n":
+                    if current_line.strip() and current_column < column:
+                        res = "".join(lines)
+                        return res, prefix[len(res) :]
+
+                    lines.append(current_line)
+                    current_line = ""
+                    current_column = 0
+                    wait_for_nl = False
+            elif char in " \t":
+                current_column += 1
+            elif char == "\n":
+                # unexpected empty line
+                current_column = 0
+            else:
+                # indent is finished
+                wait_for_nl = True
+        return "".join(lines), current_line
+
+
+def _generate_pickle_name(gt: Path, cache_dir: Optional[Path] = None) -> Text:
+    head, tail = os.path.splitext(gt)
+    if tail == ".txt":
+        tail = ""
+    name = head + tail + ".".join(map(str, sys.version_info)) + ".pickle"
+    if cache_dir:
+        return os.path.join(cache_dir, os.path.basename(name))
+    else:
+        return name
+
+
+def load_grammar(
+    gt: Text = "Grammar.txt",
+    gp: Optional[Text] = None,
+    save: bool = True,
+    force: bool = False,
+    logger: Optional[Logger] = None,
+) -> Grammar:
+    """Load the grammar (maybe from a pickle)."""
+    if logger is None:
+        logger = logging.getLogger(__name__)
+    gp = _generate_pickle_name(gt) if gp is None else gp
+    if force or not _newer(gp, gt):
+        logger.info("Generating grammar tables from %s", gt)
+        g: grammar.Grammar = pgen.generate_grammar(gt)
+        if save:
+            logger.info("Writing grammar tables to %s", gp)
+            try:
+                g.dump(gp)
+            except OSError as e:
+                logger.info("Writing failed: %s", e)
+    else:
+        g = grammar.Grammar()
+        g.load(gp)
+    return g
+
+
+def _newer(a: Text, b: Text) -> bool:
+    """Inquire whether file a was written since file b."""
+    if not os.path.exists(a):
+        return False
+    if not os.path.exists(b):
+        return True
+    return os.path.getmtime(a) >= os.path.getmtime(b)
+
+
+def load_packaged_grammar(
+    package: str, grammar_source: Text, cache_dir: Optional[Path] = None
+) -> grammar.Grammar:
+    """Normally, loads a pickled grammar by doing
+        pkgutil.get_data(package, pickled_grammar)
+    where *pickled_grammar* is computed from *grammar_source* by adding the
+    Python version and using a ``.pickle`` extension.
+
+    However, if *grammar_source* is an extant file, load_grammar(grammar_source)
+    is called instead. This facilitates using a packaged grammar file when needed
+    but preserves load_grammar's automatic regeneration behavior when possible.
+
+    """
+    if os.path.isfile(grammar_source):
+        gp = _generate_pickle_name(grammar_source, cache_dir) if cache_dir else None
+        return load_grammar(grammar_source, gp=gp)
+    pickled_name = _generate_pickle_name(os.path.basename(grammar_source), cache_dir)
+    data = pkgutil.get_data(package, pickled_name)
+    assert data is not None
+    g = grammar.Grammar()
+    g.loads(data)
+    return g
+
+
+def main(*args: Text) -> bool:
+    """Main program, when run as a script: produce grammar pickle files.
+
+    Calls load_grammar for each argument, a path to a grammar text file.
+    """
+    if not args:
+        args = tuple(sys.argv[1:])
+    logging.basicConfig(level=logging.INFO, stream=sys.stdout, format="%(message)s")
+    for gt in args:
+        load_grammar(gt, save=True, force=True)
+    return True
+
+
+if __name__ == "__main__":
+    sys.exit(int(not main()))
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/grammar.py b/.vim/bundle/black/src/blib2to3/pgen2/grammar.py
new file mode 100644 (file)
index 0000000..2882cda
--- /dev/null
@@ -0,0 +1,223 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""This module defines the data structures used to represent a grammar.
+
+These are a bit arcane because they are derived from the data
+structures used by Python's 'pgen' parser generator.
+
+There's also a table here mapping operators to their names in the
+token module; the Python tokenize module reports all operators as the
+fallback token code OP, but the parser needs the actual token code.
+
+"""
+
+# Python imports
+import os
+import pickle
+import tempfile
+from typing import Any, Dict, List, Optional, Text, Tuple, TypeVar, Union
+
+# Local imports
+from . import token
+
+_P = TypeVar("_P", bound="Grammar")
+Label = Tuple[int, Optional[Text]]
+DFA = List[List[Tuple[int, int]]]
+DFAS = Tuple[DFA, Dict[int, int]]
+Path = Union[str, "os.PathLike[str]"]
+
+
+class Grammar(object):
+    """Pgen parsing tables conversion class.
+
+    Once initialized, this class supplies the grammar tables for the
+    parsing engine implemented by parse.py.  The parsing engine
+    accesses the instance variables directly.  The class here does not
+    provide initialization of the tables; several subclasses exist to
+    do this (see the conv and pgen modules).
+
+    The load() method reads the tables from a pickle file, which is
+    much faster than the other ways offered by subclasses.  The pickle
+    file is written by calling dump() (after loading the grammar
+    tables using a subclass).  The report() method prints a readable
+    representation of the tables to stdout, for debugging.
+
+    The instance variables are as follows:
+
+    symbol2number -- a dict mapping symbol names to numbers.  Symbol
+                     numbers are always 256 or higher, to distinguish
+                     them from token numbers, which are between 0 and
+                     255 (inclusive).
+
+    number2symbol -- a dict mapping numbers to symbol names;
+                     these two are each other's inverse.
+
+    states        -- a list of DFAs, where each DFA is a list of
+                     states, each state is a list of arcs, and each
+                     arc is a (i, j) pair where i is a label and j is
+                     a state number.  The DFA number is the index into
+                     this list.  (This name is slightly confusing.)
+                     Final states are represented by a special arc of
+                     the form (0, j) where j is its own state number.
+
+    dfas          -- a dict mapping symbol numbers to (DFA, first)
+                     pairs, where DFA is an item from the states list
+                     above, and first is a set of tokens that can
+                     begin this grammar rule (represented by a dict
+                     whose values are always 1).
+
+    labels        -- a list of (x, y) pairs where x is either a token
+                     number or a symbol number, and y is either None
+                     or a string; the strings are keywords.  The label
+                     number is the index in this list; label numbers
+                     are used to mark state transitions (arcs) in the
+                     DFAs.
+
+    start         -- the number of the grammar's start symbol.
+
+    keywords      -- a dict mapping keyword strings to arc labels.
+
+    tokens        -- a dict mapping token numbers to arc labels.
+
+    """
+
+    def __init__(self) -> None:
+        self.symbol2number: Dict[str, int] = {}
+        self.number2symbol: Dict[int, str] = {}
+        self.states: List[DFA] = []
+        self.dfas: Dict[int, DFAS] = {}
+        self.labels: List[Label] = [(0, "EMPTY")]
+        self.keywords: Dict[str, int] = {}
+        self.tokens: Dict[int, int] = {}
+        self.symbol2label: Dict[str, int] = {}
+        self.start = 256
+        # Python 3.7+ parses async as a keyword, not an identifier
+        self.async_keywords = False
+
+    def dump(self, filename: Path) -> None:
+        """Dump the grammar tables to a pickle file."""
+
+        # mypyc generates objects that don't have a __dict__, but they
+        # do have __getstate__ methods that will return an equivalent
+        # dictionary
+        if hasattr(self, "__dict__"):
+            d = self.__dict__
+        else:
+            d = self.__getstate__()  # type: ignore
+
+        with tempfile.NamedTemporaryFile(
+            dir=os.path.dirname(filename), delete=False
+        ) as f:
+            pickle.dump(d, f, pickle.HIGHEST_PROTOCOL)
+        os.replace(f.name, filename)
+
+    def _update(self, attrs: Dict[str, Any]) -> None:
+        for k, v in attrs.items():
+            setattr(self, k, v)
+
+    def load(self, filename: Path) -> None:
+        """Load the grammar tables from a pickle file."""
+        with open(filename, "rb") as f:
+            d = pickle.load(f)
+        self._update(d)
+
+    def loads(self, pkl: bytes) -> None:
+        """Load the grammar tables from a pickle bytes object."""
+        self._update(pickle.loads(pkl))
+
+    def copy(self: _P) -> _P:
+        """
+        Copy the grammar.
+        """
+        new = self.__class__()
+        for dict_attr in (
+            "symbol2number",
+            "number2symbol",
+            "dfas",
+            "keywords",
+            "tokens",
+            "symbol2label",
+        ):
+            setattr(new, dict_attr, getattr(self, dict_attr).copy())
+        new.labels = self.labels[:]
+        new.states = self.states[:]
+        new.start = self.start
+        new.async_keywords = self.async_keywords
+        return new
+
+    def report(self) -> None:
+        """Dump the grammar tables to standard output, for debugging."""
+        from pprint import pprint
+
+        print("s2n")
+        pprint(self.symbol2number)
+        print("n2s")
+        pprint(self.number2symbol)
+        print("states")
+        pprint(self.states)
+        print("dfas")
+        pprint(self.dfas)
+        print("labels")
+        pprint(self.labels)
+        print("start", self.start)
+
+
+# Map from operator to number (since tokenize doesn't do this)
+
+opmap_raw = """
+( LPAR
+) RPAR
+[ LSQB
+] RSQB
+: COLON
+, COMMA
+; SEMI
++ PLUS
+- MINUS
+* STAR
+/ SLASH
+| VBAR
+& AMPER
+< LESS
+> GREATER
+= EQUAL
+. DOT
+% PERCENT
+` BACKQUOTE
+{ LBRACE
+} RBRACE
+@ AT
+@= ATEQUAL
+== EQEQUAL
+!= NOTEQUAL
+<> NOTEQUAL
+<= LESSEQUAL
+>= GREATEREQUAL
+~ TILDE
+^ CIRCUMFLEX
+<< LEFTSHIFT
+>> RIGHTSHIFT
+** DOUBLESTAR
++= PLUSEQUAL
+-= MINEQUAL
+*= STAREQUAL
+/= SLASHEQUAL
+%= PERCENTEQUAL
+&= AMPEREQUAL
+|= VBAREQUAL
+^= CIRCUMFLEXEQUAL
+<<= LEFTSHIFTEQUAL
+>>= RIGHTSHIFTEQUAL
+**= DOUBLESTAREQUAL
+// DOUBLESLASH
+//= DOUBLESLASHEQUAL
+-> RARROW
+:= COLONEQUAL
+"""
+
+opmap = {}
+for line in opmap_raw.splitlines():
+    if line:
+        op, name = line.split()
+        opmap[op] = getattr(token, name)
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/literals.py b/.vim/bundle/black/src/blib2to3/pgen2/literals.py
new file mode 100644 (file)
index 0000000..b5fe428
--- /dev/null
@@ -0,0 +1,68 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""Safely evaluate Python string literals without using eval()."""
+
+import re
+
+from typing import Dict, Match, Text
+
+
+simple_escapes: Dict[Text, Text] = {
+    "a": "\a",
+    "b": "\b",
+    "f": "\f",
+    "n": "\n",
+    "r": "\r",
+    "t": "\t",
+    "v": "\v",
+    "'": "'",
+    '"': '"',
+    "\\": "\\",
+}
+
+
+def escape(m: Match[Text]) -> Text:
+    all, tail = m.group(0, 1)
+    assert all.startswith("\\")
+    esc = simple_escapes.get(tail)
+    if esc is not None:
+        return esc
+    if tail.startswith("x"):
+        hexes = tail[1:]
+        if len(hexes) < 2:
+            raise ValueError("invalid hex string escape ('\\%s')" % tail)
+        try:
+            i = int(hexes, 16)
+        except ValueError:
+            raise ValueError("invalid hex string escape ('\\%s')" % tail) from None
+    else:
+        try:
+            i = int(tail, 8)
+        except ValueError:
+            raise ValueError("invalid octal string escape ('\\%s')" % tail) from None
+    return chr(i)
+
+
+def evalString(s: Text) -> Text:
+    assert s.startswith("'") or s.startswith('"'), repr(s[:1])
+    q = s[0]
+    if s[:3] == q * 3:
+        q = q * 3
+    assert s.endswith(q), repr(s[-len(q) :])
+    assert len(s) >= 2 * len(q)
+    s = s[len(q) : -len(q)]
+    return re.sub(r"\\(\'|\"|\\|[abfnrtv]|x.{0,2}|[0-7]{1,3})", escape, s)
+
+
+def test() -> None:
+    for i in range(256):
+        c = chr(i)
+        s = repr(c)
+        e = evalString(s)
+        if e != c:
+            print(i, c, s, e)
+
+
+if __name__ == "__main__":
+    test()
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/parse.py b/.vim/bundle/black/src/blib2to3/pgen2/parse.py
new file mode 100644 (file)
index 0000000..47c8f02
--- /dev/null
@@ -0,0 +1,235 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""Parser engine for the grammar tables generated by pgen.
+
+The grammar table must be loaded first.
+
+See Parser/parser.c in the Python distribution for additional info on
+how this parsing engine works.
+
+"""
+
+# Local imports
+from . import token
+from typing import (
+    Optional,
+    Text,
+    Union,
+    Tuple,
+    Dict,
+    List,
+    Callable,
+    Set,
+)
+from blib2to3.pgen2.grammar import Grammar
+from blib2to3.pytree import NL, Context, RawNode, Leaf, Node
+
+
+Results = Dict[Text, NL]
+Convert = Callable[[Grammar, RawNode], Union[Node, Leaf]]
+DFA = List[List[Tuple[int, int]]]
+DFAS = Tuple[DFA, Dict[int, int]]
+
+
+def lam_sub(grammar: Grammar, node: RawNode) -> NL:
+    assert node[3] is not None
+    return Node(type=node[0], children=node[3], context=node[2])
+
+
+class ParseError(Exception):
+    """Exception to signal the parser is stuck."""
+
+    def __init__(
+        self, msg: Text, type: Optional[int], value: Optional[Text], context: Context
+    ) -> None:
+        Exception.__init__(
+            self, "%s: type=%r, value=%r, context=%r" % (msg, type, value, context)
+        )
+        self.msg = msg
+        self.type = type
+        self.value = value
+        self.context = context
+
+
+class Parser(object):
+    """Parser engine.
+
+    The proper usage sequence is:
+
+    p = Parser(grammar, [converter])  # create instance
+    p.setup([start])                  # prepare for parsing
+    <for each input token>:
+        if p.addtoken(...):           # parse a token; may raise ParseError
+            break
+    root = p.rootnode                 # root of abstract syntax tree
+
+    A Parser instance may be reused by calling setup() repeatedly.
+
+    A Parser instance contains state pertaining to the current token
+    sequence, and should not be used concurrently by different threads
+    to parse separate token sequences.
+
+    See driver.py for how to get input tokens by tokenizing a file or
+    string.
+
+    Parsing is complete when addtoken() returns True; the root of the
+    abstract syntax tree can then be retrieved from the rootnode
+    instance variable.  When a syntax error occurs, addtoken() raises
+    the ParseError exception.  There is no error recovery; the parser
+    cannot be used after a syntax error was reported (but it can be
+    reinitialized by calling setup()).
+
+    """
+
+    def __init__(self, grammar: Grammar, convert: Optional[Convert] = None) -> None:
+        """Constructor.
+
+        The grammar argument is a grammar.Grammar instance; see the
+        grammar module for more information.
+
+        The parser is not ready yet for parsing; you must call the
+        setup() method to get it started.
+
+        The optional convert argument is a function mapping concrete
+        syntax tree nodes to abstract syntax tree nodes.  If not
+        given, no conversion is done and the syntax tree produced is
+        the concrete syntax tree.  If given, it must be a function of
+        two arguments, the first being the grammar (a grammar.Grammar
+        instance), and the second being the concrete syntax tree node
+        to be converted.  The syntax tree is converted from the bottom
+        up.
+
+        A concrete syntax tree node is a (type, value, context, nodes)
+        tuple, where type is the node type (a token or symbol number),
+        value is None for symbols and a string for tokens, context is
+        None or an opaque value used for error reporting (typically a
+        (lineno, offset) pair), and nodes is a list of children for
+        symbols, and None for tokens.
+
+        An abstract syntax tree node may be anything; this is entirely
+        up to the converter function.
+
+        """
+        self.grammar = grammar
+        self.convert = convert or lam_sub
+
+    def setup(self, start: Optional[int] = None) -> None:
+        """Prepare for parsing.
+
+        This *must* be called before starting to parse.
+
+        The optional argument is an alternative start symbol; it
+        defaults to the grammar's start symbol.
+
+        You can use a Parser instance to parse any number of programs;
+        each time you call setup() the parser is reset to an initial
+        state determined by the (implicit or explicit) start symbol.
+
+        """
+        if start is None:
+            start = self.grammar.start
+        # Each stack entry is a tuple: (dfa, state, node).
+        # A node is a tuple: (type, value, context, children),
+        # where children is a list of nodes or None, and context may be None.
+        newnode: RawNode = (start, None, None, [])
+        stackentry = (self.grammar.dfas[start], 0, newnode)
+        self.stack: List[Tuple[DFAS, int, RawNode]] = [stackentry]
+        self.rootnode: Optional[NL] = None
+        self.used_names: Set[str] = set()
+
+    def addtoken(self, type: int, value: Optional[Text], context: Context) -> bool:
+        """Add a token; return True iff this is the end of the program."""
+        # Map from token to label
+        ilabel = self.classify(type, value, context)
+        # Loop until the token is shifted; may raise exceptions
+        while True:
+            dfa, state, node = self.stack[-1]
+            states, first = dfa
+            arcs = states[state]
+            # Look for a state with this label
+            for i, newstate in arcs:
+                t, v = self.grammar.labels[i]
+                if ilabel == i:
+                    # Look it up in the list of labels
+                    assert t < 256
+                    # Shift a token; we're done with it
+                    self.shift(type, value, newstate, context)
+                    # Pop while we are in an accept-only state
+                    state = newstate
+                    while states[state] == [(0, state)]:
+                        self.pop()
+                        if not self.stack:
+                            # Done parsing!
+                            return True
+                        dfa, state, node = self.stack[-1]
+                        states, first = dfa
+                    # Done with this token
+                    return False
+                elif t >= 256:
+                    # See if it's a symbol and if we're in its first set
+                    itsdfa = self.grammar.dfas[t]
+                    itsstates, itsfirst = itsdfa
+                    if ilabel in itsfirst:
+                        # Push a symbol
+                        self.push(t, self.grammar.dfas[t], newstate, context)
+                        break  # To continue the outer while loop
+            else:
+                if (0, state) in arcs:
+                    # An accepting state, pop it and try something else
+                    self.pop()
+                    if not self.stack:
+                        # Done parsing, but another token is input
+                        raise ParseError("too much input", type, value, context)
+                else:
+                    # No success finding a transition
+                    raise ParseError("bad input", type, value, context)
+
+    def classify(self, type: int, value: Optional[Text], context: Context) -> int:
+        """Turn a token into a label.  (Internal)"""
+        if type == token.NAME:
+            # Keep a listing of all used names
+            assert value is not None
+            self.used_names.add(value)
+            # Check for reserved words
+            ilabel = self.grammar.keywords.get(value)
+            if ilabel is not None:
+                return ilabel
+        ilabel = self.grammar.tokens.get(type)
+        if ilabel is None:
+            raise ParseError("bad token", type, value, context)
+        return ilabel
+
+    def shift(
+        self, type: int, value: Optional[Text], newstate: int, context: Context
+    ) -> None:
+        """Shift a token.  (Internal)"""
+        dfa, state, node = self.stack[-1]
+        assert value is not None
+        assert context is not None
+        rawnode: RawNode = (type, value, context, None)
+        newnode = self.convert(self.grammar, rawnode)
+        if newnode is not None:
+            assert node[-1] is not None
+            node[-1].append(newnode)
+        self.stack[-1] = (dfa, newstate, node)
+
+    def push(self, type: int, newdfa: DFAS, newstate: int, context: Context) -> None:
+        """Push a nonterminal.  (Internal)"""
+        dfa, state, node = self.stack[-1]
+        newnode: RawNode = (type, None, context, [])
+        self.stack[-1] = (dfa, newstate, node)
+        self.stack.append((newdfa, 0, newnode))
+
+    def pop(self) -> None:
+        """Pop a nonterminal.  (Internal)"""
+        popdfa, popstate, popnode = self.stack.pop()
+        newnode = self.convert(self.grammar, popnode)
+        if newnode is not None:
+            if self.stack:
+                dfa, state, node = self.stack[-1]
+                assert node[-1] is not None
+                node[-1].append(newnode)
+            else:
+                self.rootnode = newnode
+                self.rootnode.used_names = self.used_names
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/pgen.py b/.vim/bundle/black/src/blib2to3/pgen2/pgen.py
new file mode 100644 (file)
index 0000000..564ebbd
--- /dev/null
@@ -0,0 +1,428 @@
+# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+# Pgen imports
+from . import grammar, token, tokenize
+
+from typing import (
+    Any,
+    Dict,
+    IO,
+    Iterator,
+    List,
+    Optional,
+    Text,
+    Tuple,
+    Union,
+    Sequence,
+    NoReturn,
+)
+from blib2to3.pgen2 import grammar
+from blib2to3.pgen2.tokenize import GoodTokenInfo
+import os
+
+
+Path = Union[str, "os.PathLike[str]"]
+
+
+class PgenGrammar(grammar.Grammar):
+    pass
+
+
+class ParserGenerator(object):
+
+    filename: Path
+    stream: IO[Text]
+    generator: Iterator[GoodTokenInfo]
+    first: Dict[Text, Optional[Dict[Text, int]]]
+
+    def __init__(self, filename: Path, stream: Optional[IO[Text]] = None) -> None:
+        close_stream = None
+        if stream is None:
+            stream = open(filename)
+            close_stream = stream.close
+        self.filename = filename
+        self.stream = stream
+        self.generator = tokenize.generate_tokens(stream.readline)
+        self.gettoken()  # Initialize lookahead
+        self.dfas, self.startsymbol = self.parse()
+        if close_stream is not None:
+            close_stream()
+        self.first = {}  # map from symbol name to set of tokens
+        self.addfirstsets()
+
+    def make_grammar(self) -> PgenGrammar:
+        c = PgenGrammar()
+        names = list(self.dfas.keys())
+        names.sort()
+        names.remove(self.startsymbol)
+        names.insert(0, self.startsymbol)
+        for name in names:
+            i = 256 + len(c.symbol2number)
+            c.symbol2number[name] = i
+            c.number2symbol[i] = name
+        for name in names:
+            dfa = self.dfas[name]
+            states = []
+            for state in dfa:
+                arcs = []
+                for label, next in sorted(state.arcs.items()):
+                    arcs.append((self.make_label(c, label), dfa.index(next)))
+                if state.isfinal:
+                    arcs.append((0, dfa.index(state)))
+                states.append(arcs)
+            c.states.append(states)
+            c.dfas[c.symbol2number[name]] = (states, self.make_first(c, name))
+        c.start = c.symbol2number[self.startsymbol]
+        return c
+
+    def make_first(self, c: PgenGrammar, name: Text) -> Dict[int, int]:
+        rawfirst = self.first[name]
+        assert rawfirst is not None
+        first = {}
+        for label in sorted(rawfirst):
+            ilabel = self.make_label(c, label)
+            ##assert ilabel not in first # XXX failed on <> ... !=
+            first[ilabel] = 1
+        return first
+
+    def make_label(self, c: PgenGrammar, label: Text) -> int:
+        # XXX Maybe this should be a method on a subclass of converter?
+        ilabel = len(c.labels)
+        if label[0].isalpha():
+            # Either a symbol name or a named token
+            if label in c.symbol2number:
+                # A symbol name (a non-terminal)
+                if label in c.symbol2label:
+                    return c.symbol2label[label]
+                else:
+                    c.labels.append((c.symbol2number[label], None))
+                    c.symbol2label[label] = ilabel
+                    return ilabel
+            else:
+                # A named token (NAME, NUMBER, STRING)
+                itoken = getattr(token, label, None)
+                assert isinstance(itoken, int), label
+                assert itoken in token.tok_name, label
+                if itoken in c.tokens:
+                    return c.tokens[itoken]
+                else:
+                    c.labels.append((itoken, None))
+                    c.tokens[itoken] = ilabel
+                    return ilabel
+        else:
+            # Either a keyword or an operator
+            assert label[0] in ('"', "'"), label
+            value = eval(label)
+            if value[0].isalpha():
+                # A keyword
+                if value in c.keywords:
+                    return c.keywords[value]
+                else:
+                    c.labels.append((token.NAME, value))
+                    c.keywords[value] = ilabel
+                    return ilabel
+            else:
+                # An operator (any non-numeric token)
+                itoken = grammar.opmap[value]  # Fails if unknown token
+                if itoken in c.tokens:
+                    return c.tokens[itoken]
+                else:
+                    c.labels.append((itoken, None))
+                    c.tokens[itoken] = ilabel
+                    return ilabel
+
+    def addfirstsets(self) -> None:
+        names = list(self.dfas.keys())
+        names.sort()
+        for name in names:
+            if name not in self.first:
+                self.calcfirst(name)
+            # print name, self.first[name].keys()
+
+    def calcfirst(self, name: Text) -> None:
+        dfa = self.dfas[name]
+        self.first[name] = None  # dummy to detect left recursion
+        state = dfa[0]
+        totalset: Dict[str, int] = {}
+        overlapcheck = {}
+        for label, next in state.arcs.items():
+            if label in self.dfas:
+                if label in self.first:
+                    fset = self.first[label]
+                    if fset is None:
+                        raise ValueError("recursion for rule %r" % name)
+                else:
+                    self.calcfirst(label)
+                    fset = self.first[label]
+                    assert fset is not None
+                totalset.update(fset)
+                overlapcheck[label] = fset
+            else:
+                totalset[label] = 1
+                overlapcheck[label] = {label: 1}
+        inverse: Dict[str, str] = {}
+        for label, itsfirst in overlapcheck.items():
+            for symbol in itsfirst:
+                if symbol in inverse:
+                    raise ValueError(
+                        "rule %s is ambiguous; %s is in the first sets of %s as well"
+                        " as %s" % (name, symbol, label, inverse[symbol])
+                    )
+                inverse[symbol] = label
+        self.first[name] = totalset
+
+    def parse(self) -> Tuple[Dict[Text, List["DFAState"]], Text]:
+        dfas = {}
+        startsymbol: Optional[str] = None
+        # MSTART: (NEWLINE | RULE)* ENDMARKER
+        while self.type != token.ENDMARKER:
+            while self.type == token.NEWLINE:
+                self.gettoken()
+            # RULE: NAME ':' RHS NEWLINE
+            name = self.expect(token.NAME)
+            self.expect(token.OP, ":")
+            a, z = self.parse_rhs()
+            self.expect(token.NEWLINE)
+            # self.dump_nfa(name, a, z)
+            dfa = self.make_dfa(a, z)
+            # self.dump_dfa(name, dfa)
+            oldlen = len(dfa)
+            self.simplify_dfa(dfa)
+            newlen = len(dfa)
+            dfas[name] = dfa
+            # print name, oldlen, newlen
+            if startsymbol is None:
+                startsymbol = name
+        assert startsymbol is not None
+        return dfas, startsymbol
+
+    def make_dfa(self, start: "NFAState", finish: "NFAState") -> List["DFAState"]:
+        # To turn an NFA into a DFA, we define the states of the DFA
+        # to correspond to *sets* of states of the NFA.  Then do some
+        # state reduction.  Let's represent sets as dicts with 1 for
+        # values.
+        assert isinstance(start, NFAState)
+        assert isinstance(finish, NFAState)
+
+        def closure(state: NFAState) -> Dict[NFAState, int]:
+            base: Dict[NFAState, int] = {}
+            addclosure(state, base)
+            return base
+
+        def addclosure(state: NFAState, base: Dict[NFAState, int]) -> None:
+            assert isinstance(state, NFAState)
+            if state in base:
+                return
+            base[state] = 1
+            for label, next in state.arcs:
+                if label is None:
+                    addclosure(next, base)
+
+        states = [DFAState(closure(start), finish)]
+        for state in states:  # NB states grows while we're iterating
+            arcs: Dict[str, Dict[NFAState, int]] = {}
+            for nfastate in state.nfaset:
+                for label, next in nfastate.arcs:
+                    if label is not None:
+                        addclosure(next, arcs.setdefault(label, {}))
+            for label, nfaset in sorted(arcs.items()):
+                for st in states:
+                    if st.nfaset == nfaset:
+                        break
+                else:
+                    st = DFAState(nfaset, finish)
+                    states.append(st)
+                state.addarc(st, label)
+        return states  # List of DFAState instances; first one is start
+
+    def dump_nfa(self, name: Text, start: "NFAState", finish: "NFAState") -> None:
+        print("Dump of NFA for", name)
+        todo = [start]
+        for i, state in enumerate(todo):
+            print("  State", i, state is finish and "(final)" or "")
+            for label, next in state.arcs:
+                if next in todo:
+                    j = todo.index(next)
+                else:
+                    j = len(todo)
+                    todo.append(next)
+                if label is None:
+                    print("    -> %d" % j)
+                else:
+                    print("    %s -> %d" % (label, j))
+
+    def dump_dfa(self, name: Text, dfa: Sequence["DFAState"]) -> None:
+        print("Dump of DFA for", name)
+        for i, state in enumerate(dfa):
+            print("  State", i, state.isfinal and "(final)" or "")
+            for label, next in sorted(state.arcs.items()):
+                print("    %s -> %d" % (label, dfa.index(next)))
+
+    def simplify_dfa(self, dfa: List["DFAState"]) -> None:
+        # This is not theoretically optimal, but works well enough.
+        # Algorithm: repeatedly look for two states that have the same
+        # set of arcs (same labels pointing to the same nodes) and
+        # unify them, until things stop changing.
+
+        # dfa is a list of DFAState instances
+        changes = True
+        while changes:
+            changes = False
+            for i, state_i in enumerate(dfa):
+                for j in range(i + 1, len(dfa)):
+                    state_j = dfa[j]
+                    if state_i == state_j:
+                        # print "  unify", i, j
+                        del dfa[j]
+                        for state in dfa:
+                            state.unifystate(state_j, state_i)
+                        changes = True
+                        break
+
+    def parse_rhs(self) -> Tuple["NFAState", "NFAState"]:
+        # RHS: ALT ('|' ALT)*
+        a, z = self.parse_alt()
+        if self.value != "|":
+            return a, z
+        else:
+            aa = NFAState()
+            zz = NFAState()
+            aa.addarc(a)
+            z.addarc(zz)
+            while self.value == "|":
+                self.gettoken()
+                a, z = self.parse_alt()
+                aa.addarc(a)
+                z.addarc(zz)
+            return aa, zz
+
+    def parse_alt(self) -> Tuple["NFAState", "NFAState"]:
+        # ALT: ITEM+
+        a, b = self.parse_item()
+        while self.value in ("(", "[") or self.type in (token.NAME, token.STRING):
+            c, d = self.parse_item()
+            b.addarc(c)
+            b = d
+        return a, b
+
+    def parse_item(self) -> Tuple["NFAState", "NFAState"]:
+        # ITEM: '[' RHS ']' | ATOM ['+' | '*']
+        if self.value == "[":
+            self.gettoken()
+            a, z = self.parse_rhs()
+            self.expect(token.OP, "]")
+            a.addarc(z)
+            return a, z
+        else:
+            a, z = self.parse_atom()
+            value = self.value
+            if value not in ("+", "*"):
+                return a, z
+            self.gettoken()
+            z.addarc(a)
+            if value == "+":
+                return a, z
+            else:
+                return a, a
+
+    def parse_atom(self) -> Tuple["NFAState", "NFAState"]:
+        # ATOM: '(' RHS ')' | NAME | STRING
+        if self.value == "(":
+            self.gettoken()
+            a, z = self.parse_rhs()
+            self.expect(token.OP, ")")
+            return a, z
+        elif self.type in (token.NAME, token.STRING):
+            a = NFAState()
+            z = NFAState()
+            a.addarc(z, self.value)
+            self.gettoken()
+            return a, z
+        else:
+            self.raise_error(
+                "expected (...) or NAME or STRING, got %s/%s", self.type, self.value
+            )
+            assert False
+
+    def expect(self, type: int, value: Optional[Any] = None) -> Text:
+        if self.type != type or (value is not None and self.value != value):
+            self.raise_error(
+                "expected %s/%s, got %s/%s", type, value, self.type, self.value
+            )
+        value = self.value
+        self.gettoken()
+        return value
+
+    def gettoken(self) -> None:
+        tup = next(self.generator)
+        while tup[0] in (tokenize.COMMENT, tokenize.NL):
+            tup = next(self.generator)
+        self.type, self.value, self.begin, self.end, self.line = tup
+        # print token.tok_name[self.type], repr(self.value)
+
+    def raise_error(self, msg: str, *args: Any) -> NoReturn:
+        if args:
+            try:
+                msg = msg % args
+            except:
+                msg = " ".join([msg] + list(map(str, args)))
+        raise SyntaxError(msg, (self.filename, self.end[0], self.end[1], self.line))
+
+
+class NFAState(object):
+    arcs: List[Tuple[Optional[Text], "NFAState"]]
+
+    def __init__(self) -> None:
+        self.arcs = []  # list of (label, NFAState) pairs
+
+    def addarc(self, next: "NFAState", label: Optional[Text] = None) -> None:
+        assert label is None or isinstance(label, str)
+        assert isinstance(next, NFAState)
+        self.arcs.append((label, next))
+
+
+class DFAState(object):
+    nfaset: Dict[NFAState, Any]
+    isfinal: bool
+    arcs: Dict[Text, "DFAState"]
+
+    def __init__(self, nfaset: Dict[NFAState, Any], final: NFAState) -> None:
+        assert isinstance(nfaset, dict)
+        assert isinstance(next(iter(nfaset)), NFAState)
+        assert isinstance(final, NFAState)
+        self.nfaset = nfaset
+        self.isfinal = final in nfaset
+        self.arcs = {}  # map from label to DFAState
+
+    def addarc(self, next: "DFAState", label: Text) -> None:
+        assert isinstance(label, str)
+        assert label not in self.arcs
+        assert isinstance(next, DFAState)
+        self.arcs[label] = next
+
+    def unifystate(self, old: "DFAState", new: "DFAState") -> None:
+        for label, next in self.arcs.items():
+            if next is old:
+                self.arcs[label] = new
+
+    def __eq__(self, other: Any) -> bool:
+        # Equality test -- ignore the nfaset instance variable
+        assert isinstance(other, DFAState)
+        if self.isfinal != other.isfinal:
+            return False
+        # Can't just return self.arcs == other.arcs, because that
+        # would invoke this method recursively, with cycles...
+        if len(self.arcs) != len(other.arcs):
+            return False
+        for label, next in self.arcs.items():
+            if next is not other.arcs.get(label):
+                return False
+        return True
+
+    __hash__: Any = None  # For Py3 compatibility.
+
+
+def generate_grammar(filename: Path = "Grammar.txt") -> PgenGrammar:
+    p = ParserGenerator(filename)
+    return p.make_grammar()
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/token.py b/.vim/bundle/black/src/blib2to3/pgen2/token.py
new file mode 100644 (file)
index 0000000..1e0dec9
--- /dev/null
@@ -0,0 +1,94 @@
+"""Token constants (from "token.h")."""
+
+import sys
+from typing import Dict
+
+if sys.version_info < (3, 8):
+    from typing_extensions import Final
+else:
+    from typing import Final
+
+#  Taken from Python (r53757) and modified to include some tokens
+#   originally monkeypatched in by pgen2.tokenize
+
+# --start constants--
+ENDMARKER: Final = 0
+NAME: Final = 1
+NUMBER: Final = 2
+STRING: Final = 3
+NEWLINE: Final = 4
+INDENT: Final = 5
+DEDENT: Final = 6
+LPAR: Final = 7
+RPAR: Final = 8
+LSQB: Final = 9
+RSQB: Final = 10
+COLON: Final = 11
+COMMA: Final = 12
+SEMI: Final = 13
+PLUS: Final = 14
+MINUS: Final = 15
+STAR: Final = 16
+SLASH: Final = 17
+VBAR: Final = 18
+AMPER: Final = 19
+LESS: Final = 20
+GREATER: Final = 21
+EQUAL: Final = 22
+DOT: Final = 23
+PERCENT: Final = 24
+BACKQUOTE: Final = 25
+LBRACE: Final = 26
+RBRACE: Final = 27
+EQEQUAL: Final = 28
+NOTEQUAL: Final = 29
+LESSEQUAL: Final = 30
+GREATEREQUAL: Final = 31
+TILDE: Final = 32
+CIRCUMFLEX: Final = 33
+LEFTSHIFT: Final = 34
+RIGHTSHIFT: Final = 35
+DOUBLESTAR: Final = 36
+PLUSEQUAL: Final = 37
+MINEQUAL: Final = 38
+STAREQUAL: Final = 39
+SLASHEQUAL: Final = 40
+PERCENTEQUAL: Final = 41
+AMPEREQUAL: Final = 42
+VBAREQUAL: Final = 43
+CIRCUMFLEXEQUAL: Final = 44
+LEFTSHIFTEQUAL: Final = 45
+RIGHTSHIFTEQUAL: Final = 46
+DOUBLESTAREQUAL: Final = 47
+DOUBLESLASH: Final = 48
+DOUBLESLASHEQUAL: Final = 49
+AT: Final = 50
+ATEQUAL: Final = 51
+OP: Final = 52
+COMMENT: Final = 53
+NL: Final = 54
+RARROW: Final = 55
+AWAIT: Final = 56
+ASYNC: Final = 57
+ERRORTOKEN: Final = 58
+COLONEQUAL: Final = 59
+N_TOKENS: Final = 60
+NT_OFFSET: Final = 256
+# --end constants--
+
+tok_name: Final[Dict[int, str]] = {}
+for _name, _value in list(globals().items()):
+    if type(_value) is type(0):
+        tok_name[_value] = _name
+
+
+def ISTERMINAL(x: int) -> bool:
+    return x < NT_OFFSET
+
+
+def ISNONTERMINAL(x: int) -> bool:
+    return x >= NT_OFFSET
+
+
+def ISEOF(x: int) -> bool:
+    return x == ENDMARKER
diff --git a/.vim/bundle/black/src/blib2to3/pgen2/tokenize.py b/.vim/bundle/black/src/blib2to3/pgen2/tokenize.py
new file mode 100644 (file)
index 0000000..bad79b2
--- /dev/null
@@ -0,0 +1,681 @@
+# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Python Software Foundation.
+# All rights reserved.
+
+# mypy: allow-untyped-defs, allow-untyped-calls
+
+"""Tokenization help for Python programs.
+
+generate_tokens(readline) is a generator that breaks a stream of
+text into Python tokens.  It accepts a readline-like method which is called
+repeatedly to get the next line of input (or "" for EOF).  It generates
+5-tuples with these members:
+
+    the token type (see token.py)
+    the token (a string)
+    the starting (row, column) indices of the token (a 2-tuple of ints)
+    the ending (row, column) indices of the token (a 2-tuple of ints)
+    the original line (string)
+
+It is designed to match the working of the Python tokenizer exactly, except
+that it produces COMMENT tokens for comments and gives type OP for all
+operators
+
+Older entry points
+    tokenize_loop(readline, tokeneater)
+    tokenize(readline, tokeneater=printtoken)
+are the same, except instead of generating tokens, tokeneater is a callback
+function to which the 5 fields described above are passed as 5 arguments,
+each time a new token is found."""
+
+from typing import (
+    Callable,
+    Iterable,
+    Iterator,
+    List,
+    Optional,
+    Text,
+    Tuple,
+    Pattern,
+    Union,
+    cast,
+)
+from blib2to3.pgen2.token import *
+from blib2to3.pgen2.grammar import Grammar
+
+__author__ = "Ka-Ping Yee <ping@lfw.org>"
+__credits__ = "GvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, Skip Montanaro"
+
+import regex as re
+from codecs import BOM_UTF8, lookup
+from blib2to3.pgen2.token import *
+
+from . import token
+
+__all__ = [x for x in dir(token) if x[0] != "_"] + [
+    "tokenize",
+    "generate_tokens",
+    "untokenize",
+]
+del token
+
+
+def group(*choices):
+    return "(" + "|".join(choices) + ")"
+
+
+def any(*choices):
+    return group(*choices) + "*"
+
+
+def maybe(*choices):
+    return group(*choices) + "?"
+
+
+def _combinations(*l):
+    return set(x + y for x in l for y in l + ("",) if x.casefold() != y.casefold())
+
+
+Whitespace = r"[ \f\t]*"
+Comment = r"#[^\r\n]*"
+Ignore = Whitespace + any(r"\\\r?\n" + Whitespace) + maybe(Comment)
+Name = (  # this is invalid but it's fine because Name comes after Number in all groups
+    r"\w+"
+)
+
+Binnumber = r"0[bB]_?[01]+(?:_[01]+)*"
+Hexnumber = r"0[xX]_?[\da-fA-F]+(?:_[\da-fA-F]+)*[lL]?"
+Octnumber = r"0[oO]?_?[0-7]+(?:_[0-7]+)*[lL]?"
+Decnumber = group(r"[1-9]\d*(?:_\d+)*[lL]?", "0[lL]?")
+Intnumber = group(Binnumber, Hexnumber, Octnumber, Decnumber)
+Exponent = r"[eE][-+]?\d+(?:_\d+)*"
+Pointfloat = group(r"\d+(?:_\d+)*\.(?:\d+(?:_\d+)*)?", r"\.\d+(?:_\d+)*") + maybe(
+    Exponent
+)
+Expfloat = r"\d+(?:_\d+)*" + Exponent
+Floatnumber = group(Pointfloat, Expfloat)
+Imagnumber = group(r"\d+(?:_\d+)*[jJ]", Floatnumber + r"[jJ]")
+Number = group(Imagnumber, Floatnumber, Intnumber)
+
+# Tail end of ' string.
+Single = r"[^'\\]*(?:\\.[^'\\]*)*'"
+# Tail end of " string.
+Double = r'[^"\\]*(?:\\.[^"\\]*)*"'
+# Tail end of ''' string.
+Single3 = r"[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''"
+# Tail end of """ string.
+Double3 = r'[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""'
+_litprefix = r"(?:[uUrRbBfF]|[rR][fFbB]|[fFbBuU][rR])?"
+Triple = group(_litprefix + "'''", _litprefix + '"""')
+# Single-line ' or " string.
+String = group(
+    _litprefix + r"'[^\n'\\]*(?:\\.[^\n'\\]*)*'",
+    _litprefix + r'"[^\n"\\]*(?:\\.[^\n"\\]*)*"',
+)
+
+# Because of leftmost-then-longest match semantics, be sure to put the
+# longest operators first (e.g., if = came before ==, == would get
+# recognized as two instances of =).
+Operator = group(
+    r"\*\*=?",
+    r">>=?",
+    r"<<=?",
+    r"<>",
+    r"!=",
+    r"//=?",
+    r"->",
+    r"[+\-*/%&@|^=<>:]=?",
+    r"~",
+)
+
+Bracket = "[][(){}]"
+Special = group(r"\r?\n", r"[:;.,`@]")
+Funny = group(Operator, Bracket, Special)
+
+# First (or only) line of ' or " string.
+ContStr = group(
+    _litprefix + r"'[^\n'\\]*(?:\\.[^\n'\\]*)*" + group("'", r"\\\r?\n"),
+    _litprefix + r'"[^\n"\\]*(?:\\.[^\n"\\]*)*' + group('"', r"\\\r?\n"),
+)
+PseudoExtras = group(r"\\\r?\n", Comment, Triple)
+PseudoToken = Whitespace + group(PseudoExtras, Number, Funny, ContStr, Name)
+
+pseudoprog = re.compile(PseudoToken, re.UNICODE)
+single3prog = re.compile(Single3)
+double3prog = re.compile(Double3)
+
+_strprefixes = (
+    _combinations("r", "R", "f", "F")
+    | _combinations("r", "R", "b", "B")
+    | {"u", "U", "ur", "uR", "Ur", "UR"}
+)
+
+endprogs = {
+    "'": re.compile(Single),
+    '"': re.compile(Double),
+    "'''": single3prog,
+    '"""': double3prog,
+    **{f"{prefix}'''": single3prog for prefix in _strprefixes},
+    **{f'{prefix}"""': double3prog for prefix in _strprefixes},
+    **{prefix: None for prefix in _strprefixes},
+}
+
+triple_quoted = (
+    {"'''", '"""'}
+    | {f"{prefix}'''" for prefix in _strprefixes}
+    | {f'{prefix}"""' for prefix in _strprefixes}
+)
+single_quoted = (
+    {"'", '"'}
+    | {f"{prefix}'" for prefix in _strprefixes}
+    | {f'{prefix}"' for prefix in _strprefixes}
+)
+
+tabsize = 8
+
+
+class TokenError(Exception):
+    pass
+
+
+class StopTokenizing(Exception):
+    pass
+
+
+def printtoken(type, token, xxx_todo_changeme, xxx_todo_changeme1, line):  # for testing
+    (srow, scol) = xxx_todo_changeme
+    (erow, ecol) = xxx_todo_changeme1
+    print(
+        "%d,%d-%d,%d:\t%s\t%s" % (srow, scol, erow, ecol, tok_name[type], repr(token))
+    )
+
+
+Coord = Tuple[int, int]
+TokenEater = Callable[[int, Text, Coord, Coord, Text], None]
+
+
+def tokenize(readline: Callable[[], Text], tokeneater: TokenEater = printtoken) -> None:
+    """
+    The tokenize() function accepts two parameters: one representing the
+    input stream, and one providing an output mechanism for tokenize().
+
+    The first parameter, readline, must be a callable object which provides
+    the same interface as the readline() method of built-in file objects.
+    Each call to the function should return one line of input as a string.
+
+    The second parameter, tokeneater, must also be a callable object. It is
+    called once for each token, with five arguments, corresponding to the
+    tuples generated by generate_tokens().
+    """
+    try:
+        tokenize_loop(readline, tokeneater)
+    except StopTokenizing:
+        pass
+
+
+# backwards compatible interface
+def tokenize_loop(readline, tokeneater):
+    for token_info in generate_tokens(readline):
+        tokeneater(*token_info)
+
+
+GoodTokenInfo = Tuple[int, Text, Coord, Coord, Text]
+TokenInfo = Union[Tuple[int, str], GoodTokenInfo]
+
+
+class Untokenizer:
+
+    tokens: List[Text]
+    prev_row: int
+    prev_col: int
+
+    def __init__(self) -> None:
+        self.tokens = []
+        self.prev_row = 1
+        self.prev_col = 0
+
+    def add_whitespace(self, start: Coord) -> None:
+        row, col = start
+        assert row <= self.prev_row
+        col_offset = col - self.prev_col
+        if col_offset:
+            self.tokens.append(" " * col_offset)
+
+    def untokenize(self, iterable: Iterable[TokenInfo]) -> Text:
+        for t in iterable:
+            if len(t) == 2:
+                self.compat(cast(Tuple[int, str], t), iterable)
+                break
+            tok_type, token, start, end, line = cast(
+                Tuple[int, Text, Coord, Coord, Text], t
+            )
+            self.add_whitespace(start)
+            self.tokens.append(token)
+            self.prev_row, self.prev_col = end
+            if tok_type in (NEWLINE, NL):
+                self.prev_row += 1
+                self.prev_col = 0
+        return "".join(self.tokens)
+
+    def compat(self, token: Tuple[int, Text], iterable: Iterable[TokenInfo]) -> None:
+        startline = False
+        indents = []
+        toks_append = self.tokens.append
+        toknum, tokval = token
+        if toknum in (NAME, NUMBER):
+            tokval += " "
+        if toknum in (NEWLINE, NL):
+            startline = True
+        for tok in iterable:
+            toknum, tokval = tok[:2]
+
+            if toknum in (NAME, NUMBER, ASYNC, AWAIT):
+                tokval += " "
+
+            if toknum == INDENT:
+                indents.append(tokval)
+                continue
+            elif toknum == DEDENT:
+                indents.pop()
+                continue
+            elif toknum in (NEWLINE, NL):
+                startline = True
+            elif startline and indents:
+                toks_append(indents[-1])
+                startline = False
+            toks_append(tokval)
+
+
+cookie_re = re.compile(r"^[ \t\f]*#.*?coding[:=][ \t]*([-\w.]+)", re.ASCII)
+blank_re = re.compile(br"^[ \t\f]*(?:[#\r\n]|$)", re.ASCII)
+
+
+def _get_normal_name(orig_enc: str) -> str:
+    """Imitates get_normal_name in tokenizer.c."""
+    # Only care about the first 12 characters.
+    enc = orig_enc[:12].lower().replace("_", "-")
+    if enc == "utf-8" or enc.startswith("utf-8-"):
+        return "utf-8"
+    if enc in ("latin-1", "iso-8859-1", "iso-latin-1") or enc.startswith(
+        ("latin-1-", "iso-8859-1-", "iso-latin-1-")
+    ):
+        return "iso-8859-1"
+    return orig_enc
+
+
+def detect_encoding(readline: Callable[[], bytes]) -> Tuple[str, List[bytes]]:
+    """
+    The detect_encoding() function is used to detect the encoding that should
+    be used to decode a Python source file. It requires one argument, readline,
+    in the same way as the tokenize() generator.
+
+    It will call readline a maximum of twice, and return the encoding used
+    (as a string) and a list of any lines (left as bytes) it has read
+    in.
+
+    It detects the encoding from the presence of a utf-8 bom or an encoding
+    cookie as specified in pep-0263. If both a bom and a cookie are present, but
+    disagree, a SyntaxError will be raised. If the encoding cookie is an invalid
+    charset, raise a SyntaxError.  Note that if a utf-8 bom is found,
+    'utf-8-sig' is returned.
+
+    If no encoding is specified, then the default of 'utf-8' will be returned.
+    """
+    bom_found = False
+    encoding = None
+    default = "utf-8"
+
+    def read_or_stop() -> bytes:
+        try:
+            return readline()
+        except StopIteration:
+            return bytes()
+
+    def find_cookie(line: bytes) -> Optional[str]:
+        try:
+            line_string = line.decode("ascii")
+        except UnicodeDecodeError:
+            return None
+        match = cookie_re.match(line_string)
+        if not match:
+            return None
+        encoding = _get_normal_name(match.group(1))
+        try:
+            codec = lookup(encoding)
+        except LookupError:
+            # This behaviour mimics the Python interpreter
+            raise SyntaxError("unknown encoding: " + encoding)
+
+        if bom_found:
+            if codec.name != "utf-8":
+                # This behaviour mimics the Python interpreter
+                raise SyntaxError("encoding problem: utf-8")
+            encoding += "-sig"
+        return encoding
+
+    first = read_or_stop()
+    if first.startswith(BOM_UTF8):
+        bom_found = True
+        first = first[3:]
+        default = "utf-8-sig"
+    if not first:
+        return default, []
+
+    encoding = find_cookie(first)
+    if encoding:
+        return encoding, [first]
+    if not blank_re.match(first):
+        return default, [first]
+
+    second = read_or_stop()
+    if not second:
+        return default, [first]
+
+    encoding = find_cookie(second)
+    if encoding:
+        return encoding, [first, second]
+
+    return default, [first, second]
+
+
+def untokenize(iterable: Iterable[TokenInfo]) -> Text:
+    """Transform tokens back into Python source code.
+
+    Each element returned by the iterable must be a token sequence
+    with at least two elements, a token number and token value.  If
+    only two tokens are passed, the resulting output is poor.
+
+    Round-trip invariant for full input:
+        Untokenized source will match input source exactly
+
+    Round-trip invariant for limited input:
+        # Output text will tokenize the back to the input
+        t1 = [tok[:2] for tok in generate_tokens(f.readline)]
+        newcode = untokenize(t1)
+        readline = iter(newcode.splitlines(1)).next
+        t2 = [tok[:2] for tokin generate_tokens(readline)]
+        assert t1 == t2
+    """
+    ut = Untokenizer()
+    return ut.untokenize(iterable)
+
+
+def generate_tokens(
+    readline: Callable[[], Text], grammar: Optional[Grammar] = None
+) -> Iterator[GoodTokenInfo]:
+    """
+    The generate_tokens() generator requires one argument, readline, which
+    must be a callable object which provides the same interface as the
+    readline() method of built-in file objects. Each call to the function
+    should return one line of input as a string.  Alternately, readline
+    can be a callable function terminating with StopIteration:
+        readline = open(myfile).next    # Example of alternate readline
+
+    The generator produces 5-tuples with these members: the token type; the
+    token string; a 2-tuple (srow, scol) of ints specifying the row and
+    column where the token begins in the source; a 2-tuple (erow, ecol) of
+    ints specifying the row and column where the token ends in the source;
+    and the line on which the token was found. The line passed is the
+    logical line; continuation lines are included.
+    """
+    lnum = parenlev = continued = 0
+    numchars = "0123456789"
+    contstr, needcont = "", 0
+    contline: Optional[str] = None
+    indents = [0]
+
+    # If we know we're parsing 3.7+, we can unconditionally parse `async` and
+    # `await` as keywords.
+    async_keywords = False if grammar is None else grammar.async_keywords
+    # 'stashed' and 'async_*' are used for async/await parsing
+    stashed = None
+    async_def = False
+    async_def_indent = 0
+    async_def_nl = False
+
+    strstart: Tuple[int, int]
+    endprog: Pattern[str]
+
+    while 1:  # loop over lines in stream
+        try:
+            line = readline()
+        except StopIteration:
+            line = ""
+        lnum = lnum + 1
+        pos, max = 0, len(line)
+
+        if contstr:  # continued string
+            assert contline is not None
+            if not line:
+                raise TokenError("EOF in multi-line string", strstart)
+            endmatch = endprog.match(line)
+            if endmatch:
+                pos = end = endmatch.end(0)
+                yield (
+                    STRING,
+                    contstr + line[:end],
+                    strstart,
+                    (lnum, end),
+                    contline + line,
+                )
+                contstr, needcont = "", 0
+                contline = None
+            elif needcont and line[-2:] != "\\\n" and line[-3:] != "\\\r\n":
+                yield (
+                    ERRORTOKEN,
+                    contstr + line,
+                    strstart,
+                    (lnum, len(line)),
+                    contline,
+                )
+                contstr = ""
+                contline = None
+                continue
+            else:
+                contstr = contstr + line
+                contline = contline + line
+                continue
+
+        elif parenlev == 0 and not continued:  # new statement
+            if not line:
+                break
+            column = 0
+            while pos < max:  # measure leading whitespace
+                if line[pos] == " ":
+                    column = column + 1
+                elif line[pos] == "\t":
+                    column = (column // tabsize + 1) * tabsize
+                elif line[pos] == "\f":
+                    column = 0
+                else:
+                    break
+                pos = pos + 1
+            if pos == max:
+                break
+
+            if stashed:
+                yield stashed
+                stashed = None
+
+            if line[pos] in "\r\n":  # skip blank lines
+                yield (NL, line[pos:], (lnum, pos), (lnum, len(line)), line)
+                continue
+
+            if line[pos] == "#":  # skip comments
+                comment_token = line[pos:].rstrip("\r\n")
+                nl_pos = pos + len(comment_token)
+                yield (
+                    COMMENT,
+                    comment_token,
+                    (lnum, pos),
+                    (lnum, pos + len(comment_token)),
+                    line,
+                )
+                yield (NL, line[nl_pos:], (lnum, nl_pos), (lnum, len(line)), line)
+                continue
+
+            if column > indents[-1]:  # count indents
+                indents.append(column)
+                yield (INDENT, line[:pos], (lnum, 0), (lnum, pos), line)
+
+            while column < indents[-1]:  # count dedents
+                if column not in indents:
+                    raise IndentationError(
+                        "unindent does not match any outer indentation level",
+                        ("<tokenize>", lnum, pos, line),
+                    )
+                indents = indents[:-1]
+
+                if async_def and async_def_indent >= indents[-1]:
+                    async_def = False
+                    async_def_nl = False
+                    async_def_indent = 0
+
+                yield (DEDENT, "", (lnum, pos), (lnum, pos), line)
+
+            if async_def and async_def_nl and async_def_indent >= indents[-1]:
+                async_def = False
+                async_def_nl = False
+                async_def_indent = 0
+
+        else:  # continued statement
+            if not line:
+                raise TokenError("EOF in multi-line statement", (lnum, 0))
+            continued = 0
+
+        while pos < max:
+            pseudomatch = pseudoprog.match(line, pos)
+            if pseudomatch:  # scan for tokens
+                start, end = pseudomatch.span(1)
+                spos, epos, pos = (lnum, start), (lnum, end), end
+                token, initial = line[start:end], line[start]
+
+                if initial in numchars or (
+                    initial == "." and token != "."
+                ):  # ordinary number
+                    yield (NUMBER, token, spos, epos, line)
+                elif initial in "\r\n":
+                    newline = NEWLINE
+                    if parenlev > 0:
+                        newline = NL
+                    elif async_def:
+                        async_def_nl = True
+                    if stashed:
+                        yield stashed
+                        stashed = None
+                    yield (newline, token, spos, epos, line)
+
+                elif initial == "#":
+                    assert not token.endswith("\n")
+                    if stashed:
+                        yield stashed
+                        stashed = None
+                    yield (COMMENT, token, spos, epos, line)
+                elif token in triple_quoted:
+                    endprog = endprogs[token]
+                    endmatch = endprog.match(line, pos)
+                    if endmatch:  # all on one line
+                        pos = endmatch.end(0)
+                        token = line[start:pos]
+                        if stashed:
+                            yield stashed
+                            stashed = None
+                        yield (STRING, token, spos, (lnum, pos), line)
+                    else:
+                        strstart = (lnum, start)  # multiple lines
+                        contstr = line[start:]
+                        contline = line
+                        break
+                elif (
+                    initial in single_quoted
+                    or token[:2] in single_quoted
+                    or token[:3] in single_quoted
+                ):
+                    if token[-1] == "\n":  # continued string
+                        strstart = (lnum, start)
+                        endprog = (
+                            endprogs[initial]
+                            or endprogs[token[1]]
+                            or endprogs[token[2]]
+                        )
+                        contstr, needcont = line[start:], 1
+                        contline = line
+                        break
+                    else:  # ordinary string
+                        if stashed:
+                            yield stashed
+                            stashed = None
+                        yield (STRING, token, spos, epos, line)
+                elif initial.isidentifier():  # ordinary name
+                    if token in ("async", "await"):
+                        if async_keywords or async_def:
+                            yield (
+                                ASYNC if token == "async" else AWAIT,
+                                token,
+                                spos,
+                                epos,
+                                line,
+                            )
+                            continue
+
+                    tok = (NAME, token, spos, epos, line)
+                    if token == "async" and not stashed:
+                        stashed = tok
+                        continue
+
+                    if token in ("def", "for"):
+                        if stashed and stashed[0] == NAME and stashed[1] == "async":
+
+                            if token == "def":
+                                async_def = True
+                                async_def_indent = indents[-1]
+
+                            yield (
+                                ASYNC,
+                                stashed[1],
+                                stashed[2],
+                                stashed[3],
+                                stashed[4],
+                            )
+                            stashed = None
+
+                    if stashed:
+                        yield stashed
+                        stashed = None
+
+                    yield tok
+                elif initial == "\\":  # continued stmt
+                    # This yield is new; needed for better idempotency:
+                    if stashed:
+                        yield stashed
+                        stashed = None
+                    yield (NL, token, spos, (lnum, pos), line)
+                    continued = 1
+                else:
+                    if initial in "([{":
+                        parenlev = parenlev + 1
+                    elif initial in ")]}":
+                        parenlev = parenlev - 1
+                    if stashed:
+                        yield stashed
+                        stashed = None
+                    yield (OP, token, spos, epos, line)
+            else:
+                yield (ERRORTOKEN, line[pos], (lnum, pos), (lnum, pos + 1), line)
+                pos = pos + 1
+
+    if stashed:
+        yield stashed
+        stashed = None
+
+    for indent in indents[1:]:  # pop remaining indent levels
+        yield (DEDENT, "", (lnum, 0), (lnum, 0), "")
+    yield (ENDMARKER, "", (lnum, 0), (lnum, 0), "")
+
+
+if __name__ == "__main__":  # testing
+    import sys
+
+    if len(sys.argv) > 1:
+        tokenize(open(sys.argv[1]).readline)
+    else:
+        tokenize(sys.stdin.readline)
diff --git a/.vim/bundle/black/src/blib2to3/pygram.py b/.vim/bundle/black/src/blib2to3/pygram.py
new file mode 100644 (file)
index 0000000..b8362b8
--- /dev/null
@@ -0,0 +1,197 @@
+# Copyright 2006 Google, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""Export the Python grammar and symbols."""
+
+# Python imports
+import os
+
+from typing import Union
+
+# Local imports
+from .pgen2 import token
+from .pgen2 import driver
+
+from .pgen2.grammar import Grammar
+
+# Moved into initialize because mypyc can't handle __file__ (XXX bug)
+# # The grammar file
+# _GRAMMAR_FILE = os.path.join(os.path.dirname(__file__), "Grammar.txt")
+# _PATTERN_GRAMMAR_FILE = os.path.join(os.path.dirname(__file__),
+#                                      "PatternGrammar.txt")
+
+
+class Symbols(object):
+    def __init__(self, grammar: Grammar) -> None:
+        """Initializer.
+
+        Creates an attribute for each grammar symbol (nonterminal),
+        whose value is the symbol's type (an int >= 256).
+        """
+        for name, symbol in grammar.symbol2number.items():
+            setattr(self, name, symbol)
+
+
+class _python_symbols(Symbols):
+    and_expr: int
+    and_test: int
+    annassign: int
+    arglist: int
+    argument: int
+    arith_expr: int
+    assert_stmt: int
+    async_funcdef: int
+    async_stmt: int
+    atom: int
+    augassign: int
+    break_stmt: int
+    classdef: int
+    comp_for: int
+    comp_if: int
+    comp_iter: int
+    comp_op: int
+    comparison: int
+    compound_stmt: int
+    continue_stmt: int
+    decorated: int
+    decorator: int
+    decorators: int
+    del_stmt: int
+    dictsetmaker: int
+    dotted_as_name: int
+    dotted_as_names: int
+    dotted_name: int
+    encoding_decl: int
+    eval_input: int
+    except_clause: int
+    exec_stmt: int
+    expr: int
+    expr_stmt: int
+    exprlist: int
+    factor: int
+    file_input: int
+    flow_stmt: int
+    for_stmt: int
+    funcdef: int
+    global_stmt: int
+    if_stmt: int
+    import_as_name: int
+    import_as_names: int
+    import_from: int
+    import_name: int
+    import_stmt: int
+    lambdef: int
+    listmaker: int
+    namedexpr_test: int
+    not_test: int
+    old_comp_for: int
+    old_comp_if: int
+    old_comp_iter: int
+    old_lambdef: int
+    old_test: int
+    or_test: int
+    parameters: int
+    pass_stmt: int
+    power: int
+    print_stmt: int
+    raise_stmt: int
+    return_stmt: int
+    shift_expr: int
+    simple_stmt: int
+    single_input: int
+    sliceop: int
+    small_stmt: int
+    star_expr: int
+    stmt: int
+    subscript: int
+    subscriptlist: int
+    suite: int
+    term: int
+    test: int
+    testlist: int
+    testlist1: int
+    testlist_gexp: int
+    testlist_safe: int
+    testlist_star_expr: int
+    tfpdef: int
+    tfplist: int
+    tname: int
+    trailer: int
+    try_stmt: int
+    typedargslist: int
+    varargslist: int
+    vfpdef: int
+    vfplist: int
+    vname: int
+    while_stmt: int
+    with_item: int
+    with_stmt: int
+    with_var: int
+    xor_expr: int
+    yield_arg: int
+    yield_expr: int
+    yield_stmt: int
+
+
+class _pattern_symbols(Symbols):
+    Alternative: int
+    Alternatives: int
+    Details: int
+    Matcher: int
+    NegatedUnit: int
+    Repeater: int
+    Unit: int
+
+
+python_grammar: Grammar
+python_grammar_no_print_statement: Grammar
+python_grammar_no_print_statement_no_exec_statement: Grammar
+python_grammar_no_print_statement_no_exec_statement_async_keywords: Grammar
+python_grammar_no_exec_statement: Grammar
+pattern_grammar: Grammar
+
+python_symbols: _python_symbols
+pattern_symbols: _pattern_symbols
+
+
+def initialize(cache_dir: Union[str, "os.PathLike[str]", None] = None) -> None:
+    global python_grammar
+    global python_grammar_no_print_statement
+    global python_grammar_no_print_statement_no_exec_statement
+    global python_grammar_no_print_statement_no_exec_statement_async_keywords
+    global python_symbols
+    global pattern_grammar
+    global pattern_symbols
+
+    # The grammar file
+    _GRAMMAR_FILE = os.path.join(os.path.dirname(__file__), "Grammar.txt")
+    _PATTERN_GRAMMAR_FILE = os.path.join(
+        os.path.dirname(__file__), "PatternGrammar.txt"
+    )
+
+    # Python 2
+    python_grammar = driver.load_packaged_grammar("blib2to3", _GRAMMAR_FILE, cache_dir)
+
+    python_symbols = _python_symbols(python_grammar)
+
+    # Python 2 + from __future__ import print_function
+    python_grammar_no_print_statement = python_grammar.copy()
+    del python_grammar_no_print_statement.keywords["print"]
+
+    # Python 3.0-3.6
+    python_grammar_no_print_statement_no_exec_statement = python_grammar.copy()
+    del python_grammar_no_print_statement_no_exec_statement.keywords["print"]
+    del python_grammar_no_print_statement_no_exec_statement.keywords["exec"]
+
+    # Python 3.7+
+    python_grammar_no_print_statement_no_exec_statement_async_keywords = (
+        python_grammar_no_print_statement_no_exec_statement.copy()
+    )
+    python_grammar_no_print_statement_no_exec_statement_async_keywords.async_keywords = (
+        True
+    )
+
+    pattern_grammar = driver.load_packaged_grammar(
+        "blib2to3", _PATTERN_GRAMMAR_FILE, cache_dir
+    )
+    pattern_symbols = _pattern_symbols(pattern_grammar)
diff --git a/.vim/bundle/black/src/blib2to3/pytree.py b/.vim/bundle/black/src/blib2to3/pytree.py
new file mode 100644 (file)
index 0000000..7843467
--- /dev/null
@@ -0,0 +1,980 @@
+# Copyright 2006 Google, Inc. All Rights Reserved.
+# Licensed to PSF under a Contributor Agreement.
+
+"""
+Python parse tree definitions.
+
+This is a very concrete parse tree; we need to keep every token and
+even the comments and whitespace between tokens.
+
+There's also a pattern matching implementation here.
+"""
+
+# mypy: allow-untyped-defs
+
+from typing import (
+    Any,
+    Callable,
+    Dict,
+    Iterator,
+    List,
+    Optional,
+    Text,
+    Tuple,
+    TypeVar,
+    Union,
+    Set,
+    Iterable,
+)
+from blib2to3.pgen2.grammar import Grammar
+
+__author__ = "Guido van Rossum <guido@python.org>"
+
+import sys
+from io import StringIO
+
+HUGE: int = 0x7FFFFFFF  # maximum repeat count, default max
+
+_type_reprs: Dict[int, Union[Text, int]] = {}
+
+
+def type_repr(type_num: int) -> Union[Text, int]:
+    global _type_reprs
+    if not _type_reprs:
+        from .pygram import python_symbols
+
+        # printing tokens is possible but not as useful
+        # from .pgen2 import token // token.__dict__.items():
+        for name in dir(python_symbols):
+            val = getattr(python_symbols, name)
+            if type(val) == int:
+                _type_reprs[val] = name
+    return _type_reprs.setdefault(type_num, type_num)
+
+
+_P = TypeVar("_P")
+
+NL = Union["Node", "Leaf"]
+Context = Tuple[Text, Tuple[int, int]]
+RawNode = Tuple[int, Optional[Text], Optional[Context], Optional[List[NL]]]
+
+
+class Base(object):
+
+    """
+    Abstract base class for Node and Leaf.
+
+    This provides some default functionality and boilerplate using the
+    template pattern.
+
+    A node may be a subnode of at most one parent.
+    """
+
+    # Default values for instance variables
+    type: int  # int: token number (< 256) or symbol number (>= 256)
+    parent: Optional["Node"] = None  # Parent node pointer, or None
+    children: List[NL]  # List of subnodes
+    was_changed: bool = False
+    was_checked: bool = False
+
+    def __new__(cls, *args, **kwds):
+        """Constructor that prevents Base from being instantiated."""
+        assert cls is not Base, "Cannot instantiate Base"
+        return object.__new__(cls)
+
+    def __eq__(self, other: Any) -> bool:
+        """
+        Compare two nodes for equality.
+
+        This calls the method _eq().
+        """
+        if self.__class__ is not other.__class__:
+            return NotImplemented
+        return self._eq(other)
+
+    __hash__ = None  # type: Any  # For Py3 compatibility.
+
+    @property
+    def prefix(self) -> Text:
+        raise NotImplementedError
+
+    def _eq(self: _P, other: _P) -> bool:
+        """
+        Compare two nodes for equality.
+
+        This is called by __eq__ and __ne__.  It is only called if the two nodes
+        have the same type.  This must be implemented by the concrete subclass.
+        Nodes should be considered equal if they have the same structure,
+        ignoring the prefix string and other context information.
+        """
+        raise NotImplementedError
+
+    def clone(self: _P) -> _P:
+        """
+        Return a cloned (deep) copy of self.
+
+        This must be implemented by the concrete subclass.
+        """
+        raise NotImplementedError
+
+    def post_order(self) -> Iterator[NL]:
+        """
+        Return a post-order iterator for the tree.
+
+        This must be implemented by the concrete subclass.
+        """
+        raise NotImplementedError
+
+    def pre_order(self) -> Iterator[NL]:
+        """
+        Return a pre-order iterator for the tree.
+
+        This must be implemented by the concrete subclass.
+        """
+        raise NotImplementedError
+
+    def replace(self, new: Union[NL, List[NL]]) -> None:
+        """Replace this node with a new one in the parent."""
+        assert self.parent is not None, str(self)
+        assert new is not None
+        if not isinstance(new, list):
+            new = [new]
+        l_children = []
+        found = False
+        for ch in self.parent.children:
+            if ch is self:
+                assert not found, (self.parent.children, self, new)
+                if new is not None:
+                    l_children.extend(new)
+                found = True
+            else:
+                l_children.append(ch)
+        assert found, (self.children, self, new)
+        self.parent.children = l_children
+        self.parent.changed()
+        self.parent.invalidate_sibling_maps()
+        for x in new:
+            x.parent = self.parent
+        self.parent = None
+
+    def get_lineno(self) -> Optional[int]:
+        """Return the line number which generated the invocant node."""
+        node = self
+        while not isinstance(node, Leaf):
+            if not node.children:
+                return None
+            node = node.children[0]
+        return node.lineno
+
+    def changed(self) -> None:
+        if self.was_changed:
+            return
+        if self.parent:
+            self.parent.changed()
+        self.was_changed = True
+
+    def remove(self) -> Optional[int]:
+        """
+        Remove the node from the tree. Returns the position of the node in its
+        parent's children before it was removed.
+        """
+        if self.parent:
+            for i, node in enumerate(self.parent.children):
+                if node is self:
+                    del self.parent.children[i]
+                    self.parent.changed()
+                    self.parent.invalidate_sibling_maps()
+                    self.parent = None
+                    return i
+        return None
+
+    @property
+    def next_sibling(self) -> Optional[NL]:
+        """
+        The node immediately following the invocant in their parent's children
+        list. If the invocant does not have a next sibling, it is None
+        """
+        if self.parent is None:
+            return None
+
+        if self.parent.next_sibling_map is None:
+            self.parent.update_sibling_maps()
+        assert self.parent.next_sibling_map is not None
+        return self.parent.next_sibling_map[id(self)]
+
+    @property
+    def prev_sibling(self) -> Optional[NL]:
+        """
+        The node immediately preceding the invocant in their parent's children
+        list. If the invocant does not have a previous sibling, it is None.
+        """
+        if self.parent is None:
+            return None
+
+        if self.parent.prev_sibling_map is None:
+            self.parent.update_sibling_maps()
+        assert self.parent.prev_sibling_map is not None
+        return self.parent.prev_sibling_map[id(self)]
+
+    def leaves(self) -> Iterator["Leaf"]:
+        for child in self.children:
+            yield from child.leaves()
+
+    def depth(self) -> int:
+        if self.parent is None:
+            return 0
+        return 1 + self.parent.depth()
+
+    def get_suffix(self) -> Text:
+        """
+        Return the string immediately following the invocant node. This is
+        effectively equivalent to node.next_sibling.prefix
+        """
+        next_sib = self.next_sibling
+        if next_sib is None:
+            return ""
+        prefix = next_sib.prefix
+        return prefix
+
+
+class Node(Base):
+
+    """Concrete implementation for interior nodes."""
+
+    fixers_applied: Optional[List[Any]]
+    used_names: Optional[Set[Text]]
+
+    def __init__(
+        self,
+        type: int,
+        children: List[NL],
+        context: Optional[Any] = None,
+        prefix: Optional[Text] = None,
+        fixers_applied: Optional[List[Any]] = None,
+    ) -> None:
+        """
+        Initializer.
+
+        Takes a type constant (a symbol number >= 256), a sequence of
+        child nodes, and an optional context keyword argument.
+
+        As a side effect, the parent pointers of the children are updated.
+        """
+        assert type >= 256, type
+        self.type = type
+        self.children = list(children)
+        for ch in self.children:
+            assert ch.parent is None, repr(ch)
+            ch.parent = self
+        self.invalidate_sibling_maps()
+        if prefix is not None:
+            self.prefix = prefix
+        if fixers_applied:
+            self.fixers_applied = fixers_applied[:]
+        else:
+            self.fixers_applied = None
+
+    def __repr__(self) -> Text:
+        """Return a canonical string representation."""
+        assert self.type is not None
+        return "%s(%s, %r)" % (
+            self.__class__.__name__,
+            type_repr(self.type),
+            self.children,
+        )
+
+    def __str__(self) -> Text:
+        """
+        Return a pretty string representation.
+
+        This reproduces the input source exactly.
+        """
+        return "".join(map(str, self.children))
+
+    def _eq(self, other) -> bool:
+        """Compare two nodes for equality."""
+        return (self.type, self.children) == (other.type, other.children)
+
+    def clone(self) -> "Node":
+        assert self.type is not None
+        """Return a cloned (deep) copy of self."""
+        return Node(
+            self.type,
+            [ch.clone() for ch in self.children],
+            fixers_applied=self.fixers_applied,
+        )
+
+    def post_order(self) -> Iterator[NL]:
+        """Return a post-order iterator for the tree."""
+        for child in self.children:
+            yield from child.post_order()
+        yield self
+
+    def pre_order(self) -> Iterator[NL]:
+        """Return a pre-order iterator for the tree."""
+        yield self
+        for child in self.children:
+            yield from child.pre_order()
+
+    @property
+    def prefix(self) -> Text:
+        """
+        The whitespace and comments preceding this node in the input.
+        """
+        if not self.children:
+            return ""
+        return self.children[0].prefix
+
+    @prefix.setter
+    def prefix(self, prefix) -> None:
+        if self.children:
+            self.children[0].prefix = prefix
+
+    def set_child(self, i: int, child: NL) -> None:
+        """
+        Equivalent to 'node.children[i] = child'. This method also sets the
+        child's parent attribute appropriately.
+        """
+        child.parent = self
+        self.children[i].parent = None
+        self.children[i] = child
+        self.changed()
+        self.invalidate_sibling_maps()
+
+    def insert_child(self, i: int, child: NL) -> None:
+        """
+        Equivalent to 'node.children.insert(i, child)'. This method also sets
+        the child's parent attribute appropriately.
+        """
+        child.parent = self
+        self.children.insert(i, child)
+        self.changed()
+        self.invalidate_sibling_maps()
+
+    def append_child(self, child: NL) -> None:
+        """
+        Equivalent to 'node.children.append(child)'. This method also sets the
+        child's parent attribute appropriately.
+        """
+        child.parent = self
+        self.children.append(child)
+        self.changed()
+        self.invalidate_sibling_maps()
+
+    def invalidate_sibling_maps(self) -> None:
+        self.prev_sibling_map: Optional[Dict[int, Optional[NL]]] = None
+        self.next_sibling_map: Optional[Dict[int, Optional[NL]]] = None
+
+    def update_sibling_maps(self) -> None:
+        _prev: Dict[int, Optional[NL]] = {}
+        _next: Dict[int, Optional[NL]] = {}
+        self.prev_sibling_map = _prev
+        self.next_sibling_map = _next
+        previous: Optional[NL] = None
+        for current in self.children:
+            _prev[id(current)] = previous
+            _next[id(previous)] = current
+            previous = current
+        _next[id(current)] = None
+
+
+class Leaf(Base):
+
+    """Concrete implementation for leaf nodes."""
+
+    # Default values for instance variables
+    value: Text
+    fixers_applied: List[Any]
+    bracket_depth: int
+    opening_bracket: "Leaf"
+    used_names: Optional[Set[Text]]
+    _prefix = ""  # Whitespace and comments preceding this token in the input
+    lineno: int = 0  # Line where this token starts in the input
+    column: int = 0  # Column where this token starts in the input
+
+    def __init__(
+        self,
+        type: int,
+        value: Text,
+        context: Optional[Context] = None,
+        prefix: Optional[Text] = None,
+        fixers_applied: List[Any] = [],
+    ) -> None:
+        """
+        Initializer.
+
+        Takes a type constant (a token number < 256), a string value, and an
+        optional context keyword argument.
+        """
+
+        assert 0 <= type < 256, type
+        if context is not None:
+            self._prefix, (self.lineno, self.column) = context
+        self.type = type
+        self.value = value
+        if prefix is not None:
+            self._prefix = prefix
+        self.fixers_applied: Optional[List[Any]] = fixers_applied[:]
+        self.children = []
+
+    def __repr__(self) -> str:
+        """Return a canonical string representation."""
+        from .pgen2.token import tok_name
+
+        assert self.type is not None
+        return "%s(%s, %r)" % (
+            self.__class__.__name__,
+            tok_name.get(self.type, self.type),
+            self.value,
+        )
+
+    def __str__(self) -> Text:
+        """
+        Return a pretty string representation.
+
+        This reproduces the input source exactly.
+        """
+        return self.prefix + str(self.value)
+
+    def _eq(self, other) -> bool:
+        """Compare two nodes for equality."""
+        return (self.type, self.value) == (other.type, other.value)
+
+    def clone(self) -> "Leaf":
+        assert self.type is not None
+        """Return a cloned (deep) copy of self."""
+        return Leaf(
+            self.type,
+            self.value,
+            (self.prefix, (self.lineno, self.column)),
+            fixers_applied=self.fixers_applied,
+        )
+
+    def leaves(self) -> Iterator["Leaf"]:
+        yield self
+
+    def post_order(self) -> Iterator["Leaf"]:
+        """Return a post-order iterator for the tree."""
+        yield self
+
+    def pre_order(self) -> Iterator["Leaf"]:
+        """Return a pre-order iterator for the tree."""
+        yield self
+
+    @property
+    def prefix(self) -> Text:
+        """
+        The whitespace and comments preceding this token in the input.
+        """
+        return self._prefix
+
+    @prefix.setter
+    def prefix(self, prefix) -> None:
+        self.changed()
+        self._prefix = prefix
+
+
+def convert(gr: Grammar, raw_node: RawNode) -> NL:
+    """
+    Convert raw node information to a Node or Leaf instance.
+
+    This is passed to the parser driver which calls it whenever a reduction of a
+    grammar rule produces a new complete node, so that the tree is build
+    strictly bottom-up.
+    """
+    type, value, context, children = raw_node
+    if children or type in gr.number2symbol:
+        # If there's exactly one child, return that child instead of
+        # creating a new node.
+        assert children is not None
+        if len(children) == 1:
+            return children[0]
+        return Node(type, children, context=context)
+    else:
+        return Leaf(type, value or "", context=context)
+
+
+_Results = Dict[Text, NL]
+
+
+class BasePattern(object):
+
+    """
+    A pattern is a tree matching pattern.
+
+    It looks for a specific node type (token or symbol), and
+    optionally for a specific content.
+
+    This is an abstract base class.  There are three concrete
+    subclasses:
+
+    - LeafPattern matches a single leaf node;
+    - NodePattern matches a single node (usually non-leaf);
+    - WildcardPattern matches a sequence of nodes of variable length.
+    """
+
+    # Defaults for instance variables
+    type: Optional[int]
+    type = None  # Node type (token if < 256, symbol if >= 256)
+    content: Any = None  # Optional content matching pattern
+    name: Optional[Text] = None  # Optional name used to store match in results dict
+
+    def __new__(cls, *args, **kwds):
+        """Constructor that prevents BasePattern from being instantiated."""
+        assert cls is not BasePattern, "Cannot instantiate BasePattern"
+        return object.__new__(cls)
+
+    def __repr__(self) -> Text:
+        assert self.type is not None
+        args = [type_repr(self.type), self.content, self.name]
+        while args and args[-1] is None:
+            del args[-1]
+        return "%s(%s)" % (self.__class__.__name__, ", ".join(map(repr, args)))
+
+    def _submatch(self, node, results=None) -> bool:
+        raise NotImplementedError
+
+    def optimize(self) -> "BasePattern":
+        """
+        A subclass can define this as a hook for optimizations.
+
+        Returns either self or another node with the same effect.
+        """
+        return self
+
+    def match(self, node: NL, results: Optional[_Results] = None) -> bool:
+        """
+        Does this pattern exactly match a node?
+
+        Returns True if it matches, False if not.
+
+        If results is not None, it must be a dict which will be
+        updated with the nodes matching named subpatterns.
+
+        Default implementation for non-wildcard patterns.
+        """
+        if self.type is not None and node.type != self.type:
+            return False
+        if self.content is not None:
+            r: Optional[_Results] = None
+            if results is not None:
+                r = {}
+            if not self._submatch(node, r):
+                return False
+            if r:
+                assert results is not None
+                results.update(r)
+        if results is not None and self.name:
+            results[self.name] = node
+        return True
+
+    def match_seq(self, nodes: List[NL], results: Optional[_Results] = None) -> bool:
+        """
+        Does this pattern exactly match a sequence of nodes?
+
+        Default implementation for non-wildcard patterns.
+        """
+        if len(nodes) != 1:
+            return False
+        return self.match(nodes[0], results)
+
+    def generate_matches(self, nodes: List[NL]) -> Iterator[Tuple[int, _Results]]:
+        """
+        Generator yielding all matches for this pattern.
+
+        Default implementation for non-wildcard patterns.
+        """
+        r: _Results = {}
+        if nodes and self.match(nodes[0], r):
+            yield 1, r
+
+
+class LeafPattern(BasePattern):
+    def __init__(
+        self,
+        type: Optional[int] = None,
+        content: Optional[Text] = None,
+        name: Optional[Text] = None,
+    ) -> None:
+        """
+        Initializer.  Takes optional type, content, and name.
+
+        The type, if given must be a token type (< 256).  If not given,
+        this matches any *leaf* node; the content may still be required.
+
+        The content, if given, must be a string.
+
+        If a name is given, the matching node is stored in the results
+        dict under that key.
+        """
+        if type is not None:
+            assert 0 <= type < 256, type
+        if content is not None:
+            assert isinstance(content, str), repr(content)
+        self.type = type
+        self.content = content
+        self.name = name
+
+    def match(self, node: NL, results=None):
+        """Override match() to insist on a leaf node."""
+        if not isinstance(node, Leaf):
+            return False
+        return BasePattern.match(self, node, results)
+
+    def _submatch(self, node, results=None):
+        """
+        Match the pattern's content to the node's children.
+
+        This assumes the node type matches and self.content is not None.
+
+        Returns True if it matches, False if not.
+
+        If results is not None, it must be a dict which will be
+        updated with the nodes matching named subpatterns.
+
+        When returning False, the results dict may still be updated.
+        """
+        return self.content == node.value
+
+
+class NodePattern(BasePattern):
+
+    wildcards: bool = False
+
+    def __init__(
+        self,
+        type: Optional[int] = None,
+        content: Optional[Iterable[Text]] = None,
+        name: Optional[Text] = None,
+    ) -> None:
+        """
+        Initializer.  Takes optional type, content, and name.
+
+        The type, if given, must be a symbol type (>= 256).  If the
+        type is None this matches *any* single node (leaf or not),
+        except if content is not None, in which it only matches
+        non-leaf nodes that also match the content pattern.
+
+        The content, if not None, must be a sequence of Patterns that
+        must match the node's children exactly.  If the content is
+        given, the type must not be None.
+
+        If a name is given, the matching node is stored in the results
+        dict under that key.
+        """
+        if type is not None:
+            assert type >= 256, type
+        if content is not None:
+            assert not isinstance(content, str), repr(content)
+            newcontent = list(content)
+            for i, item in enumerate(newcontent):
+                assert isinstance(item, BasePattern), (i, item)
+                if isinstance(item, WildcardPattern):
+                    self.wildcards = True
+        self.type = type
+        self.content = newcontent
+        self.name = name
+
+    def _submatch(self, node, results=None) -> bool:
+        """
+        Match the pattern's content to the node's children.
+
+        This assumes the node type matches and self.content is not None.
+
+        Returns True if it matches, False if not.
+
+        If results is not None, it must be a dict which will be
+        updated with the nodes matching named subpatterns.
+
+        When returning False, the results dict may still be updated.
+        """
+        if self.wildcards:
+            for c, r in generate_matches(self.content, node.children):
+                if c == len(node.children):
+                    if results is not None:
+                        results.update(r)
+                    return True
+            return False
+        if len(self.content) != len(node.children):
+            return False
+        for subpattern, child in zip(self.content, node.children):
+            if not subpattern.match(child, results):
+                return False
+        return True
+
+
+class WildcardPattern(BasePattern):
+
+    """
+    A wildcard pattern can match zero or more nodes.
+
+    This has all the flexibility needed to implement patterns like:
+
+    .*      .+      .?      .{m,n}
+    (a b c | d e | f)
+    (...)*  (...)+  (...)?  (...){m,n}
+
+    except it always uses non-greedy matching.
+    """
+
+    min: int
+    max: int
+
+    def __init__(
+        self,
+        content: Optional[Text] = None,
+        min: int = 0,
+        max: int = HUGE,
+        name: Optional[Text] = None,
+    ) -> None:
+        """
+        Initializer.
+
+        Args:
+            content: optional sequence of subsequences of patterns;
+                     if absent, matches one node;
+                     if present, each subsequence is an alternative [*]
+            min: optional minimum number of times to match, default 0
+            max: optional maximum number of times to match, default HUGE
+            name: optional name assigned to this match
+
+        [*] Thus, if content is [[a, b, c], [d, e], [f, g, h]] this is
+            equivalent to (a b c | d e | f g h); if content is None,
+            this is equivalent to '.' in regular expression terms.
+            The min and max parameters work as follows:
+                min=0, max=maxint: .*
+                min=1, max=maxint: .+
+                min=0, max=1: .?
+                min=1, max=1: .
+            If content is not None, replace the dot with the parenthesized
+            list of alternatives, e.g. (a b c | d e | f g h)*
+        """
+        assert 0 <= min <= max <= HUGE, (min, max)
+        if content is not None:
+            f = lambda s: tuple(s)
+            wrapped_content = tuple(map(f, content))  # Protect against alterations
+            # Check sanity of alternatives
+            assert len(wrapped_content), repr(
+                wrapped_content
+            )  # Can't have zero alternatives
+            for alt in wrapped_content:
+                assert len(alt), repr(alt)  # Can have empty alternatives
+        self.content = wrapped_content
+        self.min = min
+        self.max = max
+        self.name = name
+
+    def optimize(self) -> Any:
+        """Optimize certain stacked wildcard patterns."""
+        subpattern = None
+        if (
+            self.content is not None
+            and len(self.content) == 1
+            and len(self.content[0]) == 1
+        ):
+            subpattern = self.content[0][0]
+        if self.min == 1 and self.max == 1:
+            if self.content is None:
+                return NodePattern(name=self.name)
+            if subpattern is not None and self.name == subpattern.name:
+                return subpattern.optimize()
+        if (
+            self.min <= 1
+            and isinstance(subpattern, WildcardPattern)
+            and subpattern.min <= 1
+            and self.name == subpattern.name
+        ):
+            return WildcardPattern(
+                subpattern.content,
+                self.min * subpattern.min,
+                self.max * subpattern.max,
+                subpattern.name,
+            )
+        return self
+
+    def match(self, node, results=None) -> bool:
+        """Does this pattern exactly match a node?"""
+        return self.match_seq([node], results)
+
+    def match_seq(self, nodes, results=None) -> bool:
+        """Does this pattern exactly match a sequence of nodes?"""
+        for c, r in self.generate_matches(nodes):
+            if c == len(nodes):
+                if results is not None:
+                    results.update(r)
+                    if self.name:
+                        results[self.name] = list(nodes)
+                return True
+        return False
+
+    def generate_matches(self, nodes) -> Iterator[Tuple[int, _Results]]:
+        """
+        Generator yielding matches for a sequence of nodes.
+
+        Args:
+            nodes: sequence of nodes
+
+        Yields:
+            (count, results) tuples where:
+            count: the match comprises nodes[:count];
+            results: dict containing named submatches.
+        """
+        if self.content is None:
+            # Shortcut for special case (see __init__.__doc__)
+            for count in range(self.min, 1 + min(len(nodes), self.max)):
+                r = {}
+                if self.name:
+                    r[self.name] = nodes[:count]
+                yield count, r
+        elif self.name == "bare_name":
+            yield self._bare_name_matches(nodes)
+        else:
+            # The reason for this is that hitting the recursion limit usually
+            # results in some ugly messages about how RuntimeErrors are being
+            # ignored. We only have to do this on CPython, though, because other
+            # implementations don't have this nasty bug in the first place.
+            if hasattr(sys, "getrefcount"):
+                save_stderr = sys.stderr
+                sys.stderr = StringIO()
+            try:
+                for count, r in self._recursive_matches(nodes, 0):
+                    if self.name:
+                        r[self.name] = nodes[:count]
+                    yield count, r
+            except RuntimeError:
+                # We fall back to the iterative pattern matching scheme if the recursive
+                # scheme hits the recursion limit.
+                for count, r in self._iterative_matches(nodes):
+                    if self.name:
+                        r[self.name] = nodes[:count]
+                    yield count, r
+            finally:
+                if hasattr(sys, "getrefcount"):
+                    sys.stderr = save_stderr
+
+    def _iterative_matches(self, nodes) -> Iterator[Tuple[int, _Results]]:
+        """Helper to iteratively yield the matches."""
+        nodelen = len(nodes)
+        if 0 >= self.min:
+            yield 0, {}
+
+        results = []
+        # generate matches that use just one alt from self.content
+        for alt in self.content:
+            for c, r in generate_matches(alt, nodes):
+                yield c, r
+                results.append((c, r))
+
+        # for each match, iterate down the nodes
+        while results:
+            new_results = []
+            for c0, r0 in results:
+                # stop if the entire set of nodes has been matched
+                if c0 < nodelen and c0 <= self.max:
+                    for alt in self.content:
+                        for c1, r1 in generate_matches(alt, nodes[c0:]):
+                            if c1 > 0:
+                                r = {}
+                                r.update(r0)
+                                r.update(r1)
+                                yield c0 + c1, r
+                                new_results.append((c0 + c1, r))
+            results = new_results
+
+    def _bare_name_matches(self, nodes) -> Tuple[int, _Results]:
+        """Special optimized matcher for bare_name."""
+        count = 0
+        r = {}  # type: _Results
+        done = False
+        max = len(nodes)
+        while not done and count < max:
+            done = True
+            for leaf in self.content:
+                if leaf[0].match(nodes[count], r):
+                    count += 1
+                    done = False
+                    break
+        assert self.name is not None
+        r[self.name] = nodes[:count]
+        return count, r
+
+    def _recursive_matches(self, nodes, count) -> Iterator[Tuple[int, _Results]]:
+        """Helper to recursively yield the matches."""
+        assert self.content is not None
+        if count >= self.min:
+            yield 0, {}
+        if count < self.max:
+            for alt in self.content:
+                for c0, r0 in generate_matches(alt, nodes):
+                    for c1, r1 in self._recursive_matches(nodes[c0:], count + 1):
+                        r = {}
+                        r.update(r0)
+                        r.update(r1)
+                        yield c0 + c1, r
+
+
+class NegatedPattern(BasePattern):
+    def __init__(self, content: Optional[Any] = None) -> None:
+        """
+        Initializer.
+
+        The argument is either a pattern or None.  If it is None, this
+        only matches an empty sequence (effectively '$' in regex
+        lingo).  If it is not None, this matches whenever the argument
+        pattern doesn't have any matches.
+        """
+        if content is not None:
+            assert isinstance(content, BasePattern), repr(content)
+        self.content = content
+
+    def match(self, node, results=None) -> bool:
+        # We never match a node in its entirety
+        return False
+
+    def match_seq(self, nodes, results=None) -> bool:
+        # We only match an empty sequence of nodes in its entirety
+        return len(nodes) == 0
+
+    def generate_matches(self, nodes) -> Iterator[Tuple[int, _Results]]:
+        if self.content is None:
+            # Return a match if there is an empty sequence
+            if len(nodes) == 0:
+                yield 0, {}
+        else:
+            # Return a match if the argument pattern has no matches
+            for c, r in self.content.generate_matches(nodes):
+                return
+            yield 0, {}
+
+
+def generate_matches(
+    patterns: List[BasePattern], nodes: List[NL]
+) -> Iterator[Tuple[int, _Results]]:
+    """
+    Generator yielding matches for a sequence of patterns and nodes.
+
+    Args:
+        patterns: a sequence of patterns
+        nodes: a sequence of nodes
+
+    Yields:
+        (count, results) tuples where:
+        count: the entire sequence of patterns matches nodes[:count];
+        results: dict containing named submatches.
+    """
+    if not patterns:
+        yield 0, {}
+    else:
+        p, rest = patterns[0], patterns[1:]
+        for c0, r0 in p.generate_matches(nodes):
+            if not rest:
+                yield c0, r0
+            else:
+                for c1, r1 in generate_matches(rest, nodes[c0:]):
+                    r = {}
+                    r.update(r0)
+                    r.update(r1)
+                    yield c0 + c1, r
+
+
+_Convert = Callable[[Grammar, RawNode], Any]
diff --git a/.vim/bundle/black/test_requirements.txt b/.vim/bundle/black/test_requirements.txt
new file mode 100644 (file)
index 0000000..5bc494d
--- /dev/null
@@ -0,0 +1,6 @@
+coverage >= 5.3
+pre-commit
+pytest >= 6.1.1
+pytest-xdist >= 2.2.1
+pytest-cov >= 2.11.1
+tox
diff --git a/.vim/bundle/black/tests/__init__.py b/.vim/bundle/black/tests/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/conftest.py b/.vim/bundle/black/tests/conftest.py
new file mode 100644 (file)
index 0000000..6751726
--- /dev/null
@@ -0,0 +1 @@
+pytest_plugins = ["tests.optional"]
diff --git a/.vim/bundle/black/tests/data/async_as_identifier.py b/.vim/bundle/black/tests/data/async_as_identifier.py
new file mode 100644 (file)
index 0000000..c36a5e5
--- /dev/null
@@ -0,0 +1,49 @@
+def async():
+    pass
+
+
+def await():
+    pass
+
+
+await = lambda: None
+async = lambda: None
+async()
+await()
+
+
+def sync_fn():
+    await = lambda: None
+    async = lambda: None
+    async()
+    await()
+
+
+async def async_fn():
+    await async_fn()
+
+
+# output
+def async():
+    pass
+
+
+def await():
+    pass
+
+
+await = lambda: None
+async = lambda: None
+async()
+await()
+
+
+def sync_fn():
+    await = lambda: None
+    async = lambda: None
+    async()
+    await()
+
+
+async def async_fn():
+    await async_fn()
diff --git a/.vim/bundle/black/tests/data/beginning_backslash.py b/.vim/bundle/black/tests/data/beginning_backslash.py
new file mode 100644 (file)
index 0000000..66c347d
--- /dev/null
@@ -0,0 +1,12 @@
+\
+
+
+
+
+
+print("hello, world")
+
+# output
+
+
+print("hello, world")
diff --git a/.vim/bundle/black/tests/data/blackd_diff.diff b/.vim/bundle/black/tests/data/blackd_diff.diff
new file mode 100644 (file)
index 0000000..6226858
--- /dev/null
@@ -0,0 +1,13 @@
+--- [Deterministic header]
++++ [Deterministic header]
+@@ -1,6 +1,5 @@
+-def abc ():
+-    return ["hello", "world",
+-            "!"]
++def abc():
++    return ["hello", "world", "!"]
+-print(   "Incorrect formatting"    
+-)
++
++print("Incorrect formatting")
diff --git a/.vim/bundle/black/tests/data/blackd_diff.py b/.vim/bundle/black/tests/data/blackd_diff.py
new file mode 100644 (file)
index 0000000..c527832
--- /dev/null
@@ -0,0 +1,6 @@
+def abc ():
+    return ["hello", "world",
+            "!"]
+
+print(   "Incorrect formatting"    
+)
diff --git a/.vim/bundle/black/tests/data/bracketmatch.py b/.vim/bundle/black/tests/data/bracketmatch.py
new file mode 100644 (file)
index 0000000..0aaa2d8
--- /dev/null
@@ -0,0 +1,15 @@
+for ((x in {}) or {})['a'] in x:
+    pass
+pem_spam = lambda l, spam = {
+    "x": 3
+}: not spam.get(l.strip())
+lambda x=lambda y={1: 3}: y['x':lambda y: {1: 2}]: x
+
+
+# output
+
+
+for ((x in {}) or {})["a"] in x:
+    pass
+pem_spam = lambda l, spam={"x": 3}: not spam.get(l.strip())
+lambda x=lambda y={1: 3}: y["x" : lambda y: {1: 2}]: x
diff --git a/.vim/bundle/black/tests/data/cantfit.py b/.vim/bundle/black/tests/data/cantfit.py
new file mode 100644 (file)
index 0000000..0849374
--- /dev/null
@@ -0,0 +1,107 @@
+# long variable name
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = 0
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = 1  # with a comment
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = [
+    1, 2, 3
+]
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = function()
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = function(
+    arg1, arg2, arg3
+)
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = function(
+    [1, 2, 3], arg1, [1, 2, 3], arg2, [1, 2, 3], arg3
+)
+# long function name
+normal_name = but_the_function_name_is_now_ridiculously_long_and_it_is_still_super_annoying()
+normal_name = but_the_function_name_is_now_ridiculously_long_and_it_is_still_super_annoying(
+    arg1, arg2, arg3
+)
+normal_name = but_the_function_name_is_now_ridiculously_long_and_it_is_still_super_annoying(
+    [1, 2, 3], arg1, [1, 2, 3], arg2, [1, 2, 3], arg3
+)
+# long arguments
+normal_name = normal_function_name(
+    "but with super long string arguments that on their own exceed the line limit so there's no way it can ever fit",
+    "eggs with spam and eggs and spam with eggs with spam and eggs and spam with eggs with spam and eggs and spam with eggs",
+    this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it=0,
+)
+string_variable_name = (
+    "a string that is waaaaaaaayyyyyyyy too long, even in parens, there's nothing you can do"  # noqa
+)
+for key in """
+    hostname
+    port
+    username
+""".split():
+    if key in self.connect_kwargs:
+        raise ValueError(err.format(key))
+concatenated_strings = "some strings that are " "concatenated implicitly, so if you put them on separate " "lines it will fit"
+del concatenated_strings, string_variable_name, normal_function_name, normal_name, need_more_to_make_the_line_long_enough
+
+
+# output
+
+
+# long variable name
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = (
+    0
+)
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = (
+    1  # with a comment
+)
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = [
+    1,
+    2,
+    3,
+]
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = (
+    function()
+)
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = function(
+    arg1, arg2, arg3
+)
+this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it = function(
+    [1, 2, 3], arg1, [1, 2, 3], arg2, [1, 2, 3], arg3
+)
+# long function name
+normal_name = (
+    but_the_function_name_is_now_ridiculously_long_and_it_is_still_super_annoying()
+)
+normal_name = (
+    but_the_function_name_is_now_ridiculously_long_and_it_is_still_super_annoying(
+        arg1, arg2, arg3
+    )
+)
+normal_name = (
+    but_the_function_name_is_now_ridiculously_long_and_it_is_still_super_annoying(
+        [1, 2, 3], arg1, [1, 2, 3], arg2, [1, 2, 3], arg3
+    )
+)
+# long arguments
+normal_name = normal_function_name(
+    "but with super long string arguments that on their own exceed the line limit so"
+    " there's no way it can ever fit",
+    "eggs with spam and eggs and spam with eggs with spam and eggs and spam with eggs"
+    " with spam and eggs and spam with eggs",
+    this_is_a_ridiculously_long_name_and_nobody_in_their_right_mind_would_use_one_like_it=0,
+)
+string_variable_name = "a string that is waaaaaaaayyyyyyyy too long, even in parens, there's nothing you can do"  # noqa
+for key in """
+    hostname
+    port
+    username
+""".split():
+    if key in self.connect_kwargs:
+        raise ValueError(err.format(key))
+concatenated_strings = (
+    "some strings that are "
+    "concatenated implicitly, so if you put them on separate "
+    "lines it will fit"
+)
+del (
+    concatenated_strings,
+    string_variable_name,
+    normal_function_name,
+    normal_name,
+    need_more_to_make_the_line_long_enough,
+)
diff --git a/.vim/bundle/black/tests/data/class_blank_parentheses.py b/.vim/bundle/black/tests/data/class_blank_parentheses.py
new file mode 100644 (file)
index 0000000..1a5721a
--- /dev/null
@@ -0,0 +1,58 @@
+class SimpleClassWithBlankParentheses():
+    pass
+class ClassWithSpaceParentheses ( ):
+    first_test_data = 90
+    second_test_data = 100
+    def test_func(self):
+        return None
+class ClassWithEmptyFunc(object):
+
+    def func_with_blank_parentheses():
+        return 5
+
+
+def public_func_with_blank_parentheses():
+    return None
+def class_under_the_func_with_blank_parentheses():
+    class InsideFunc():
+        pass
+class NormalClass (
+):
+    def func_for_testing(self, first, second):
+        sum = first + second
+        return sum
+
+
+# output
+
+
+class SimpleClassWithBlankParentheses:
+    pass
+
+
+class ClassWithSpaceParentheses:
+    first_test_data = 90
+    second_test_data = 100
+
+    def test_func(self):
+        return None
+
+
+class ClassWithEmptyFunc(object):
+    def func_with_blank_parentheses():
+        return 5
+
+
+def public_func_with_blank_parentheses():
+    return None
+
+
+def class_under_the_func_with_blank_parentheses():
+    class InsideFunc:
+        pass
+
+
+class NormalClass:
+    def func_for_testing(self, first, second):
+        sum = first + second
+        return sum
diff --git a/.vim/bundle/black/tests/data/class_methods_new_line.py b/.vim/bundle/black/tests/data/class_methods_new_line.py
new file mode 100644 (file)
index 0000000..9a96ffe
--- /dev/null
@@ -0,0 +1,270 @@
+class ClassSimplest:
+    pass
+class ClassWithSingleField:
+    a = 1
+class ClassWithJustTheDocstring:
+    """Just a docstring."""
+class ClassWithInit:
+    def __init__(self):
+        pass
+class ClassWithTheDocstringAndInit:
+    """Just a docstring."""
+    def __init__(self):
+        pass
+class ClassWithInitAndVars:
+    cls_var = 100
+    def __init__(self):
+        pass
+class ClassWithInitAndVarsAndDocstring:
+    """Test class"""
+    cls_var = 100
+    def __init__(self):
+        pass
+class ClassWithDecoInit:
+    @deco
+    def __init__(self):
+        pass
+class ClassWithDecoInitAndVars:
+    cls_var = 100
+    @deco
+    def __init__(self):
+        pass
+class ClassWithDecoInitAndVarsAndDocstring:
+    """Test class"""
+    cls_var = 100
+    @deco
+    def __init__(self):
+        pass
+class ClassSimplestWithInner:
+    class Inner:
+        pass
+class ClassSimplestWithInnerWithDocstring:
+    class Inner:
+        """Just a docstring."""
+        def __init__(self):
+            pass
+class ClassWithSingleFieldWithInner:
+    a = 1
+    class Inner:
+        pass
+class ClassWithJustTheDocstringWithInner:
+    """Just a docstring."""
+    class Inner:
+        pass
+class ClassWithInitWithInner:
+    class Inner:
+        pass
+    def __init__(self):
+        pass
+class ClassWithInitAndVarsWithInner:
+    cls_var = 100
+    class Inner:
+        pass
+    def __init__(self):
+        pass
+class ClassWithInitAndVarsAndDocstringWithInner:
+    """Test class"""
+    cls_var = 100
+    class Inner:
+        pass
+    def __init__(self):
+        pass
+class ClassWithDecoInitWithInner:
+    class Inner:
+        pass
+    @deco
+    def __init__(self):
+        pass
+class ClassWithDecoInitAndVarsWithInner:
+    cls_var = 100
+    class Inner:
+        pass
+    @deco
+    def __init__(self):
+        pass
+class ClassWithDecoInitAndVarsAndDocstringWithInner:
+    """Test class"""
+    cls_var = 100
+    class Inner:
+        pass
+    @deco
+    def __init__(self):
+        pass
+class ClassWithDecoInitAndVarsAndDocstringWithInner2:
+    """Test class"""
+    class Inner:
+        pass
+    cls_var = 100
+    @deco
+    def __init__(self):
+        pass
+
+
+# output
+
+
+class ClassSimplest:
+    pass
+
+
+class ClassWithSingleField:
+    a = 1
+
+
+class ClassWithJustTheDocstring:
+    """Just a docstring."""
+
+
+class ClassWithInit:
+    def __init__(self):
+        pass
+
+
+class ClassWithTheDocstringAndInit:
+    """Just a docstring."""
+
+    def __init__(self):
+        pass
+
+
+class ClassWithInitAndVars:
+    cls_var = 100
+
+    def __init__(self):
+        pass
+
+
+class ClassWithInitAndVarsAndDocstring:
+    """Test class"""
+
+    cls_var = 100
+
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInit:
+    @deco
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInitAndVars:
+    cls_var = 100
+
+    @deco
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInitAndVarsAndDocstring:
+    """Test class"""
+
+    cls_var = 100
+
+    @deco
+    def __init__(self):
+        pass
+
+
+class ClassSimplestWithInner:
+    class Inner:
+        pass
+
+
+class ClassSimplestWithInnerWithDocstring:
+    class Inner:
+        """Just a docstring."""
+
+        def __init__(self):
+            pass
+
+
+class ClassWithSingleFieldWithInner:
+    a = 1
+
+    class Inner:
+        pass
+
+
+class ClassWithJustTheDocstringWithInner:
+    """Just a docstring."""
+
+    class Inner:
+        pass
+
+
+class ClassWithInitWithInner:
+    class Inner:
+        pass
+
+    def __init__(self):
+        pass
+
+
+class ClassWithInitAndVarsWithInner:
+    cls_var = 100
+
+    class Inner:
+        pass
+
+    def __init__(self):
+        pass
+
+
+class ClassWithInitAndVarsAndDocstringWithInner:
+    """Test class"""
+
+    cls_var = 100
+
+    class Inner:
+        pass
+
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInitWithInner:
+    class Inner:
+        pass
+
+    @deco
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInitAndVarsWithInner:
+    cls_var = 100
+
+    class Inner:
+        pass
+
+    @deco
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInitAndVarsAndDocstringWithInner:
+    """Test class"""
+
+    cls_var = 100
+
+    class Inner:
+        pass
+
+    @deco
+    def __init__(self):
+        pass
+
+
+class ClassWithDecoInitAndVarsAndDocstringWithInner2:
+    """Test class"""
+
+    class Inner:
+        pass
+
+    cls_var = 100
+
+    @deco
+    def __init__(self):
+        pass
diff --git a/.vim/bundle/black/tests/data/collections.py b/.vim/bundle/black/tests/data/collections.py
new file mode 100644 (file)
index 0000000..6843166
--- /dev/null
@@ -0,0 +1,174 @@
+import core, time, a
+
+from . import A, B, C
+
+# keeps existing trailing comma
+from foo import (
+    bar,
+)
+
+# also keeps existing structure
+from foo import (
+    baz,
+    qux,
+)
+
+# `as` works as well
+from foo import (
+    xyzzy as magic,
+)
+
+a = {1,2,3,}
+b = {
+1,2,
+     3}
+c = {
+    1,
+    2,
+    3,
+}
+x = 1,
+y = narf(),
+nested = {(1,2,3),(4,5,6),}
+nested_no_trailing_comma = {(1,2,3),(4,5,6)}
+nested_long_lines = ["aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", "cccccccccccccccccccccccccccccccccccccccc", (1, 2, 3), "dddddddddddddddddddddddddddddddddddddddd"]
+{"oneple": (1,),}
+{"oneple": (1,)}
+['ls', 'lsoneple/%s' % (foo,)]
+x = {"oneple": (1,)}
+y = {"oneple": (1,),}
+assert False, ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa wraps %s" % bar)
+
+# looping over a 1-tuple should also not get wrapped
+for x in (1,):
+    pass
+for (x,) in (1,), (2,), (3,):
+    pass
+
+[1, 2, 3,]
+
+division_result_tuple = (6/2,)
+print("foo %r", (foo.bar,))
+
+if True:
+    IGNORED_TYPES_FOR_ATTRIBUTE_CHECKING = (
+        Config.IGNORED_TYPES_FOR_ATTRIBUTE_CHECKING
+        | {pylons.controllers.WSGIController}
+    )
+
+if True:
+    ec2client.get_waiter('instance_stopped').wait(
+        InstanceIds=[instance.id],
+        WaiterConfig={
+            'Delay': 5,
+        })
+    ec2client.get_waiter("instance_stopped").wait(
+        InstanceIds=[instance.id],
+        WaiterConfig={"Delay": 5,},
+    )
+    ec2client.get_waiter("instance_stopped").wait(
+        InstanceIds=[instance.id], WaiterConfig={"Delay": 5,},
+    )
+
+# output
+
+
+import core, time, a
+
+from . import A, B, C
+
+# keeps existing trailing comma
+from foo import (
+    bar,
+)
+
+# also keeps existing structure
+from foo import (
+    baz,
+    qux,
+)
+
+# `as` works as well
+from foo import (
+    xyzzy as magic,
+)
+
+a = {
+    1,
+    2,
+    3,
+}
+b = {1, 2, 3}
+c = {
+    1,
+    2,
+    3,
+}
+x = (1,)
+y = (narf(),)
+nested = {
+    (1, 2, 3),
+    (4, 5, 6),
+}
+nested_no_trailing_comma = {(1, 2, 3), (4, 5, 6)}
+nested_long_lines = [
+    "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+    "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+    "cccccccccccccccccccccccccccccccccccccccc",
+    (1, 2, 3),
+    "dddddddddddddddddddddddddddddddddddddddd",
+]
+{
+    "oneple": (1,),
+}
+{"oneple": (1,)}
+["ls", "lsoneple/%s" % (foo,)]
+x = {"oneple": (1,)}
+y = {
+    "oneple": (1,),
+}
+assert False, (
+    "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa wraps %s"
+    % bar
+)
+
+# looping over a 1-tuple should also not get wrapped
+for x in (1,):
+    pass
+for (x,) in (1,), (2,), (3,):
+    pass
+
+[
+    1,
+    2,
+    3,
+]
+
+division_result_tuple = (6 / 2,)
+print("foo %r", (foo.bar,))
+
+if True:
+    IGNORED_TYPES_FOR_ATTRIBUTE_CHECKING = (
+        Config.IGNORED_TYPES_FOR_ATTRIBUTE_CHECKING
+        | {pylons.controllers.WSGIController}
+    )
+
+if True:
+    ec2client.get_waiter("instance_stopped").wait(
+        InstanceIds=[instance.id],
+        WaiterConfig={
+            "Delay": 5,
+        },
+    )
+    ec2client.get_waiter("instance_stopped").wait(
+        InstanceIds=[instance.id],
+        WaiterConfig={
+            "Delay": 5,
+        },
+    )
+    ec2client.get_waiter("instance_stopped").wait(
+        InstanceIds=[instance.id],
+        WaiterConfig={
+            "Delay": 5,
+        },
+    )
diff --git a/.vim/bundle/black/tests/data/comment_after_escaped_newline.py b/.vim/bundle/black/tests/data/comment_after_escaped_newline.py
new file mode 100644 (file)
index 0000000..133f489
--- /dev/null
@@ -0,0 +1,18 @@
+def bob(): \
+         # pylint: disable=W9016
+    pass
+
+
+def bobtwo(): \
+    \
+  # some comment here
+    pass
+
+# output
+
+def bob():  # pylint: disable=W9016
+    pass
+
+
+def bobtwo():  # some comment here
+    pass
diff --git a/.vim/bundle/black/tests/data/comments.py b/.vim/bundle/black/tests/data/comments.py
new file mode 100644 (file)
index 0000000..c34daaf
--- /dev/null
@@ -0,0 +1,96 @@
+#!/usr/bin/env python3
+# fmt: on
+# Some license here.
+#
+# Has many lines. Many, many lines.
+# Many, many, many lines.
+"""Module docstring.
+
+Possibly also many, many lines.
+"""
+
+import os.path
+import sys
+
+import a
+from b.c import X  # some noqa comment
+
+try:
+    import fast
+except ImportError:
+    import slow as fast
+
+
+# Some comment before a function.
+y = 1
+(
+    # some strings
+    y  # type: ignore
+)
+
+
+def function(default=None):
+    """Docstring comes first.
+
+    Possibly many lines.
+    """
+    # FIXME: Some comment about why this function is crap but still in production.
+    import inner_imports
+
+    if inner_imports.are_evil():
+        # Explains why we have this if.
+        # In great detail indeed.
+        x = X()
+        return x.method1()  # type: ignore
+
+    # This return is also commented for some reason.
+    return default
+
+
+# Explains why we use global state.
+GLOBAL_STATE = {"a": a(1), "b": a(2), "c": a(3)}
+
+
+# Another comment!
+# This time two lines.
+
+
+class Foo:
+    """Docstring for class Foo.  Example from Sphinx docs."""
+
+    #: Doc comment for class attribute Foo.bar.
+    #: It can have multiple lines.
+    bar = 1
+
+    flox = 1.5  #: Doc comment for Foo.flox. One line only.
+
+    baz = 2
+    """Docstring for class attribute Foo.baz."""
+
+    def __init__(self):
+        #: Doc comment for instance attribute qux.
+        self.qux = 3
+
+        self.spam = 4
+        """Docstring for instance attribute spam."""
+
+
+#' <h1>This is pweave!</h1>
+
+
+@fast(really=True)
+async def wat():
+    # This comment, for some reason \
+    # contains a trailing backslash.
+    async with X.open_async() as x:  # Some more comments
+        result = await x.method1()
+    # Comment after ending a block.
+    if result:
+        print("A OK", file=sys.stdout)
+        # Comment between things.
+        print()
+
+
+# Some closing comments.
+# Maybe Vim or Emacs directives for formatting.
+# Who knows.
diff --git a/.vim/bundle/black/tests/data/comments2.py b/.vim/bundle/black/tests/data/comments2.py
new file mode 100644 (file)
index 0000000..4eea013
--- /dev/null
@@ -0,0 +1,342 @@
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent  # NOT DRY
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent as component  # DRY
+)
+
+# Please keep __all__ alphabetized within each category.
+
+__all__ = [
+    # Super-special typing primitives.
+    'Any',
+    'Callable',
+    'ClassVar',
+
+    # ABCs (from collections.abc).
+    'AbstractSet',  # collections.abc.Set.
+    'ByteString',
+    'Container',
+
+    # Concrete collection types.
+    'Counter',
+    'Deque',
+    'Dict',
+    'DefaultDict',
+    'List',
+    'Set',
+    'FrozenSet',
+    'NamedTuple',  # Not really a type.
+    'Generator',
+]
+
+not_shareables = [
+    # singletons
+    True,
+    False,
+    NotImplemented, ...,
+    # builtin types and objects
+    type,
+    object,
+    object(),
+    Exception(),
+    42,
+    100.0,
+    "spam",
+    # user-defined types and objects
+    Cheese,
+    Cheese("Wensleydale"),
+    SubBytes(b"spam"),
+]
+
+if 'PYTHON' in os.environ:
+    add_compiler(compiler_from_env())
+else:
+    # for compiler in compilers.values():
+         # add_compiler(compiler)
+    add_compiler(compilers[(7.0, 32)])
+    # add_compiler(compilers[(7.1, 64)])
+
+# Comment before function.
+def inline_comments_in_brackets_ruin_everything():
+    if typedargslist:
+        parameters.children = [
+            children[0],  # (1
+            body,
+            children[-1]  # )1
+        ]
+        parameters.children = [
+            children[0],
+            body,
+            children[-1],  # type: ignore
+        ]
+    else:
+        parameters.children = [
+            parameters.children[0],  # (2 what if this was actually long
+            body,
+            parameters.children[-1],  # )2
+        ]
+        parameters.children = [parameters.what_if_this_was_actually_long.children[0], body, parameters.children[-1]]  # type: ignore
+    if (self._proc is not None
+            # has the child process finished?
+            and self._returncode is None
+            # the child process has finished, but the
+            # transport hasn't been notified yet?
+            and self._proc.poll() is None):
+        pass
+    # no newline before or after
+    short = [
+     # one
+     1,
+     # two
+     2]
+
+    # no newline after
+    call(arg1, arg2, """
+short
+""", arg3=True)
+
+    ############################################################################
+
+    call2(
+    #short
+    arg1,
+    #but
+    arg2,
+    #multiline
+    """
+short
+""",
+    # yup
+    arg3=True)
+    lcomp = [
+        element  # yup
+        for element in collection  # yup
+        if element is not None  # right
+    ]
+    lcomp2 = [
+        # hello
+        element
+        # yup
+        for element in collection
+        # right
+        if element is not None
+    ]
+    lcomp3 = [
+        # This one is actually too long to fit in a single line.
+        element.split('\n', 1)[0]
+        # yup
+        for element in collection.select_elements()
+        # right
+        if element is not None
+    ]
+    while True:
+        if False:
+            continue
+
+            # and round and round we go
+        # and round and round we go
+
+   # let's return
+    return Node(
+        syms.simple_stmt,
+        [
+            Node(statement, result),
+            Leaf(token.NEWLINE, '\n')  # FIXME: \r\n?
+        ],
+    )
+
+CONFIG_FILES = [CONFIG_FILE, ] + SHARED_CONFIG_FILES + USER_CONFIG_FILES  # type: Final
+
+class Test:
+    def _init_host(self, parsed) -> None:
+        if (parsed.hostname is None or  # type: ignore
+                not parsed.hostname.strip()):
+            pass
+
+#######################
+### SECTION COMMENT ###
+#######################
+
+
+instruction()#comment with bad spacing
+
+# END COMMENTS
+# MORE END COMMENTS
+
+
+# output
+
+
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent,  # NOT DRY
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent as component,  # DRY
+)
+
+# Please keep __all__ alphabetized within each category.
+
+__all__ = [
+    # Super-special typing primitives.
+    "Any",
+    "Callable",
+    "ClassVar",
+    # ABCs (from collections.abc).
+    "AbstractSet",  # collections.abc.Set.
+    "ByteString",
+    "Container",
+    # Concrete collection types.
+    "Counter",
+    "Deque",
+    "Dict",
+    "DefaultDict",
+    "List",
+    "Set",
+    "FrozenSet",
+    "NamedTuple",  # Not really a type.
+    "Generator",
+]
+
+not_shareables = [
+    # singletons
+    True,
+    False,
+    NotImplemented,
+    ...,
+    # builtin types and objects
+    type,
+    object,
+    object(),
+    Exception(),
+    42,
+    100.0,
+    "spam",
+    # user-defined types and objects
+    Cheese,
+    Cheese("Wensleydale"),
+    SubBytes(b"spam"),
+]
+
+if "PYTHON" in os.environ:
+    add_compiler(compiler_from_env())
+else:
+    # for compiler in compilers.values():
+    # add_compiler(compiler)
+    add_compiler(compilers[(7.0, 32)])
+    # add_compiler(compilers[(7.1, 64)])
+
+# Comment before function.
+def inline_comments_in_brackets_ruin_everything():
+    if typedargslist:
+        parameters.children = [children[0], body, children[-1]]  # (1  # )1
+        parameters.children = [
+            children[0],
+            body,
+            children[-1],  # type: ignore
+        ]
+    else:
+        parameters.children = [
+            parameters.children[0],  # (2 what if this was actually long
+            body,
+            parameters.children[-1],  # )2
+        ]
+        parameters.children = [parameters.what_if_this_was_actually_long.children[0], body, parameters.children[-1]]  # type: ignore
+    if (
+        self._proc is not None
+        # has the child process finished?
+        and self._returncode is None
+        # the child process has finished, but the
+        # transport hasn't been notified yet?
+        and self._proc.poll() is None
+    ):
+        pass
+    # no newline before or after
+    short = [
+        # one
+        1,
+        # two
+        2,
+    ]
+
+    # no newline after
+    call(
+        arg1,
+        arg2,
+        """
+short
+""",
+        arg3=True,
+    )
+
+    ############################################################################
+
+    call2(
+        # short
+        arg1,
+        # but
+        arg2,
+        # multiline
+        """
+short
+""",
+        # yup
+        arg3=True,
+    )
+    lcomp = [
+        element for element in collection if element is not None  # yup  # yup  # right
+    ]
+    lcomp2 = [
+        # hello
+        element
+        # yup
+        for element in collection
+        # right
+        if element is not None
+    ]
+    lcomp3 = [
+        # This one is actually too long to fit in a single line.
+        element.split("\n", 1)[0]
+        # yup
+        for element in collection.select_elements()
+        # right
+        if element is not None
+    ]
+    while True:
+        if False:
+            continue
+
+            # and round and round we go
+        # and round and round we go
+
+    # let's return
+    return Node(
+        syms.simple_stmt,
+        [Node(statement, result), Leaf(token.NEWLINE, "\n")],  # FIXME: \r\n?
+    )
+
+
+CONFIG_FILES = (
+    [
+        CONFIG_FILE,
+    ]
+    + SHARED_CONFIG_FILES
+    + USER_CONFIG_FILES
+)  # type: Final
+
+
+class Test:
+    def _init_host(self, parsed) -> None:
+        if parsed.hostname is None or not parsed.hostname.strip():  # type: ignore
+            pass
+
+
+#######################
+### SECTION COMMENT ###
+#######################
+
+
+instruction()  # comment with bad spacing
+
+# END COMMENTS
+# MORE END COMMENTS
diff --git a/.vim/bundle/black/tests/data/comments3.py b/.vim/bundle/black/tests/data/comments3.py
new file mode 100644 (file)
index 0000000..fbbef6d
--- /dev/null
@@ -0,0 +1,47 @@
+# The percent-percent comments are Spyder IDE cells.
+
+#%%
+def func():
+    x = """
+    a really long string
+    """
+    lcomp3 = [
+        # This one is actually too long to fit in a single line.
+        element.split("\n", 1)[0]
+        # yup
+        for element in collection.select_elements()
+        # right
+        if element is not None
+    ]
+    # Capture each of the exceptions in the MultiError along with each of their causes and contexts
+    if isinstance(exc_value, MultiError):
+        embedded = []
+        for exc in exc_value.exceptions:
+            if exc not in _seen:
+                embedded.append(
+                    # This should be left alone (before)
+                    traceback.TracebackException.from_exception(
+                        exc,
+                        limit=limit,
+                        lookup_lines=lookup_lines,
+                        capture_locals=capture_locals,
+                        # copy the set of _seen exceptions so that duplicates
+                        # shared between sub-exceptions are not omitted
+                        _seen=set(_seen),
+                    )
+                    # This should be left alone (after)
+                )
+
+    # everything is fine if the expression isn't nested
+    traceback.TracebackException.from_exception(
+        exc,
+        limit=limit,
+        lookup_lines=lookup_lines,
+        capture_locals=capture_locals,
+        # copy the set of _seen exceptions so that duplicates
+        # shared between sub-exceptions are not omitted
+        _seen=set(_seen),
+    )
+
+
+#%%
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/comments4.py b/.vim/bundle/black/tests/data/comments4.py
new file mode 100644 (file)
index 0000000..2147d41
--- /dev/null
@@ -0,0 +1,94 @@
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent,  # NOT DRY
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent as component,  # DRY
+)
+
+
+class C:
+    @pytest.mark.parametrize(
+        ("post_data", "message"),
+        [
+            # metadata_version errors.
+            (
+                {},
+                "None is an invalid value for Metadata-Version. Error: This field is"
+                " required. see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            (
+                {"metadata_version": "-1"},
+                "'-1' is an invalid value for Metadata-Version. Error: Unknown Metadata"
+                " Version see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            # name errors.
+            (
+                {"metadata_version": "1.2"},
+                "'' is an invalid value for Name. Error: This field is required. see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            (
+                {"metadata_version": "1.2", "name": "foo-"},
+                "'foo-' is an invalid value for Name. Error: Must start and end with a"
+                " letter or numeral and contain only ascii numeric and '.', '_' and"
+                " '-'. see https://packaging.python.org/specifications/core-metadata",
+            ),
+            # version errors.
+            (
+                {"metadata_version": "1.2", "name": "example"},
+                "'' is an invalid value for Version. Error: This field is required. see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            (
+                {"metadata_version": "1.2", "name": "example", "version": "dog"},
+                "'dog' is an invalid value for Version. Error: Must start and end with"
+                " a letter or numeral and contain only ascii numeric and '.', '_' and"
+                " '-'. see https://packaging.python.org/specifications/core-metadata",
+            ),
+        ],
+    )
+    def test_fails_invalid_post_data(
+        self, pyramid_config, db_request, post_data, message
+    ):
+        pyramid_config.testing_securitypolicy(userid=1)
+        db_request.POST = MultiDict(post_data)
+
+
+def foo(list_a, list_b):
+    results = (
+        User.query.filter(User.foo == "bar")
+        .filter(  # Because foo.
+            db.or_(User.field_a.astext.in_(list_a), User.field_b.astext.in_(list_b))
+        )
+        .filter(User.xyz.is_(None))
+        # Another comment about the filtering on is_quux goes here.
+        .filter(db.not_(User.is_pending.astext.cast(db.Boolean).is_(True)))
+        .order_by(User.created_at.desc())
+        .with_for_update(key_share=True)
+        .all()
+    )
+    return results
+
+
+def foo2(list_a, list_b):
+    # Standalone comment reasonably placed.
+    return (
+        User.query.filter(User.foo == "bar")
+        .filter(
+            db.or_(User.field_a.astext.in_(list_a), User.field_b.astext.in_(list_b))
+        )
+        .filter(User.xyz.is_(None))
+    )
+
+
+def foo3(list_a, list_b):
+    return (
+        # Standlone comment but weirdly placed.
+        User.query.filter(User.foo == "bar")
+        .filter(
+            db.or_(User.field_a.astext.in_(list_a), User.field_b.astext.in_(list_b))
+        )
+        .filter(User.xyz.is_(None))
+    )
diff --git a/.vim/bundle/black/tests/data/comments5.py b/.vim/bundle/black/tests/data/comments5.py
new file mode 100644 (file)
index 0000000..d83b6b8
--- /dev/null
@@ -0,0 +1,71 @@
+while True:
+    if something.changed:
+        do.stuff()  # trailing comment
+        # Comment belongs to the `if` block.
+    # This one belongs to the `while` block.
+
+    # Should this one, too?  I guess so.
+
+# This one is properly standalone now.
+
+for i in range(100):
+    # first we do this
+    if i % 33 == 0:
+        break
+
+    # then we do this
+    print(i)
+    # and finally we loop around
+
+with open(some_temp_file) as f:
+    data = f.read()
+
+try:
+    with open(some_other_file) as w:
+        w.write(data)
+
+except OSError:
+    print("problems")
+
+import sys
+
+
+# leading function comment
+def wat():
+    ...
+    # trailing function comment
+
+
+# SECTION COMMENT
+
+
+# leading 1
+@deco1
+# leading 2
+@deco2(with_args=True)
+# leading 3
+@deco3
+def decorated1():
+    ...
+
+
+# leading 1
+@deco1
+# leading 2
+@deco2(with_args=True)
+# leading function comment
+def decorated1():
+    ...
+
+
+# Note: crappy but inevitable.  The current design of EmptyLineTracker doesn't
+# allow this to work correctly.  The user will have to split those lines by
+# hand.
+some_instruction
+# This comment should be split from `some_instruction` by two lines but isn't.
+def g():
+    ...
+
+
+if __name__ == "__main__":
+    main()
diff --git a/.vim/bundle/black/tests/data/comments6.py b/.vim/bundle/black/tests/data/comments6.py
new file mode 100644 (file)
index 0000000..735c6aa
--- /dev/null
@@ -0,0 +1,118 @@
+from typing import Any, Tuple
+
+
+def f(
+    a,  # type: int
+):
+    pass
+
+
+# test type comments
+def f(a, b, c, d, e, f, g, h, i):
+    # type: (int, int, int, int, int, int, int, int, int) -> None
+    pass
+
+
+def f(
+    a,  # type: int
+    b,  # type: int
+    c,  # type: int
+    d,  # type: int
+    e,  # type: int
+    f,  # type: int
+    g,  # type: int
+    h,  # type: int
+    i,  # type: int
+):
+    # type: (...) -> None
+    pass
+
+
+def f(
+    arg,  # type: int
+    *args,  # type: *Any
+    default=False,  # type: bool
+    **kwargs,  # type: **Any
+):
+    # type: (...) -> None
+    pass
+
+
+def f(
+    a,  # type: int
+    b,  # type: int
+    c,  # type: int
+    d,  # type: int
+):
+    # type: (...) -> None
+
+    element = 0  # type: int
+    another_element = 1  # type: float
+    another_element_with_long_name = 2  # type: int
+    another_really_really_long_element_with_a_unnecessarily_long_name_to_describe_what_it_does_enterprise_style = (
+        3
+    )  # type: int
+    an_element_with_a_long_value = calls() or more_calls() and more()  # type: bool
+
+    tup = (
+        another_element,
+        another_really_really_long_element_with_a_unnecessarily_long_name_to_describe_what_it_does_enterprise_style,
+    )  # type: Tuple[int, int]
+
+    a = (
+        element
+        + another_element
+        + another_element_with_long_name
+        + element
+        + another_element
+        + another_element_with_long_name
+    )  # type: int
+
+
+def f(
+    x,  # not a type comment
+    y,  # type: int
+):
+    # type: (...) -> None
+    pass
+
+
+def f(
+    x,  # not a type comment
+):  # type: (int) -> None
+    pass
+
+
+def func(
+    a=some_list[0],  # type: int
+):  # type: () -> int
+    c = call(
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0456,
+        0.0789,
+        a[-1],  # type: ignore
+    )
+
+    c = call(
+        "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa"  # type: ignore
+    )
+
+
+result = (  # aaa
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+)
+
+AAAAAAAAAAAAA = [AAAAAAAAAAAAA] + SHARED_AAAAAAAAAAAAA + USER_AAAAAAAAAAAAA + AAAAAAAAAAAAA  # type: ignore
+
+call_to_some_function_asdf(
+    foo,
+    [AAAAAAAAAAAAAAAAAAAAAAA, AAAAAAAAAAAAAAAAAAAAAAA, AAAAAAAAAAAAAAAAAAAAAAA, BBBBBBBBBBBB],  # type: ignore
+)
+
+aaaaaaaaaaaaa, bbbbbbbbb = map(list, map(itertools.chain.from_iterable, zip(*items)))  # type: ignore[arg-type]
diff --git a/.vim/bundle/black/tests/data/comments7.py b/.vim/bundle/black/tests/data/comments7.py
new file mode 100644 (file)
index 0000000..ca9d7c6
--- /dev/null
@@ -0,0 +1,271 @@
+from .config import (
+    Any,
+    Bool,
+    ConfigType,
+    ConfigTypeAttributes,
+    Int,
+    Path,
+    #  String,
+    #  resolve_to_config_type,
+    #  DEFAULT_TYPE_ATTRIBUTES,
+)
+
+
+from .config import (
+    Any,
+    Bool,
+    ConfigType,
+    ConfigTypeAttributes,
+    Int,
+    no_comma_here_yet
+    #  and some comments,
+    #  resolve_to_config_type,
+    #  DEFAULT_TYPE_ATTRIBUTES,
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent  # NOT DRY
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent as component  # DRY
+)
+
+
+result = 1  # look ma, no comment migration xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+
+result = (
+    1  # look ma, no comment migration xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+)
+
+result = (
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"  # aaa
+)
+
+result = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"  # aaa
+
+
+def func():
+    c = call(
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0789,
+        a[-1],  # type: ignore
+    )
+    c = call(
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0789,
+        a[-1]  # type: ignore
+    )
+    c = call(
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0456,
+        0.0789,
+        a[-1]  # type: ignore
+    )
+
+    # The type: ignore exception only applies to line length, not
+    # other types of formatting.
+    c = call(
+        "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa",  # type: ignore
+        "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa", "aaaaaaaa"
+    )
+
+
+class C:
+    @pytest.mark.parametrize(
+        ("post_data", "message"),
+        [
+            # metadata_version errors.
+            (
+                {},
+                "None is an invalid value for Metadata-Version. Error: This field is"
+                " required. see"
+                " https://packaging.python.org/specifications/core-metadata"
+            ),
+            (
+                {"metadata_version": "-1"},
+                "'-1' is an invalid value for Metadata-Version. Error: Unknown Metadata"
+                " Version see"
+                " https://packaging.python.org/specifications/core-metadata"
+            ),
+            # name errors.
+            (
+                {"metadata_version": "1.2"},
+                "'' is an invalid value for Name. Error: This field is required. see"
+                " https://packaging.python.org/specifications/core-metadata"
+            ),
+            (
+                {"metadata_version": "1.2", "name": "foo-"},
+                "'foo-' is an invalid value for Name. Error: Must start and end with a"
+                " letter or numeral and contain only ascii numeric and '.', '_' and"
+                " '-'. see https://packaging.python.org/specifications/core-metadata"
+            ),
+            # version errors.
+            (
+                {"metadata_version": "1.2", "name": "example"},
+                "'' is an invalid value for Version. Error: This field is required. see"
+                " https://packaging.python.org/specifications/core-metadata"
+            ),
+            (
+                {"metadata_version": "1.2", "name": "example", "version": "dog"},
+                "'dog' is an invalid value for Version. Error: Must start and end with"
+                " a letter or numeral and contain only ascii numeric and '.', '_' and"
+                " '-'. see https://packaging.python.org/specifications/core-metadata"
+            )
+        ]
+    )
+    def test_fails_invalid_post_data(
+        self, pyramid_config, db_request, post_data, message
+    ):
+        ...
+
+square = Square(4) # type: Optional[Square]
+
+# output
+
+from .config import (
+    Any,
+    Bool,
+    ConfigType,
+    ConfigTypeAttributes,
+    Int,
+    Path,
+    #  String,
+    #  resolve_to_config_type,
+    #  DEFAULT_TYPE_ATTRIBUTES,
+)
+
+
+from .config import (
+    Any,
+    Bool,
+    ConfigType,
+    ConfigTypeAttributes,
+    Int,
+    no_comma_here_yet,
+    #  and some comments,
+    #  resolve_to_config_type,
+    #  DEFAULT_TYPE_ATTRIBUTES,
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent,  # NOT DRY
+)
+from com.my_lovely_company.my_lovely_team.my_lovely_project.my_lovely_component import (
+    MyLovelyCompanyTeamProjectComponent as component,  # DRY
+)
+
+
+result = 1  # look ma, no comment migration xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+
+result = 1  # look ma, no comment migration xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+
+result = (  # aaa
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+)
+
+result = (  # aaa
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+)
+
+
+def func():
+    c = call(
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0789,
+        a[-1],  # type: ignore
+    )
+    c = call(0.0123, 0.0456, 0.0789, 0.0123, 0.0789, a[-1])  # type: ignore
+    c = call(
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0456,
+        0.0789,
+        0.0123,
+        0.0456,
+        0.0789,
+        a[-1],  # type: ignore
+    )
+
+    # The type: ignore exception only applies to line length, not
+    # other types of formatting.
+    c = call(
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",  # type: ignore
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+        "aaaaaaaa",
+    )
+
+
+class C:
+    @pytest.mark.parametrize(
+        ("post_data", "message"),
+        [
+            # metadata_version errors.
+            (
+                {},
+                "None is an invalid value for Metadata-Version. Error: This field is"
+                " required. see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            (
+                {"metadata_version": "-1"},
+                "'-1' is an invalid value for Metadata-Version. Error: Unknown Metadata"
+                " Version see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            # name errors.
+            (
+                {"metadata_version": "1.2"},
+                "'' is an invalid value for Name. Error: This field is required. see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            (
+                {"metadata_version": "1.2", "name": "foo-"},
+                "'foo-' is an invalid value for Name. Error: Must start and end with a"
+                " letter or numeral and contain only ascii numeric and '.', '_' and"
+                " '-'. see https://packaging.python.org/specifications/core-metadata",
+            ),
+            # version errors.
+            (
+                {"metadata_version": "1.2", "name": "example"},
+                "'' is an invalid value for Version. Error: This field is required. see"
+                " https://packaging.python.org/specifications/core-metadata",
+            ),
+            (
+                {"metadata_version": "1.2", "name": "example", "version": "dog"},
+                "'dog' is an invalid value for Version. Error: Must start and end with"
+                " a letter or numeral and contain only ascii numeric and '.', '_' and"
+                " '-'. see https://packaging.python.org/specifications/core-metadata",
+            ),
+        ],
+    )
+    def test_fails_invalid_post_data(
+        self, pyramid_config, db_request, post_data, message
+    ):
+        ...
+
+
+square = Square(4)  # type: Optional[Square]
diff --git a/.vim/bundle/black/tests/data/comments_non_breaking_space.py b/.vim/bundle/black/tests/data/comments_non_breaking_space.py
new file mode 100644 (file)
index 0000000..e17c3f4
--- /dev/null
@@ -0,0 +1,44 @@
+from .config import (  ConfigTypeAttributes,    Int,    Path,    # String,
+    # DEFAULT_TYPE_ATTRIBUTES,
+)
+
+result = 1  # A simple comment
+result = (    1, ) # Another one
+
+result = 1    # type: ignore
+result = 1# This comment is talking about type: ignore
+square = Square(4) # type: Optional[Square]
+
+def function(a:int=42):
+    """ This docstring is already formatted
+       a
+       b
+    """
+    #    There's a NBSP + 3 spaces before
+    #    And 4 spaces on the next line
+    pass
+
+# output
+from .config import (
+    ConfigTypeAttributes,
+    Int,
+    Path,  # String,
+    # DEFAULT_TYPE_ATTRIBUTES,
+)
+
+result = 1  # A simple comment
+result = (1,)  # Another one
+
+result = 1  #  type: ignore
+result = 1  # This comment is talking about type: ignore
+square = Square(4)  #  type: Optional[Square]
+
+
+def function(a: int = 42):
+    """This docstring is already formatted
+    a
+    b
+    """
+    #    There's a NBSP + 3 spaces before
+    #    And 4 spaces on the next line
+    pass
diff --git a/.vim/bundle/black/tests/data/composition.py b/.vim/bundle/black/tests/data/composition.py
new file mode 100644 (file)
index 0000000..e429f15
--- /dev/null
@@ -0,0 +1,181 @@
+class C:
+    def test(self) -> None:
+        with patch("black.out", print):
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 1 file failed to reformat."
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "1 file reformatted, 1 file left unchanged, 1 file failed to reformat.",
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 1 file left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            for i in (a,):
+                if (
+                    # Rule 1
+                    i % 2 == 0
+                    # Rule 2
+                    and i % 3 == 0
+                ):
+                    while (
+                        # Just a comment
+                        call()
+                        # Another
+                    ):
+                        print(i)
+        xxxxxxxxxxxxxxxx = Yyyy2YyyyyYyyyyy(
+            push_manager=context.request.resource_manager,
+            max_items_to_push=num_items,
+            batch_size=Yyyy2YyyyYyyyyYyyy.FULL_SIZE,
+        ).push(
+            # Only send the first n items.
+            items=items[:num_items]
+        )
+        return (
+            'Utterly failed doctest test for %s\n   File "%s", line %s, in %s\n\n%s'
+            % (test.name, test.filename, lineno, lname, err)
+        )
+
+    def omitting_trailers(self) -> None:
+        get_collection(
+            hey_this_is_a_very_long_call, it_has_funny_attributes, really=True
+        )[OneLevelIndex]
+        get_collection(
+            hey_this_is_a_very_long_call, it_has_funny_attributes, really=True
+        )[OneLevelIndex][TwoLevelIndex][ThreeLevelIndex][FourLevelIndex]
+        d[0][1][2][3][4][5][6][7][8][9][10][11][12][13][14][15][16][17][18][19][20][21][
+            22
+        ]
+        assignment = (
+            some.rather.elaborate.rule() and another.rule.ending_with.index[123]
+        )
+
+    def easy_asserts(self) -> None:
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        } == expected, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }
+
+    def tricky_asserts(self) -> None:
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        } == expected(
+            value, is_going_to_be="too long to fit in a single line", srsly=True
+        ), "Not what we expected"
+
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        } == expected, (
+            "Not what we expected and the message is too long to fit in one line"
+        )
+
+        assert expected(
+            value, is_going_to_be="too long to fit in a single line", srsly=True
+        ) == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }, (
+            "Not what we expected and the message is too long to fit in one line"
+            " because it's too long"
+        )
+
+        dis_c_instance_method = """\
+        %3d           0 LOAD_FAST                1 (x)
+                      2 LOAD_CONST               1 (1)
+                      4 COMPARE_OP               2 (==)
+                      6 LOAD_FAST                0 (self)
+                      8 STORE_ATTR               0 (x)
+                     10 LOAD_CONST               0 (None)
+                     12 RETURN_VALUE
+        """ % (
+            _C.__init__.__code__.co_firstlineno + 1,
+        )
+
+        assert (
+            expectedexpectedexpectedexpectedexpectedexpectedexpectedexpectedexpect
+            == {
+                key1: value1,
+                key2: value2,
+                key3: value3,
+                key4: value4,
+                key5: value5,
+                key6: value6,
+                key7: value7,
+                key8: value8,
+                key9: value9,
+            }
+        )
diff --git a/.vim/bundle/black/tests/data/composition_no_trailing_comma.py b/.vim/bundle/black/tests/data/composition_no_trailing_comma.py
new file mode 100644 (file)
index 0000000..f17b89d
--- /dev/null
@@ -0,0 +1,367 @@
+class C:
+    def test(self) -> None:
+        with patch("black.out", print):
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 1 file failed to reformat."
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "1 file reformatted, 1 file left unchanged, 1 file failed to reformat.",
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 1 file left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            for i in (a,):
+                if (
+                    # Rule 1
+                    i % 2 == 0
+                    # Rule 2
+                    and i % 3 == 0
+                ):
+                    while (
+                        # Just a comment
+                        call()
+                        # Another
+                    ):
+                        print(i)
+        xxxxxxxxxxxxxxxx = Yyyy2YyyyyYyyyyy(
+            push_manager=context.request.resource_manager,
+            max_items_to_push=num_items,
+            batch_size=Yyyy2YyyyYyyyyYyyy.FULL_SIZE
+        ).push(
+            # Only send the first n items.
+            items=items[:num_items]
+        )
+        return (
+            'Utterly failed doctest test for %s\n   File "%s", line %s, in %s\n\n%s'
+            % (test.name, test.filename, lineno, lname, err)
+        )
+
+    def omitting_trailers(self) -> None:
+        get_collection(
+            hey_this_is_a_very_long_call, it_has_funny_attributes, really=True
+        )[OneLevelIndex]
+        get_collection(
+            hey_this_is_a_very_long_call, it_has_funny_attributes, really=True
+        )[OneLevelIndex][TwoLevelIndex][ThreeLevelIndex][FourLevelIndex]
+        d[0][1][2][3][4][5][6][7][8][9][10][11][12][13][14][15][16][17][18][19][20][21][
+            22
+        ]
+        assignment = (
+            some.rather.elaborate.rule() and another.rule.ending_with.index[123]
+        )
+
+    def easy_asserts(self) -> None:
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        } == expected, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        }, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        }
+
+    def tricky_asserts(self) -> None:
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        } == expected(
+            value, is_going_to_be="too long to fit in a single line", srsly=True
+        ), "Not what we expected"
+
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        } == expected, (
+            "Not what we expected and the message is too long to fit in one line"
+        )
+
+        assert expected(
+            value, is_going_to_be="too long to fit in a single line", srsly=True
+        ) == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        }, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9
+        }, (
+            "Not what we expected and the message is too long to fit in one line"
+            " because it's too long"
+        )
+
+        dis_c_instance_method = """\
+        %3d           0 LOAD_FAST                1 (x)
+                      2 LOAD_CONST               1 (1)
+                      4 COMPARE_OP               2 (==)
+                      6 LOAD_FAST                0 (self)
+                      8 STORE_ATTR               0 (x)
+                     10 LOAD_CONST               0 (None)
+                     12 RETURN_VALUE
+        """ % (
+            _C.__init__.__code__.co_firstlineno + 1,
+        )
+
+        assert (
+            expectedexpectedexpectedexpectedexpectedexpectedexpectedexpectedexpect
+            == {
+                key1: value1,
+                key2: value2,
+                key3: value3,
+                key4: value4,
+                key5: value5,
+                key6: value6,
+                key7: value7,
+                key8: value8,
+                key9: value9
+            }
+        )
+
+
+
+# output
+
+class C:
+    def test(self) -> None:
+        with patch("black.out", print):
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 1 file failed to reformat."
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "1 file reformatted, 1 file left unchanged, 1 file failed to reformat.",
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 1 file left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            for i in (a,):
+                if (
+                    # Rule 1
+                    i % 2 == 0
+                    # Rule 2
+                    and i % 3 == 0
+                ):
+                    while (
+                        # Just a comment
+                        call()
+                        # Another
+                    ):
+                        print(i)
+        xxxxxxxxxxxxxxxx = Yyyy2YyyyyYyyyyy(
+            push_manager=context.request.resource_manager,
+            max_items_to_push=num_items,
+            batch_size=Yyyy2YyyyYyyyyYyyy.FULL_SIZE,
+        ).push(
+            # Only send the first n items.
+            items=items[:num_items]
+        )
+        return (
+            'Utterly failed doctest test for %s\n   File "%s", line %s, in %s\n\n%s'
+            % (test.name, test.filename, lineno, lname, err)
+        )
+
+    def omitting_trailers(self) -> None:
+        get_collection(
+            hey_this_is_a_very_long_call, it_has_funny_attributes, really=True
+        )[OneLevelIndex]
+        get_collection(
+            hey_this_is_a_very_long_call, it_has_funny_attributes, really=True
+        )[OneLevelIndex][TwoLevelIndex][ThreeLevelIndex][FourLevelIndex]
+        d[0][1][2][3][4][5][6][7][8][9][10][11][12][13][14][15][16][17][18][19][20][21][
+            22
+        ]
+        assignment = (
+            some.rather.elaborate.rule() and another.rule.ending_with.index[123]
+        )
+
+    def easy_asserts(self) -> None:
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        } == expected, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }
+
+    def tricky_asserts(self) -> None:
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        } == expected(
+            value, is_going_to_be="too long to fit in a single line", srsly=True
+        ), "Not what we expected"
+
+        assert {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        } == expected, (
+            "Not what we expected and the message is too long to fit in one line"
+        )
+
+        assert expected(
+            value, is_going_to_be="too long to fit in a single line", srsly=True
+        ) == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }, "Not what we expected"
+
+        assert expected == {
+            key1: value1,
+            key2: value2,
+            key3: value3,
+            key4: value4,
+            key5: value5,
+            key6: value6,
+            key7: value7,
+            key8: value8,
+            key9: value9,
+        }, (
+            "Not what we expected and the message is too long to fit in one line"
+            " because it's too long"
+        )
+
+        dis_c_instance_method = """\
+        %3d           0 LOAD_FAST                1 (x)
+                      2 LOAD_CONST               1 (1)
+                      4 COMPARE_OP               2 (==)
+                      6 LOAD_FAST                0 (self)
+                      8 STORE_ATTR               0 (x)
+                     10 LOAD_CONST               0 (None)
+                     12 RETURN_VALUE
+        """ % (
+            _C.__init__.__code__.co_firstlineno + 1,
+        )
+
+        assert (
+            expectedexpectedexpectedexpectedexpectedexpectedexpectedexpectedexpect
+            == {
+                key1: value1,
+                key2: value2,
+                key3: value3,
+                key4: value4,
+                key5: value5,
+                key6: value6,
+                key7: value7,
+                key8: value8,
+                key9: value9,
+            }
+        )
diff --git a/.vim/bundle/black/tests/data/debug_visitor.out b/.vim/bundle/black/tests/data/debug_visitor.out
new file mode 100644 (file)
index 0000000..fa60010
--- /dev/null
@@ -0,0 +1,810 @@
+file_input
+  decorated
+    decorator
+      AT
+ '@'
+      NAME
+ 'dataclass'
+      NEWLINE
+ '\n'
+    /decorator
+    classdef
+      NAME
+ 'class'
+      NAME
+ ' '
+ 'DebugVisitor'
+      LPAR
+ '('
+      power
+        NAME
+ 'Visitor'
+        trailer
+          LSQB
+ '['
+          NAME
+ 'T'
+          RSQB
+ ']'
+        /trailer
+      /power
+      RPAR
+ ')'
+      COLON
+ ':'
+      suite
+        NEWLINE
+ '\n'
+        INDENT
+ ''
+        simple_stmt
+          expr_stmt
+            NAME
+ '    '
+ 'tree_depth'
+            annassign
+              COLON
+ ':'
+              NAME
+ ' '
+ 'int'
+              EQUAL
+ ' '
+ '='
+              NUMBER
+ ' '
+ '0'
+            /annassign
+          /expr_stmt
+          NEWLINE
+ '\n'
+        /simple_stmt
+        funcdef
+          NAME
+ '\n    '
+ 'def'
+          NAME
+ ' '
+ 'visit_default'
+          parameters
+            LPAR
+ '('
+            typedargslist
+              NAME
+ 'self'
+              COMMA
+ ','
+              tname
+                NAME
+ ' '
+ 'node'
+                COLON
+ ':'
+                NAME
+ ' '
+ 'LN'
+              /tname
+            /typedargslist
+            RPAR
+ ')'
+          /parameters
+          RARROW
+ ' '
+ '->'
+          power
+            NAME
+ ' '
+ 'Iterator'
+            trailer
+              LSQB
+ '['
+              NAME
+ 'T'
+              RSQB
+ ']'
+            /trailer
+          /power
+          COLON
+ ':'
+          suite
+            NEWLINE
+ '\n'
+            INDENT
+ ''
+            simple_stmt
+              expr_stmt
+                NAME
+ '        '
+ 'indent'
+                EQUAL
+ ' '
+ '='
+                term
+                  STRING
+ ' '
+ "' '"
+                  STAR
+ ' '
+ '*'
+                  atom
+                    LPAR
+ ' '
+ '('
+                    term
+                      NUMBER
+ '2'
+                      STAR
+ ' '
+ '*'
+                      power
+                        NAME
+ ' '
+ 'self'
+                        trailer
+                          DOT
+ '.'
+                          NAME
+ 'tree_depth'
+                        /trailer
+                      /power
+                    /term
+                    RPAR
+ ')'
+                  /atom
+                /term
+              /expr_stmt
+              NEWLINE
+ '\n'
+            /simple_stmt
+            if_stmt
+              NAME
+ '        '
+ 'if'
+              power
+                NAME
+ ' '
+ 'isinstance'
+                trailer
+                  LPAR
+ '('
+                  arglist
+                    NAME
+ 'node'
+                    COMMA
+ ','
+                    NAME
+ ' '
+ 'Node'
+                  /arglist
+                  RPAR
+ ')'
+                /trailer
+              /power
+              COLON
+ ':'
+              suite
+                NEWLINE
+ '\n'
+                INDENT
+ ''
+                simple_stmt
+                  expr_stmt
+                    NAME
+ '            '
+ '_type'
+                    EQUAL
+ ' '
+ '='
+                    power
+                      NAME
+ ' '
+ 'type_repr'
+                      trailer
+                        LPAR
+ '('
+                        power
+                          NAME
+ 'node'
+                          trailer
+                            DOT
+ '.'
+                            NAME
+ 'type'
+                          /trailer
+                        /power
+                        RPAR
+ ')'
+                      /trailer
+                    /power
+                  /expr_stmt
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                simple_stmt
+                  power
+                    NAME
+ '            '
+ 'out'
+                    trailer
+                      LPAR
+ '('
+                      arglist
+                        STRING
+ "f'{indent}{_type}'"
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'fg'
+                          EQUAL
+ '='
+                          STRING
+ "'yellow'"
+                        /argument
+                      /arglist
+                      RPAR
+ ')'
+                    /trailer
+                  /power
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                simple_stmt
+                  expr_stmt
+                    power
+                      NAME
+ '            '
+ 'self'
+                      trailer
+                        DOT
+ '.'
+                        NAME
+ 'tree_depth'
+                      /trailer
+                    /power
+                    PLUSEQUAL
+ ' '
+ '+='
+                    NUMBER
+ ' '
+ '1'
+                  /expr_stmt
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                for_stmt
+                  NAME
+ '            '
+ 'for'
+                  NAME
+ ' '
+ 'child'
+                  NAME
+ ' '
+ 'in'
+                  power
+                    NAME
+ ' '
+ 'node'
+                    trailer
+                      DOT
+ '.'
+                      NAME
+ 'children'
+                    /trailer
+                  /power
+                  COLON
+ ':'
+                  suite
+                    NEWLINE
+ '\n'
+                    INDENT
+ ''
+                    simple_stmt
+                      yield_expr
+                        NAME
+ '                '
+ 'yield'
+                        yield_arg
+                          NAME
+ ' '
+ 'from'
+                          power
+                            NAME
+ ' '
+ 'self'
+                            trailer
+                              DOT
+ '.'
+                              NAME
+ 'visit'
+                            /trailer
+                            trailer
+                              LPAR
+ '('
+                              NAME
+ 'child'
+                              RPAR
+ ')'
+                            /trailer
+                          /power
+                        /yield_arg
+                      /yield_expr
+                      NEWLINE
+ '\n'
+                    /simple_stmt
+                    DEDENT
+ ''
+                  /suite
+                /for_stmt
+                simple_stmt
+                  expr_stmt
+                    power
+                      NAME
+ '\n            '
+ 'self'
+                      trailer
+                        DOT
+ '.'
+                        NAME
+ 'tree_depth'
+                      /trailer
+                    /power
+                    MINEQUAL
+ ' '
+ '-='
+                    NUMBER
+ ' '
+ '1'
+                  /expr_stmt
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                simple_stmt
+                  power
+                    NAME
+ '            '
+ 'out'
+                    trailer
+                      LPAR
+ '('
+                      arglist
+                        STRING
+ "f'{indent}/{_type}'"
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'fg'
+                          EQUAL
+ '='
+                          STRING
+ "'yellow'"
+                        /argument
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'bold'
+                          EQUAL
+ '='
+                          NAME
+ 'False'
+                        /argument
+                      /arglist
+                      RPAR
+ ')'
+                    /trailer
+                  /power
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                DEDENT
+ ''
+              /suite
+              NAME
+ '        '
+ 'else'
+              COLON
+ ':'
+              suite
+                NEWLINE
+ '\n'
+                INDENT
+ ''
+                simple_stmt
+                  expr_stmt
+                    NAME
+ '            '
+ '_type'
+                    EQUAL
+ ' '
+ '='
+                    power
+                      NAME
+ ' '
+ 'token'
+                      trailer
+                        DOT
+ '.'
+                        NAME
+ 'tok_name'
+                      /trailer
+                      trailer
+                        DOT
+ '.'
+                        NAME
+ 'get'
+                      /trailer
+                      trailer
+                        LPAR
+ '('
+                        arglist
+                          power
+                            NAME
+ 'node'
+                            trailer
+                              DOT
+ '.'
+                              NAME
+ 'type'
+                            /trailer
+                          /power
+                          COMMA
+ ','
+                          power
+                            NAME
+ ' '
+ 'str'
+                            trailer
+                              LPAR
+ '('
+                              power
+                                NAME
+ 'node'
+                                trailer
+                                  DOT
+ '.'
+                                  NAME
+ 'type'
+                                /trailer
+                              /power
+                              RPAR
+ ')'
+                            /trailer
+                          /power
+                        /arglist
+                        RPAR
+ ')'
+                      /trailer
+                    /power
+                  /expr_stmt
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                simple_stmt
+                  power
+                    NAME
+ '            '
+ 'out'
+                    trailer
+                      LPAR
+ '('
+                      arglist
+                        STRING
+ "f'{indent}{_type}'"
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'fg'
+                          EQUAL
+ '='
+                          STRING
+ "'blue'"
+                        /argument
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'nl'
+                          EQUAL
+ '='
+                          NAME
+ 'False'
+                        /argument
+                      /arglist
+                      RPAR
+ ')'
+                    /trailer
+                  /power
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                if_stmt
+                  NAME
+ '            '
+ 'if'
+                  power
+                    NAME
+ ' '
+ 'node'
+                    trailer
+                      DOT
+ '.'
+                      NAME
+ 'prefix'
+                    /trailer
+                  /power
+                  COLON
+ ':'
+                  suite
+                    NEWLINE
+ '\n'
+                    INDENT
+ ''
+                    simple_stmt
+                      power
+                        NAME
+ "                # We don't have to handle prefixes for `Node` objects since\n                # that delegates to the first child anyway.\n                "
+ 'out'
+                        trailer
+                          LPAR
+ '('
+                          arglist
+                            STRING
+ "f' {node.prefix!r}'"
+                            COMMA
+ ','
+                            argument
+                              NAME
+ ' '
+ 'fg'
+                              EQUAL
+ '='
+                              STRING
+ "'green'"
+                            /argument
+                            COMMA
+ ','
+                            argument
+                              NAME
+ ' '
+ 'bold'
+                              EQUAL
+ '='
+                              NAME
+ 'False'
+                            /argument
+                            COMMA
+ ','
+                            argument
+                              NAME
+ ' '
+ 'nl'
+                              EQUAL
+ '='
+                              NAME
+ 'False'
+                            /argument
+                          /arglist
+                          RPAR
+ ')'
+                        /trailer
+                      /power
+                      NEWLINE
+ '\n'
+                    /simple_stmt
+                    DEDENT
+ ''
+                  /suite
+                /if_stmt
+                simple_stmt
+                  power
+                    NAME
+ '            '
+ 'out'
+                    trailer
+                      LPAR
+ '('
+                      arglist
+                        STRING
+ "f' {node.value!r}'"
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'fg'
+                          EQUAL
+ '='
+                          STRING
+ "'blue'"
+                        /argument
+                        COMMA
+ ','
+                        argument
+                          NAME
+ ' '
+ 'bold'
+                          EQUAL
+ '='
+                          NAME
+ 'False'
+                        /argument
+                      /arglist
+                      RPAR
+ ')'
+                    /trailer
+                  /power
+                  NEWLINE
+ '\n'
+                /simple_stmt
+                DEDENT
+ ''
+              /suite
+            /if_stmt
+            DEDENT
+ ''
+          /suite
+        /funcdef
+        decorated
+          decorator
+            AT
+ '\n    '
+ '@'
+            NAME
+ 'classmethod'
+            NEWLINE
+ '\n'
+          /decorator
+          funcdef
+            NAME
+ '    '
+ 'def'
+            NAME
+ ' '
+ 'show'
+            parameters
+              LPAR
+ '('
+              typedargslist
+                NAME
+ 'cls'
+                COMMA
+ ','
+                tname
+                  NAME
+ ' '
+ 'code'
+                  COLON
+ ':'
+                  NAME
+ ' '
+ 'str'
+                /tname
+              /typedargslist
+              RPAR
+ ')'
+            /parameters
+            RARROW
+ ' '
+ '->'
+            NAME
+ ' '
+ 'None'
+            COLON
+ ':'
+            suite
+              NEWLINE
+ '\n'
+              INDENT
+ ''
+              simple_stmt
+                STRING
+ '        '
+ '"""Pretty-prints a given string of `code`.\n\n        Convenience method for debugging.\n        """'
+                NEWLINE
+ '\n'
+              /simple_stmt
+              simple_stmt
+                expr_stmt
+                  NAME
+ '        '
+ 'v'
+                  annassign
+                    COLON
+ ':'
+                    power
+                      NAME
+ ' '
+ 'DebugVisitor'
+                      trailer
+                        LSQB
+ '['
+                        NAME
+ 'None'
+                        RSQB
+ ']'
+                      /trailer
+                    /power
+                    EQUAL
+ ' '
+ '='
+                    power
+                      NAME
+ ' '
+ 'DebugVisitor'
+                      trailer
+                        LPAR
+ '('
+                        RPAR
+ ')'
+                      /trailer
+                    /power
+                  /annassign
+                /expr_stmt
+                NEWLINE
+ '\n'
+              /simple_stmt
+              simple_stmt
+                power
+                  NAME
+ '        '
+ 'list'
+                  trailer
+                    LPAR
+ '('
+                    power
+                      NAME
+ 'v'
+                      trailer
+                        DOT
+ '.'
+                        NAME
+ 'visit'
+                      /trailer
+                      trailer
+                        LPAR
+ '('
+                        power
+                          NAME
+ 'lib2to3_parse'
+                          trailer
+                            LPAR
+ '('
+                            NAME
+ 'code'
+                            RPAR
+ ')'
+                          /trailer
+                        /power
+                        RPAR
+ ')'
+                      /trailer
+                    /power
+                    RPAR
+ ')'
+                  /trailer
+                /power
+                NEWLINE
+ '\n'
+              /simple_stmt
+              DEDENT
+ ''
+            /suite
+          /funcdef
+        /decorated
+        DEDENT
+ ''
+      /suite
+    /classdef
+  /decorated
+  ENDMARKER
+ ''
+/file_input
diff --git a/.vim/bundle/black/tests/data/debug_visitor.py b/.vim/bundle/black/tests/data/debug_visitor.py
new file mode 100644 (file)
index 0000000..d1d1ba1
--- /dev/null
@@ -0,0 +1,32 @@
+@dataclass
+class DebugVisitor(Visitor[T]):
+    tree_depth: int = 0
+
+    def visit_default(self, node: LN) -> Iterator[T]:
+        indent = ' ' * (2 * self.tree_depth)
+        if isinstance(node, Node):
+            _type = type_repr(node.type)
+            out(f'{indent}{_type}', fg='yellow')
+            self.tree_depth += 1
+            for child in node.children:
+                yield from self.visit(child)
+
+            self.tree_depth -= 1
+            out(f'{indent}/{_type}', fg='yellow', bold=False)
+        else:
+            _type = token.tok_name.get(node.type, str(node.type))
+            out(f'{indent}{_type}', fg='blue', nl=False)
+            if node.prefix:
+                # We don't have to handle prefixes for `Node` objects since
+                # that delegates to the first child anyway.
+                out(f' {node.prefix!r}', fg='green', bold=False, nl=False)
+            out(f' {node.value!r}', fg='blue', bold=False)
+
+    @classmethod
+    def show(cls, code: str) -> None:
+        """Pretty-prints a given string of `code`.
+
+        Convenience method for debugging.
+        """
+        v: DebugVisitor[None] = DebugVisitor()
+        list(v.visit(lib2to3_parse(code)))
diff --git a/.vim/bundle/black/tests/data/decorators.py b/.vim/bundle/black/tests/data/decorators.py
new file mode 100644 (file)
index 0000000..a0f38ca
--- /dev/null
@@ -0,0 +1,182 @@
+# This file doesn't use the standard decomposition.
+# Decorator syntax test cases are separated by double # comments.
+# Those before the 'output' comment are valid under the old syntax.
+# Those after the 'ouput' comment require PEP614 relaxed syntax.
+# Do not remove the double # separator before the first test case, it allows
+# the comment before the test case to be ignored.
+
+##
+
+@decorator
+def f():
+    ...
+
+##
+
+@decorator()
+def f():
+    ...
+
+##
+
+@decorator(arg)
+def f():
+    ...
+    
+##
+
+@decorator(kwarg=0)
+def f():
+    ...
+
+##
+
+@decorator(*args)
+def f():
+    ...
+
+##
+
+@decorator(**kwargs)
+def f():
+    ...
+
+##
+
+@decorator(*args, **kwargs)
+def f():
+    ...
+
+##
+
+@decorator(*args, **kwargs,)
+def f():
+    ...
+
+##
+
+@dotted.decorator
+def f():
+    ...
+
+##
+
+@dotted.decorator(arg)
+def f():
+    ...
+    
+##
+
+@dotted.decorator(kwarg=0)
+def f():
+    ...
+
+##
+
+@dotted.decorator(*args)
+def f():
+    ...
+
+##
+
+@dotted.decorator(**kwargs)
+def f():
+    ...
+
+##
+
+@dotted.decorator(*args, **kwargs)
+def f():
+    ...
+
+##
+
+@dotted.decorator(*args, **kwargs,)
+def f():
+    ...
+
+##
+
+@double.dotted.decorator
+def f():
+    ...
+
+##
+
+@double.dotted.decorator(arg)
+def f():
+    ...
+    
+##
+
+@double.dotted.decorator(kwarg=0)
+def f():
+    ...
+
+##
+
+@double.dotted.decorator(*args)
+def f():
+    ...
+
+##
+
+@double.dotted.decorator(**kwargs)
+def f():
+    ...
+
+##
+
+@double.dotted.decorator(*args, **kwargs)
+def f():
+    ...
+
+##
+
+@double.dotted.decorator(*args, **kwargs,)
+def f():
+    ...
+
+##
+
+@_(sequence["decorator"])
+def f():
+    ...
+
+##
+
+@eval("sequence['decorator']")
+def f():
+    ...
+
+# output
+
+##
+
+@decorator()()
+def f():
+    ...
+
+##
+
+@(decorator)
+def f():
+    ...
+
+##
+
+@sequence["decorator"]
+def f():
+    ...
+
+##
+
+@decorator[List[str]]
+def f():
+    ...
+
+##
+
+@var := decorator
+def f():
+    ...
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/docstring.py b/.vim/bundle/black/tests/data/docstring.py
new file mode 100644 (file)
index 0000000..96bcf52
--- /dev/null
@@ -0,0 +1,377 @@
+class MyClass:
+  """ Multiline
+  class docstring
+  """
+
+  def method(self):
+    """Multiline
+    method docstring
+    """
+    pass
+
+
+def foo():
+  """This is a docstring with             
+  some lines of text here
+  """
+  return
+
+
+def bar():
+  '''This is another docstring
+  with more lines of text
+  '''
+  return
+
+
+def baz():
+  '''"This" is a string with some
+  embedded "quotes"'''
+  return
+
+
+def troz():
+       '''Indentation with tabs
+       is just as OK
+       '''
+       return
+
+
+def zort():
+        """Another
+        multiline
+        docstring
+        """
+        pass
+
+def poit():
+  """
+  Lorem ipsum dolor sit amet.       
+
+  Consectetur adipiscing elit:
+   - sed do eiusmod tempor incididunt ut labore
+   - dolore magna aliqua
+     - enim ad minim veniam
+     - quis nostrud exercitation ullamco laboris nisi
+   - aliquip ex ea commodo consequat
+  """
+  pass
+
+
+def under_indent():
+  """
+  These lines are indented in a way that does not
+make sense.
+  """
+  pass
+
+
+def over_indent():
+  """
+  This has a shallow indent
+    - But some lines are deeper
+    - And the closing quote is too deep
+    """
+  pass
+
+
+def single_line():
+    """But with a newline after it!
+
+    """
+    pass
+
+
+def this():
+    r"""
+    'hey ho'
+    """
+
+
+def that():
+  """ "hey yah" """
+
+
+def and_that():
+  """
+  "hey yah" """
+
+
+def and_this():
+  ''' 
+  "hey yah"'''
+
+
+def multiline_whitespace():
+    '''
+    
+    
+    
+    
+    '''
+
+
+def oneline_whitespace():
+    '''      '''
+
+
+def empty():
+    """"""
+
+
+def single_quotes():
+    'testing'
+
+
+def believe_it_or_not_this_is_in_the_py_stdlib(): ''' 
+"hey yah"'''
+
+
+def ignored_docstring():
+    """a => \
+b"""  
+
+def single_line_docstring_with_whitespace():
+    """   This should be stripped """
+
+def docstring_with_inline_tabs_and_space_indentation():
+    """hey
+
+    tab        separated       value
+       tab at start of line and then a tab     separated       value
+                               multiple tabs at the beginning  and     inline
+                       mixed tabs and spaces at beginning. next line has mixed tabs and spaces only.
+                                               
+    line ends with some tabs           
+    """
+
+
+def docstring_with_inline_tabs_and_tab_indentation():
+       """hey
+
+       tab     separated       value
+               tab at start of line and then a tab     separated       value
+                                       multiple tabs at the beginning  and     inline
+                               mixed tabs and spaces at beginning. next line has mixed tabs and spaces only.
+                                                       
+       line ends with some tabs                
+       """
+       pass
+
+
+def backslash_space():
+    """\ """
+
+
+def multiline_backslash_1():
+  '''
+  hey\there\
+  \ '''
+
+
+def multiline_backslash_2():
+  '''
+  hey there \ '''
+
+
+def multiline_backslash_3():
+  '''
+  already escaped \\ '''
+
+
+def my_god_its_full_of_stars_1():
+    "I'm sorry Dave\u2001"
+
+
+# the space below is actually a \u2001, removed in output
+def my_god_its_full_of_stars_2():
+    "I'm sorry Dave "
+
+
+# output
+
+class MyClass:
+    """Multiline
+    class docstring
+    """
+
+    def method(self):
+        """Multiline
+        method docstring
+        """
+        pass
+
+
+def foo():
+    """This is a docstring with
+    some lines of text here
+    """
+    return
+
+
+def bar():
+    """This is another docstring
+    with more lines of text
+    """
+    return
+
+
+def baz():
+    '''"This" is a string with some
+    embedded "quotes"'''
+    return
+
+
+def troz():
+    """Indentation with tabs
+    is just as OK
+    """
+    return
+
+
+def zort():
+    """Another
+    multiline
+    docstring
+    """
+    pass
+
+
+def poit():
+    """
+    Lorem ipsum dolor sit amet.
+
+    Consectetur adipiscing elit:
+     - sed do eiusmod tempor incididunt ut labore
+     - dolore magna aliqua
+       - enim ad minim veniam
+       - quis nostrud exercitation ullamco laboris nisi
+     - aliquip ex ea commodo consequat
+    """
+    pass
+
+
+def under_indent():
+    """
+      These lines are indented in a way that does not
+    make sense.
+    """
+    pass
+
+
+def over_indent():
+    """
+    This has a shallow indent
+      - But some lines are deeper
+      - And the closing quote is too deep
+    """
+    pass
+
+
+def single_line():
+    """But with a newline after it!"""
+    pass
+
+
+def this():
+    r"""
+    'hey ho'
+    """
+
+
+def that():
+    """ "hey yah" """
+
+
+def and_that():
+    """
+    "hey yah" """
+
+
+def and_this():
+    '''
+    "hey yah"'''
+
+
+def multiline_whitespace():
+    """ """
+
+
+def oneline_whitespace():
+    """ """
+
+
+def empty():
+    """"""
+
+
+def single_quotes():
+    "testing"
+
+
+def believe_it_or_not_this_is_in_the_py_stdlib():
+    '''
+    "hey yah"'''
+
+
+def ignored_docstring():
+    """a => \
+b"""
+
+
+def single_line_docstring_with_whitespace():
+    """This should be stripped"""
+
+
+def docstring_with_inline_tabs_and_space_indentation():
+    """hey
+
+    tab        separated       value
+        tab at start of line and then a tab    separated       value
+                                multiple tabs at the beginning and     inline
+                        mixed tabs and spaces at beginning. next line has mixed tabs and spaces only.
+
+    line ends with some tabs
+    """
+
+
+def docstring_with_inline_tabs_and_tab_indentation():
+    """hey
+
+    tab        separated       value
+            tab at start of line and then a tab        separated       value
+                                    multiple tabs at the beginning     and     inline
+                            mixed tabs and spaces at beginning. next line has mixed tabs and spaces only.
+
+    line ends with some tabs
+    """
+    pass
+
+
+def backslash_space():
+    """\ """
+
+
+def multiline_backslash_1():
+    """
+  hey\there\
+  \ """
+
+
+def multiline_backslash_2():
+    """
+    hey there \ """
+
+
+def multiline_backslash_3():
+    """
+    already escaped \\"""
+
+
+def my_god_its_full_of_stars_1():
+    "I'm sorry Dave\u2001"
+
+
+# the space below is actually a \u2001, removed in output
+def my_god_its_full_of_stars_2():
+    "I'm sorry Dave"
diff --git a/.vim/bundle/black/tests/data/docstring_no_string_normalization.py b/.vim/bundle/black/tests/data/docstring_no_string_normalization.py
new file mode 100644 (file)
index 0000000..a90b578
--- /dev/null
@@ -0,0 +1,249 @@
+class ALonelyClass:
+    '''
+    A multiline class docstring.
+    '''
+    def AnEquallyLonelyMethod(self):
+        '''
+        A multiline method docstring'''
+        pass
+
+
+def one_function():
+    '''This is a docstring with a single line of text.'''
+    pass
+
+
+def shockingly_the_quotes_are_normalized():
+    '''This is a multiline docstring.
+    This is a multiline docstring.
+    This is a multiline docstring.
+    '''
+    pass
+
+
+def foo():
+  """This is a docstring with             
+  some lines of text here
+  """
+  return
+
+
+def baz():
+  '''"This" is a string with some
+  embedded "quotes"'''
+  return
+
+
+def poit():
+  """
+  Lorem ipsum dolor sit amet.       
+
+  Consectetur adipiscing elit:
+   - sed do eiusmod tempor incididunt ut labore
+   - dolore magna aliqua
+     - enim ad minim veniam
+     - quis nostrud exercitation ullamco laboris nisi
+   - aliquip ex ea commodo consequat
+  """
+  pass
+
+
+def under_indent():
+  """
+  These lines are indented in a way that does not
+make sense.
+  """
+  pass
+
+
+def over_indent():
+  """
+  This has a shallow indent
+    - But some lines are deeper
+    - And the closing quote is too deep
+    """
+  pass
+
+
+def single_line():
+    """But with a newline after it!
+
+    """
+    pass
+
+
+def this():
+    r"""
+    'hey ho'
+    """
+
+
+def that():
+  """ "hey yah" """
+
+
+def and_that():
+  """
+  "hey yah" """
+
+
+def and_this():
+  ''' 
+  "hey yah"'''
+
+
+def believe_it_or_not_this_is_in_the_py_stdlib(): ''' 
+"hey yah"'''
+
+
+def shockingly_the_quotes_are_normalized_v2():
+    '''
+    Docstring Docstring Docstring
+    '''
+    pass
+
+
+def backslash_space():
+    '\ '
+
+
+def multiline_backslash_1():
+  '''
+  hey\there\
+  \ '''
+
+
+def multiline_backslash_2():
+  '''
+  hey there \ '''
+
+
+def multiline_backslash_3():
+  '''
+  already escaped \\ '''
+
+# output
+
+class ALonelyClass:
+    '''
+    A multiline class docstring.
+    '''
+
+    def AnEquallyLonelyMethod(self):
+        '''
+        A multiline method docstring'''
+        pass
+
+
+def one_function():
+    '''This is a docstring with a single line of text.'''
+    pass
+
+
+def shockingly_the_quotes_are_normalized():
+    '''This is a multiline docstring.
+    This is a multiline docstring.
+    This is a multiline docstring.
+    '''
+    pass
+
+
+def foo():
+    """This is a docstring with
+    some lines of text here
+    """
+    return
+
+
+def baz():
+    '''"This" is a string with some
+    embedded "quotes"'''
+    return
+
+
+def poit():
+    """
+    Lorem ipsum dolor sit amet.
+
+    Consectetur adipiscing elit:
+     - sed do eiusmod tempor incididunt ut labore
+     - dolore magna aliqua
+       - enim ad minim veniam
+       - quis nostrud exercitation ullamco laboris nisi
+     - aliquip ex ea commodo consequat
+    """
+    pass
+
+
+def under_indent():
+    """
+      These lines are indented in a way that does not
+    make sense.
+    """
+    pass
+
+
+def over_indent():
+    """
+    This has a shallow indent
+      - But some lines are deeper
+      - And the closing quote is too deep
+    """
+    pass
+
+
+def single_line():
+    """But with a newline after it!"""
+    pass
+
+
+def this():
+    r"""
+    'hey ho'
+    """
+
+
+def that():
+    """ "hey yah" """
+
+
+def and_that():
+    """
+    "hey yah" """
+
+
+def and_this():
+    '''
+    "hey yah"'''
+
+
+def believe_it_or_not_this_is_in_the_py_stdlib():
+    '''
+    "hey yah"'''
+
+
+def shockingly_the_quotes_are_normalized_v2():
+    '''
+    Docstring Docstring Docstring
+    '''
+    pass
+
+
+def backslash_space():
+    '\ '
+
+
+def multiline_backslash_1():
+    '''
+  hey\there\
+  \ '''
+
+
+def multiline_backslash_2():
+    '''
+    hey there \ '''
+
+
+def multiline_backslash_3():
+    '''
+    already escaped \\'''
diff --git a/.vim/bundle/black/tests/data/empty_lines.py b/.vim/bundle/black/tests/data/empty_lines.py
new file mode 100644 (file)
index 0000000..4c03e43
--- /dev/null
@@ -0,0 +1,187 @@
+"""Docstring."""
+
+
+# leading comment
+def f():
+    NO = ''
+    SPACE = ' '
+    DOUBLESPACE = '  '
+
+    t = leaf.type
+    p = leaf.parent  # trailing comment
+    v = leaf.value
+
+    if t in ALWAYS_NO_SPACE:
+        pass
+    if t == token.COMMENT:  # another trailing comment
+        return DOUBLESPACE
+
+
+    assert p is not None, f"INTERNAL ERROR: hand-made leaf without parent: {leaf!r}"
+
+
+    prev = leaf.prev_sibling
+    if not prev:
+        prevp = preceding_leaf(p)
+        if not prevp or prevp.type in OPENING_BRACKETS:
+
+
+            return NO
+
+
+        if prevp.type == token.EQUAL:
+            if prevp.parent and prevp.parent.type in {
+                syms.typedargslist,
+                syms.varargslist,
+                syms.parameters,
+                syms.arglist,
+                syms.argument,
+            }:
+                return NO
+
+        elif prevp.type == token.DOUBLESTAR:
+            if prevp.parent and prevp.parent.type in {
+                syms.typedargslist,
+                syms.varargslist,
+                syms.parameters,
+                syms.arglist,
+                syms.dictsetmaker,
+            }:
+                return NO
+
+###############################################################################
+# SECTION BECAUSE SECTIONS
+###############################################################################
+
+def g():
+    NO = ''
+    SPACE = ' '
+    DOUBLESPACE = '  '
+
+    t = leaf.type
+    p = leaf.parent
+    v = leaf.value
+
+    # Comment because comments
+
+    if t in ALWAYS_NO_SPACE:
+        pass
+    if t == token.COMMENT:
+        return DOUBLESPACE
+
+    # Another comment because more comments
+    assert p is not None, f'INTERNAL ERROR: hand-made leaf without parent: {leaf!r}'
+
+    prev = leaf.prev_sibling
+    if not prev:
+        prevp = preceding_leaf(p)
+
+        if not prevp or prevp.type in OPENING_BRACKETS:
+            # Start of the line or a bracketed expression.
+            # More than one line for the comment.
+            return NO
+
+        if prevp.type == token.EQUAL:
+            if prevp.parent and prevp.parent.type in {
+                syms.typedargslist,
+                syms.varargslist,
+                syms.parameters,
+                syms.arglist,
+                syms.argument,
+            }:
+                return NO
+
+
+# output
+
+
+"""Docstring."""
+
+
+# leading comment
+def f():
+    NO = ""
+    SPACE = " "
+    DOUBLESPACE = "  "
+
+    t = leaf.type
+    p = leaf.parent  # trailing comment
+    v = leaf.value
+
+    if t in ALWAYS_NO_SPACE:
+        pass
+    if t == token.COMMENT:  # another trailing comment
+        return DOUBLESPACE
+
+    assert p is not None, f"INTERNAL ERROR: hand-made leaf without parent: {leaf!r}"
+
+    prev = leaf.prev_sibling
+    if not prev:
+        prevp = preceding_leaf(p)
+        if not prevp or prevp.type in OPENING_BRACKETS:
+
+            return NO
+
+        if prevp.type == token.EQUAL:
+            if prevp.parent and prevp.parent.type in {
+                syms.typedargslist,
+                syms.varargslist,
+                syms.parameters,
+                syms.arglist,
+                syms.argument,
+            }:
+                return NO
+
+        elif prevp.type == token.DOUBLESTAR:
+            if prevp.parent and prevp.parent.type in {
+                syms.typedargslist,
+                syms.varargslist,
+                syms.parameters,
+                syms.arglist,
+                syms.dictsetmaker,
+            }:
+                return NO
+
+
+###############################################################################
+# SECTION BECAUSE SECTIONS
+###############################################################################
+
+
+def g():
+    NO = ""
+    SPACE = " "
+    DOUBLESPACE = "  "
+
+    t = leaf.type
+    p = leaf.parent
+    v = leaf.value
+
+    # Comment because comments
+
+    if t in ALWAYS_NO_SPACE:
+        pass
+    if t == token.COMMENT:
+        return DOUBLESPACE
+
+    # Another comment because more comments
+    assert p is not None, f"INTERNAL ERROR: hand-made leaf without parent: {leaf!r}"
+
+    prev = leaf.prev_sibling
+    if not prev:
+        prevp = preceding_leaf(p)
+
+        if not prevp or prevp.type in OPENING_BRACKETS:
+            # Start of the line or a bracketed expression.
+            # More than one line for the comment.
+            return NO
+
+        if prevp.type == token.EQUAL:
+            if prevp.parent and prevp.parent.type in {
+                syms.typedargslist,
+                syms.varargslist,
+                syms.parameters,
+                syms.arglist,
+                syms.argument,
+            }:
+                return NO
diff --git a/.vim/bundle/black/tests/data/empty_pyproject.toml b/.vim/bundle/black/tests/data/empty_pyproject.toml
new file mode 100644 (file)
index 0000000..8c5274d
--- /dev/null
@@ -0,0 +1,2 @@
+# Empty pyproject.toml to use with some tests that depend on Python 3.6 autodiscovery
+# and so on.
diff --git a/.vim/bundle/black/tests/data/expression.diff b/.vim/bundle/black/tests/data/expression.diff
new file mode 100644 (file)
index 0000000..721a07d
--- /dev/null
@@ -0,0 +1,447 @@
+--- [Deterministic header]
++++ [Deterministic header]
+@@ -1,8 +1,8 @@
+ ...
+-'some_string'
+-b'\\xa3'
++"some_string"
++b"\\xa3"
+ Name
+ None
+ True
+ False
+ 1
+@@ -29,63 +29,96 @@
+ ~great
+ +value
+ -1
+ ~int and not v1 ^ 123 + v2 | True
+ (~int) and (not ((v1 ^ (123 + v2)) | True))
+-+really ** -confusing ** ~operator ** -precedence
+-flags & ~ select.EPOLLIN and waiters.write_task is not None
+++(really ** -(confusing ** ~(operator ** -precedence)))
++flags & ~select.EPOLLIN and waiters.write_task is not None
+ lambda arg: None
+ lambda a=True: a
+ lambda a, b, c=True: a
+-lambda a, b, c=True, *, d=(1 << v2), e='str': a
+-lambda a, b, c=True, *vararg, d=(v1 << 2), e='str', **kwargs: a + b
++lambda a, b, c=True, *, d=(1 << v2), e="str": a
++lambda a, b, c=True, *vararg, d=(v1 << 2), e="str", **kwargs: a + b
+ manylambdas = lambda x=lambda y=lambda z=1: z: y(): x()
+-foo = (lambda port_id, ignore_missing: {"port1": port1_resource, "port2": port2_resource}[port_id])
++foo = lambda port_id, ignore_missing: {
++    "port1": port1_resource,
++    "port2": port2_resource,
++}[port_id]
+ 1 if True else 2
+ str or None if True else str or bytes or None
+ (str or None) if True else (str or bytes or None)
+ str or None if (1 if True else 2) else str or bytes or None
+ (str or None) if (1 if True else 2) else (str or bytes or None)
+-((super_long_variable_name or None) if (1 if super_long_test_name else 2) else (str or bytes or None))
+-{'2.7': dead, '3.7': (long_live or die_hard)}
+-{'2.7': dead, '3.7': (long_live or die_hard), **{'3.6': verygood}}
++(
++    (super_long_variable_name or None)
++    if (1 if super_long_test_name else 2)
++    else (str or bytes or None)
++)
++{"2.7": dead, "3.7": (long_live or die_hard)}
++{"2.7": dead, "3.7": (long_live or die_hard), **{"3.6": verygood}}
+ {**a, **b, **c}
+-{'2.7', '3.6', '3.7', '3.8', '3.9', ('4.0' if gilectomy else '3.10')}
+-({'a': 'b'}, (True or False), (+value), 'string', b'bytes') or None
++{"2.7", "3.6", "3.7", "3.8", "3.9", ("4.0" if gilectomy else "3.10")}
++({"a": "b"}, (True or False), (+value), "string", b"bytes") or None
+ ()
+ (1,)
+ (1, 2)
+ (1, 2, 3)
+ []
+ [1, 2, 3, 4, 5, 6, 7, 8, 9, (10 or A), (11 or B), (12 or C)]
+-[1, 2, 3,]
++[
++    1,
++    2,
++    3,
++]
+ [*a]
+ [*range(10)]
+-[*a, 4, 5,]
+-[4, *a, 5,]
+-[this_is_a_very_long_variable_which_will_force_a_delimiter_split, element, another, *more]
++[
++    *a,
++    4,
++    5,
++]
++[
++    4,
++    *a,
++    5,
++]
++[
++    this_is_a_very_long_variable_which_will_force_a_delimiter_split,
++    element,
++    another,
++    *more,
++]
+ {i for i in (1, 2, 3)}
+ {(i ** 2) for i in (1, 2, 3)}
+-{(i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))}
++{(i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c"))}
+ {((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)}
+ [i for i in (1, 2, 3)]
+ [(i ** 2) for i in (1, 2, 3)]
+-[(i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))]
++[(i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c"))]
+ [((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)]
+ {i: 0 for i in (1, 2, 3)}
+-{i: j for i, j in ((1, 'a'), (2, 'b'), (3, 'c'))}
++{i: j for i, j in ((1, "a"), (2, "b"), (3, "c"))}
+ {a: b * 2 for a, b in dictionary.items()}
+ {a: b * -2 for a, b in dictionary.items()}
+-{k: v for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension}
++{
++    k: v
++    for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension
++}
+ Python3 > Python2 > COBOL
+ Life is Life
+ call()
+ call(arg)
+-call(kwarg='hey')
+-call(arg, kwarg='hey')
+-call(arg, another, kwarg='hey', **kwargs)
+-call(this_is_a_very_long_variable_which_will_force_a_delimiter_split, arg, another, kwarg='hey', **kwargs)  # note: no trailing comma pre-3.6
++call(kwarg="hey")
++call(arg, kwarg="hey")
++call(arg, another, kwarg="hey", **kwargs)
++call(
++    this_is_a_very_long_variable_which_will_force_a_delimiter_split,
++    arg,
++    another,
++    kwarg="hey",
++    **kwargs
++)  # note: no trailing comma pre-3.6
+ call(*gidgets[:2])
+ call(a, *gidgets[:2])
+ call(**self.screen_kwargs)
+ call(b, **self.screen_kwargs)
+ lukasz.langa.pl
+@@ -94,26 +127,29 @@
+ 1.0 .real
+ ....__class__
+ list[str]
+ dict[str, int]
+ tuple[str, ...]
++tuple[str, int, float, dict[str, int]]
+ tuple[
+-    str, int, float, dict[str, int]
+-]
+-tuple[str, int, float, dict[str, int],]
++    str,
++    int,
++    float,
++    dict[str, int],
++]
+ very_long_variable_name_filters: t.List[
+     t.Tuple[str, t.Union[str, t.List[t.Optional[str]]]],
+ ]
+ xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+     sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+ )
+ xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+     sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+ )
+-xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[
+-    ..., List[SomeClass]
+-] = classmethod(sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__))  # type: ignore
++xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(
++    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
++)  # type: ignore
+ slice[0]
+ slice[0:1]
+ slice[0:1:2]
+ slice[:]
+ slice[:-1]
+@@ -137,118 +173,199 @@
+ numpy[-(c + 1) :, d]
+ numpy[:, l[-2]]
+ numpy[:, ::-1]
+ numpy[np.newaxis, :]
+ (str or None) if (sys.version_info[0] > (3,)) else (str or bytes or None)
+-{'2.7': dead, '3.7': long_live or die_hard}
+-{'2.7', '3.6', '3.7', '3.8', '3.9', '4.0' if gilectomy else '3.10'}
++{"2.7": dead, "3.7": long_live or die_hard}
++{"2.7", "3.6", "3.7", "3.8", "3.9", "4.0" if gilectomy else "3.10"}
+ [1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or A, 11 or B, 12 or C]
+ (SomeName)
+ SomeName
+ (Good, Bad, Ugly)
+ (i for i in (1, 2, 3))
+ ((i ** 2) for i in (1, 2, 3))
+-((i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c')))
++((i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c")))
+ (((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3))
+ (*starred,)
+-{"id": "1","type": "type","started_at": now(),"ended_at": now() + timedelta(days=10),"priority": 1,"import_session_id": 1,**kwargs}
++{
++    "id": "1",
++    "type": "type",
++    "started_at": now(),
++    "ended_at": now() + timedelta(days=10),
++    "priority": 1,
++    "import_session_id": 1,
++    **kwargs,
++}
+ a = (1,)
+-b = 1,
++b = (1,)
+ c = 1
+ d = (1,) + a + (2,)
+ e = (1,).count(1)
+ f = 1, *range(10)
+ g = 1, *"ten"
+-what_is_up_with_those_new_coord_names = (coord_names + set(vars_to_create)) + set(vars_to_remove)
+-what_is_up_with_those_new_coord_names = (coord_names | set(vars_to_create)) - set(vars_to_remove)
+-result = session.query(models.Customer.id).filter(models.Customer.account_id == account_id, models.Customer.email == email_address).order_by(models.Customer.id.asc()).all()
+-result = session.query(models.Customer.id).filter(models.Customer.account_id == account_id, models.Customer.email == email_address).order_by(models.Customer.id.asc(),).all()
++what_is_up_with_those_new_coord_names = (coord_names + set(vars_to_create)) + set(
++    vars_to_remove
++)
++what_is_up_with_those_new_coord_names = (coord_names | set(vars_to_create)) - set(
++    vars_to_remove
++)
++result = (
++    session.query(models.Customer.id)
++    .filter(
++        models.Customer.account_id == account_id, models.Customer.email == email_address
++    )
++    .order_by(models.Customer.id.asc())
++    .all()
++)
++result = (
++    session.query(models.Customer.id)
++    .filter(
++        models.Customer.account_id == account_id, models.Customer.email == email_address
++    )
++    .order_by(
++        models.Customer.id.asc(),
++    )
++    .all()
++)
+ Ø = set()
+ authors.łukasz.say_thanks()
+ mapping = {
+     A: 0.25 * (10.0 / 12),
+     B: 0.1 * (10.0 / 12),
+     C: 0.1 * (10.0 / 12),
+     D: 0.1 * (10.0 / 12),
+ }
++
+ def gen():
+     yield from outside_of_generator
+-    a = (yield)
+-    b = ((yield))
+-    c = (((yield)))
++    a = yield
++    b = yield
++    c = yield
++
+ async def f():
+     await some.complicated[0].call(with_args=(True or (1 is not 1)))
+-print(* [] or [1])
++
++
++print(*[] or [1])
+ print(**{1: 3} if False else {x: x for x in range(3)})
+-print(* lambda x: x)
+-assert(not Test),("Short message")
+-assert this is ComplexTest and not requirements.fit_in_a_single_line(force=False), "Short message"
+-assert(((parens is TooMany)))
+-for x, in (1,), (2,), (3,): ...
+-for y in (): ...
+-for z in (i for i in (1, 2, 3)): ...
+-for i in (call()): ...
+-for j in (1 + (2 + 3)): ...
+-while(this and that): ...
+-for addr_family, addr_type, addr_proto, addr_canonname, addr_sockaddr in socket.getaddrinfo('google.com', 'http'):
++print(*lambda x: x)
++assert not Test, "Short message"
++assert this is ComplexTest and not requirements.fit_in_a_single_line(
++    force=False
++), "Short message"
++assert parens is TooMany
++for (x,) in (1,), (2,), (3,):
++    ...
++for y in ():
++    ...
++for z in (i for i in (1, 2, 3)):
++    ...
++for i in call():
++    ...
++for j in 1 + (2 + 3):
++    ...
++while this and that:
++    ...
++for (
++    addr_family,
++    addr_type,
++    addr_proto,
++    addr_canonname,
++    addr_sockaddr,
++) in socket.getaddrinfo("google.com", "http"):
+     pass
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp not in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp is qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp is not qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-if (
+-    threading.current_thread() != threading.main_thread() and
+-    threading.current_thread() != threading.main_thread() or
+-    signal.getsignal(signal.SIGINT) != signal.default_int_handler
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa &
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa *
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa /
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    ~ aaaa.a + aaaa.b - aaaa.c * aaaa.d / aaaa.e | aaaa.f & aaaa.g % aaaa.h ^ aaaa.i << aaaa.k >> aaaa.l ** aaaa.m // aaaa.n
+-):
+-    return True
+-if (
+-    ~ aaaaaaaa.a + aaaaaaaa.b - aaaaaaaa.c @ aaaaaaaa.d / aaaaaaaa.e | aaaaaaaa.f & aaaaaaaa.g % aaaaaaaa.h ^ aaaaaaaa.i << aaaaaaaa.k >> aaaaaaaa.l ** aaaaaaaa.m // aaaaaaaa.n
+-):
+-    return True
+-if (
+-    ~ aaaaaaaaaaaaaaaa.a + aaaaaaaaaaaaaaaa.b - aaaaaaaaaaaaaaaa.c * aaaaaaaaaaaaaaaa.d @ aaaaaaaaaaaaaaaa.e | aaaaaaaaaaaaaaaa.f & aaaaaaaaaaaaaaaa.g % aaaaaaaaaaaaaaaa.h ^ aaaaaaaaaaaaaaaa.i << aaaaaaaaaaaaaaaa.k >> aaaaaaaaaaaaaaaa.l ** aaaaaaaaaaaaaaaa.m // aaaaaaaaaaaaaaaa.n
+-):
+-    return True
+-aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa - aaaaaaaaaaaaaaaa * (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa) / (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    not in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    is qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    is not qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++if (
++    threading.current_thread() != threading.main_thread()
++    and threading.current_thread() != threading.main_thread()
++    or signal.getsignal(signal.SIGINT) != signal.default_int_handler
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    - aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    * aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    / aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    ~aaaa.a + aaaa.b - aaaa.c * aaaa.d / aaaa.e
++    | aaaa.f & aaaa.g % aaaa.h ^ aaaa.i << aaaa.k >> aaaa.l ** aaaa.m // aaaa.n
++):
++    return True
++if (
++    ~aaaaaaaa.a + aaaaaaaa.b - aaaaaaaa.c @ aaaaaaaa.d / aaaaaaaa.e
++    | aaaaaaaa.f & aaaaaaaa.g % aaaaaaaa.h
++    ^ aaaaaaaa.i << aaaaaaaa.k >> aaaaaaaa.l ** aaaaaaaa.m // aaaaaaaa.n
++):
++    return True
++if (
++    ~aaaaaaaaaaaaaaaa.a
++    + aaaaaaaaaaaaaaaa.b
++    - aaaaaaaaaaaaaaaa.c * aaaaaaaaaaaaaaaa.d @ aaaaaaaaaaaaaaaa.e
++    | aaaaaaaaaaaaaaaa.f & aaaaaaaaaaaaaaaa.g % aaaaaaaaaaaaaaaa.h
++    ^ aaaaaaaaaaaaaaaa.i
++    << aaaaaaaaaaaaaaaa.k
++    >> aaaaaaaaaaaaaaaa.l ** aaaaaaaaaaaaaaaa.m // aaaaaaaaaaaaaaaa.n
++):
++    return True
++(
++    aaaaaaaaaaaaaaaa
++    + aaaaaaaaaaaaaaaa
++    - aaaaaaaaaaaaaaaa
++    * (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
++    / (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
++)
+ aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa
+-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa >> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++(
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    >> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++)
+ bbbb >> bbbb * bbbb
+-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ^bbbb.a & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa^aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++(
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    ^ bbbb.a & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    ^ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++)
+ last_call()
+ # standalone comment at ENDMARKER
diff --git a/.vim/bundle/black/tests/data/expression.py b/.vim/bundle/black/tests/data/expression.py
new file mode 100644 (file)
index 0000000..d13450c
--- /dev/null
@@ -0,0 +1,630 @@
+...
+'some_string'
+b'\\xa3'
+Name
+None
+True
+False
+1
+1.0
+1j
+True or False
+True or False or None
+True and False
+True and False and None
+(Name1 and Name2) or Name3
+Name1 and Name2 or Name3
+Name1 or (Name2 and Name3)
+Name1 or Name2 and Name3
+(Name1 and Name2) or (Name3 and Name4)
+Name1 and Name2 or Name3 and Name4
+Name1 or (Name2 and Name3) or Name4
+Name1 or Name2 and Name3 or Name4
+v1 << 2
+1 >> v2
+1 % finished
+1 + v2 - v3 * 4 ^ 5 ** v6 / 7 // 8
+((1 + v2) - (v3 * 4)) ^ (((5 ** v6) / 7) // 8)
+not great
+~great
++value
+-1
+~int and not v1 ^ 123 + v2 | True
+(~int) and (not ((v1 ^ (123 + v2)) | True))
++really ** -confusing ** ~operator ** -precedence
+flags & ~ select.EPOLLIN and waiters.write_task is not None
+lambda arg: None
+lambda a=True: a
+lambda a, b, c=True: a
+lambda a, b, c=True, *, d=(1 << v2), e='str': a
+lambda a, b, c=True, *vararg, d=(v1 << 2), e='str', **kwargs: a + b
+manylambdas = lambda x=lambda y=lambda z=1: z: y(): x()
+foo = (lambda port_id, ignore_missing: {"port1": port1_resource, "port2": port2_resource}[port_id])
+1 if True else 2
+str or None if True else str or bytes or None
+(str or None) if True else (str or bytes or None)
+str or None if (1 if True else 2) else str or bytes or None
+(str or None) if (1 if True else 2) else (str or bytes or None)
+((super_long_variable_name or None) if (1 if super_long_test_name else 2) else (str or bytes or None))
+{'2.7': dead, '3.7': (long_live or die_hard)}
+{'2.7': dead, '3.7': (long_live or die_hard), **{'3.6': verygood}}
+{**a, **b, **c}
+{'2.7', '3.6', '3.7', '3.8', '3.9', ('4.0' if gilectomy else '3.10')}
+({'a': 'b'}, (True or False), (+value), 'string', b'bytes') or None
+()
+(1,)
+(1, 2)
+(1, 2, 3)
+[]
+[1, 2, 3, 4, 5, 6, 7, 8, 9, (10 or A), (11 or B), (12 or C)]
+[1, 2, 3,]
+[*a]
+[*range(10)]
+[*a, 4, 5,]
+[4, *a, 5,]
+[this_is_a_very_long_variable_which_will_force_a_delimiter_split, element, another, *more]
+{i for i in (1, 2, 3)}
+{(i ** 2) for i in (1, 2, 3)}
+{(i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))}
+{((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)}
+[i for i in (1, 2, 3)]
+[(i ** 2) for i in (1, 2, 3)]
+[(i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))]
+[((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)]
+{i: 0 for i in (1, 2, 3)}
+{i: j for i, j in ((1, 'a'), (2, 'b'), (3, 'c'))}
+{a: b * 2 for a, b in dictionary.items()}
+{a: b * -2 for a, b in dictionary.items()}
+{k: v for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension}
+Python3 > Python2 > COBOL
+Life is Life
+call()
+call(arg)
+call(kwarg='hey')
+call(arg, kwarg='hey')
+call(arg, another, kwarg='hey', **kwargs)
+call(this_is_a_very_long_variable_which_will_force_a_delimiter_split, arg, another, kwarg='hey', **kwargs)  # note: no trailing comma pre-3.6
+call(*gidgets[:2])
+call(a, *gidgets[:2])
+call(**self.screen_kwargs)
+call(b, **self.screen_kwargs)
+lukasz.langa.pl
+call.me(maybe)
+1 .real
+1.0 .real
+....__class__
+list[str]
+dict[str, int]
+tuple[str, ...]
+tuple[
+    str, int, float, dict[str, int]
+]
+tuple[str, int, float, dict[str, int],]
+very_long_variable_name_filters: t.List[
+    t.Tuple[str, t.Union[str, t.List[t.Optional[str]]]],
+]
+xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+)
+xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+)
+xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[
+    ..., List[SomeClass]
+] = classmethod(sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__))  # type: ignore
+slice[0]
+slice[0:1]
+slice[0:1:2]
+slice[:]
+slice[:-1]
+slice[1:]
+slice[::-1]
+slice[d :: d + 1]
+slice[:c, c - 1]
+numpy[:, 0:1]
+numpy[:, :-1]
+numpy[0, :]
+numpy[:, i]
+numpy[0, :2]
+numpy[:N, 0]
+numpy[:2, :4]
+numpy[2:4, 1:5]
+numpy[4:, 2:]
+numpy[:, (0, 1, 2, 5)]
+numpy[0, [0]]
+numpy[:, [i]]
+numpy[1 : c + 1, c]
+numpy[-(c + 1) :, d]
+numpy[:, l[-2]]
+numpy[:, ::-1]
+numpy[np.newaxis, :]
+(str or None) if (sys.version_info[0] > (3,)) else (str or bytes or None)
+{'2.7': dead, '3.7': long_live or die_hard}
+{'2.7', '3.6', '3.7', '3.8', '3.9', '4.0' if gilectomy else '3.10'}
+[1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or A, 11 or B, 12 or C]
+(SomeName)
+SomeName
+(Good, Bad, Ugly)
+(i for i in (1, 2, 3))
+((i ** 2) for i in (1, 2, 3))
+((i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c')))
+(((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3))
+(*starred,)
+{"id": "1","type": "type","started_at": now(),"ended_at": now() + timedelta(days=10),"priority": 1,"import_session_id": 1,**kwargs}
+a = (1,)
+b = 1,
+c = 1
+d = (1,) + a + (2,)
+e = (1,).count(1)
+f = 1, *range(10)
+g = 1, *"ten"
+what_is_up_with_those_new_coord_names = (coord_names + set(vars_to_create)) + set(vars_to_remove)
+what_is_up_with_those_new_coord_names = (coord_names | set(vars_to_create)) - set(vars_to_remove)
+result = session.query(models.Customer.id).filter(models.Customer.account_id == account_id, models.Customer.email == email_address).order_by(models.Customer.id.asc()).all()
+result = session.query(models.Customer.id).filter(models.Customer.account_id == account_id, models.Customer.email == email_address).order_by(models.Customer.id.asc(),).all()
+Ø = set()
+authors.łukasz.say_thanks()
+mapping = {
+    A: 0.25 * (10.0 / 12),
+    B: 0.1 * (10.0 / 12),
+    C: 0.1 * (10.0 / 12),
+    D: 0.1 * (10.0 / 12),
+}
+
+def gen():
+    yield from outside_of_generator
+    a = (yield)
+    b = ((yield))
+    c = (((yield)))
+
+async def f():
+    await some.complicated[0].call(with_args=(True or (1 is not 1)))
+print(* [] or [1])
+print(**{1: 3} if False else {x: x for x in range(3)})
+print(* lambda x: x)
+assert(not Test),("Short message")
+assert this is ComplexTest and not requirements.fit_in_a_single_line(force=False), "Short message"
+assert(((parens is TooMany)))
+for x, in (1,), (2,), (3,): ...
+for y in (): ...
+for z in (i for i in (1, 2, 3)): ...
+for i in (call()): ...
+for j in (1 + (2 + 3)): ...
+while(this and that): ...
+for addr_family, addr_type, addr_proto, addr_canonname, addr_sockaddr in socket.getaddrinfo('google.com', 'http'):
+    pass
+a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp not in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp is qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp is not qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+if (
+    threading.current_thread() != threading.main_thread() and
+    threading.current_thread() != threading.main_thread() or
+    signal.getsignal(signal.SIGINT) != signal.default_int_handler
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa &
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa *
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa /
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    ~ aaaa.a + aaaa.b - aaaa.c * aaaa.d / aaaa.e | aaaa.f & aaaa.g % aaaa.h ^ aaaa.i << aaaa.k >> aaaa.l ** aaaa.m // aaaa.n
+):
+    return True
+if (
+    ~ aaaaaaaa.a + aaaaaaaa.b - aaaaaaaa.c @ aaaaaaaa.d / aaaaaaaa.e | aaaaaaaa.f & aaaaaaaa.g % aaaaaaaa.h ^ aaaaaaaa.i << aaaaaaaa.k >> aaaaaaaa.l ** aaaaaaaa.m // aaaaaaaa.n
+):
+    return True
+if (
+    ~ aaaaaaaaaaaaaaaa.a + aaaaaaaaaaaaaaaa.b - aaaaaaaaaaaaaaaa.c * aaaaaaaaaaaaaaaa.d @ aaaaaaaaaaaaaaaa.e | aaaaaaaaaaaaaaaa.f & aaaaaaaaaaaaaaaa.g % aaaaaaaaaaaaaaaa.h ^ aaaaaaaaaaaaaaaa.i << aaaaaaaaaaaaaaaa.k >> aaaaaaaaaaaaaaaa.l ** aaaaaaaaaaaaaaaa.m // aaaaaaaaaaaaaaaa.n
+):
+    return True
+aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa - aaaaaaaaaaaaaaaa * (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa) / (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
+aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa >> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+bbbb >> bbbb * bbbb
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ^bbbb.a & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa^aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+last_call()
+# standalone comment at ENDMARKER
+
+
+# output
+
+
+...
+"some_string"
+b"\\xa3"
+Name
+None
+True
+False
+1
+1.0
+1j
+True or False
+True or False or None
+True and False
+True and False and None
+(Name1 and Name2) or Name3
+Name1 and Name2 or Name3
+Name1 or (Name2 and Name3)
+Name1 or Name2 and Name3
+(Name1 and Name2) or (Name3 and Name4)
+Name1 and Name2 or Name3 and Name4
+Name1 or (Name2 and Name3) or Name4
+Name1 or Name2 and Name3 or Name4
+v1 << 2
+1 >> v2
+1 % finished
+1 + v2 - v3 * 4 ^ 5 ** v6 / 7 // 8
+((1 + v2) - (v3 * 4)) ^ (((5 ** v6) / 7) // 8)
+not great
+~great
++value
+-1
+~int and not v1 ^ 123 + v2 | True
+(~int) and (not ((v1 ^ (123 + v2)) | True))
++(really ** -(confusing ** ~(operator ** -precedence)))
+flags & ~select.EPOLLIN and waiters.write_task is not None
+lambda arg: None
+lambda a=True: a
+lambda a, b, c=True: a
+lambda a, b, c=True, *, d=(1 << v2), e="str": a
+lambda a, b, c=True, *vararg, d=(v1 << 2), e="str", **kwargs: a + b
+manylambdas = lambda x=lambda y=lambda z=1: z: y(): x()
+foo = lambda port_id, ignore_missing: {
+    "port1": port1_resource,
+    "port2": port2_resource,
+}[port_id]
+1 if True else 2
+str or None if True else str or bytes or None
+(str or None) if True else (str or bytes or None)
+str or None if (1 if True else 2) else str or bytes or None
+(str or None) if (1 if True else 2) else (str or bytes or None)
+(
+    (super_long_variable_name or None)
+    if (1 if super_long_test_name else 2)
+    else (str or bytes or None)
+)
+{"2.7": dead, "3.7": (long_live or die_hard)}
+{"2.7": dead, "3.7": (long_live or die_hard), **{"3.6": verygood}}
+{**a, **b, **c}
+{"2.7", "3.6", "3.7", "3.8", "3.9", ("4.0" if gilectomy else "3.10")}
+({"a": "b"}, (True or False), (+value), "string", b"bytes") or None
+()
+(1,)
+(1, 2)
+(1, 2, 3)
+[]
+[1, 2, 3, 4, 5, 6, 7, 8, 9, (10 or A), (11 or B), (12 or C)]
+[
+    1,
+    2,
+    3,
+]
+[*a]
+[*range(10)]
+[
+    *a,
+    4,
+    5,
+]
+[
+    4,
+    *a,
+    5,
+]
+[
+    this_is_a_very_long_variable_which_will_force_a_delimiter_split,
+    element,
+    another,
+    *more,
+]
+{i for i in (1, 2, 3)}
+{(i ** 2) for i in (1, 2, 3)}
+{(i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c"))}
+{((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)}
+[i for i in (1, 2, 3)]
+[(i ** 2) for i in (1, 2, 3)]
+[(i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c"))]
+[((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)]
+{i: 0 for i in (1, 2, 3)}
+{i: j for i, j in ((1, "a"), (2, "b"), (3, "c"))}
+{a: b * 2 for a, b in dictionary.items()}
+{a: b * -2 for a, b in dictionary.items()}
+{
+    k: v
+    for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension
+}
+Python3 > Python2 > COBOL
+Life is Life
+call()
+call(arg)
+call(kwarg="hey")
+call(arg, kwarg="hey")
+call(arg, another, kwarg="hey", **kwargs)
+call(
+    this_is_a_very_long_variable_which_will_force_a_delimiter_split,
+    arg,
+    another,
+    kwarg="hey",
+    **kwargs
+)  # note: no trailing comma pre-3.6
+call(*gidgets[:2])
+call(a, *gidgets[:2])
+call(**self.screen_kwargs)
+call(b, **self.screen_kwargs)
+lukasz.langa.pl
+call.me(maybe)
+1 .real
+1.0 .real
+....__class__
+list[str]
+dict[str, int]
+tuple[str, ...]
+tuple[str, int, float, dict[str, int]]
+tuple[
+    str,
+    int,
+    float,
+    dict[str, int],
+]
+very_long_variable_name_filters: t.List[
+    t.Tuple[str, t.Union[str, t.List[t.Optional[str]]]],
+]
+xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+)
+xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+)
+xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(
+    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+)  # type: ignore
+slice[0]
+slice[0:1]
+slice[0:1:2]
+slice[:]
+slice[:-1]
+slice[1:]
+slice[::-1]
+slice[d :: d + 1]
+slice[:c, c - 1]
+numpy[:, 0:1]
+numpy[:, :-1]
+numpy[0, :]
+numpy[:, i]
+numpy[0, :2]
+numpy[:N, 0]
+numpy[:2, :4]
+numpy[2:4, 1:5]
+numpy[4:, 2:]
+numpy[:, (0, 1, 2, 5)]
+numpy[0, [0]]
+numpy[:, [i]]
+numpy[1 : c + 1, c]
+numpy[-(c + 1) :, d]
+numpy[:, l[-2]]
+numpy[:, ::-1]
+numpy[np.newaxis, :]
+(str or None) if (sys.version_info[0] > (3,)) else (str or bytes or None)
+{"2.7": dead, "3.7": long_live or die_hard}
+{"2.7", "3.6", "3.7", "3.8", "3.9", "4.0" if gilectomy else "3.10"}
+[1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or A, 11 or B, 12 or C]
+(SomeName)
+SomeName
+(Good, Bad, Ugly)
+(i for i in (1, 2, 3))
+((i ** 2) for i in (1, 2, 3))
+((i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c")))
+(((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3))
+(*starred,)
+{
+    "id": "1",
+    "type": "type",
+    "started_at": now(),
+    "ended_at": now() + timedelta(days=10),
+    "priority": 1,
+    "import_session_id": 1,
+    **kwargs,
+}
+a = (1,)
+b = (1,)
+c = 1
+d = (1,) + a + (2,)
+e = (1,).count(1)
+f = 1, *range(10)
+g = 1, *"ten"
+what_is_up_with_those_new_coord_names = (coord_names + set(vars_to_create)) + set(
+    vars_to_remove
+)
+what_is_up_with_those_new_coord_names = (coord_names | set(vars_to_create)) - set(
+    vars_to_remove
+)
+result = (
+    session.query(models.Customer.id)
+    .filter(
+        models.Customer.account_id == account_id, models.Customer.email == email_address
+    )
+    .order_by(models.Customer.id.asc())
+    .all()
+)
+result = (
+    session.query(models.Customer.id)
+    .filter(
+        models.Customer.account_id == account_id, models.Customer.email == email_address
+    )
+    .order_by(
+        models.Customer.id.asc(),
+    )
+    .all()
+)
+Ø = set()
+authors.łukasz.say_thanks()
+mapping = {
+    A: 0.25 * (10.0 / 12),
+    B: 0.1 * (10.0 / 12),
+    C: 0.1 * (10.0 / 12),
+    D: 0.1 * (10.0 / 12),
+}
+
+
+def gen():
+    yield from outside_of_generator
+    a = yield
+    b = yield
+    c = yield
+
+
+async def f():
+    await some.complicated[0].call(with_args=(True or (1 is not 1)))
+
+
+print(*[] or [1])
+print(**{1: 3} if False else {x: x for x in range(3)})
+print(*lambda x: x)
+assert not Test, "Short message"
+assert this is ComplexTest and not requirements.fit_in_a_single_line(
+    force=False
+), "Short message"
+assert parens is TooMany
+for (x,) in (1,), (2,), (3,):
+    ...
+for y in ():
+    ...
+for z in (i for i in (1, 2, 3)):
+    ...
+for i in call():
+    ...
+for j in 1 + (2 + 3):
+    ...
+while this and that:
+    ...
+for (
+    addr_family,
+    addr_type,
+    addr_proto,
+    addr_canonname,
+    addr_sockaddr,
+) in socket.getaddrinfo("google.com", "http"):
+    pass
+a = (
+    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
+    in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+)
+a = (
+    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
+    not in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+)
+a = (
+    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
+    is qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+)
+a = (
+    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
+    is not qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+)
+if (
+    threading.current_thread() != threading.main_thread()
+    and threading.current_thread() != threading.main_thread()
+    or signal.getsignal(signal.SIGINT) != signal.default_int_handler
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    - aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    * aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    / aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+):
+    return True
+if (
+    ~aaaa.a + aaaa.b - aaaa.c * aaaa.d / aaaa.e
+    | aaaa.f & aaaa.g % aaaa.h ^ aaaa.i << aaaa.k >> aaaa.l ** aaaa.m // aaaa.n
+):
+    return True
+if (
+    ~aaaaaaaa.a + aaaaaaaa.b - aaaaaaaa.c @ aaaaaaaa.d / aaaaaaaa.e
+    | aaaaaaaa.f & aaaaaaaa.g % aaaaaaaa.h
+    ^ aaaaaaaa.i << aaaaaaaa.k >> aaaaaaaa.l ** aaaaaaaa.m // aaaaaaaa.n
+):
+    return True
+if (
+    ~aaaaaaaaaaaaaaaa.a
+    + aaaaaaaaaaaaaaaa.b
+    - aaaaaaaaaaaaaaaa.c * aaaaaaaaaaaaaaaa.d @ aaaaaaaaaaaaaaaa.e
+    | aaaaaaaaaaaaaaaa.f & aaaaaaaaaaaaaaaa.g % aaaaaaaaaaaaaaaa.h
+    ^ aaaaaaaaaaaaaaaa.i
+    << aaaaaaaaaaaaaaaa.k
+    >> aaaaaaaaaaaaaaaa.l ** aaaaaaaaaaaaaaaa.m // aaaaaaaaaaaaaaaa.n
+):
+    return True
+(
+    aaaaaaaaaaaaaaaa
+    + aaaaaaaaaaaaaaaa
+    - aaaaaaaaaaaaaaaa
+    * (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
+    / (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
+)
+aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa
+(
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    >> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+)
+bbbb >> bbbb * bbbb
+(
+    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    ^ bbbb.a & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+    ^ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+)
+last_call()
+# standalone comment at ENDMARKER
diff --git a/.vim/bundle/black/tests/data/expression_skip_magic_trailing_comma.diff b/.vim/bundle/black/tests/data/expression_skip_magic_trailing_comma.diff
new file mode 100644 (file)
index 0000000..4a8a95c
--- /dev/null
@@ -0,0 +1,428 @@
+--- [Deterministic header]
++++ [Deterministic header]
+@@ -1,8 +1,8 @@
+ ...
+-'some_string'
+-b'\\xa3'
++"some_string"
++b"\\xa3"
+ Name
+ None
+ True
+ False
+ 1
+@@ -29,63 +29,84 @@
+ ~great
+ +value
+ -1
+ ~int and not v1 ^ 123 + v2 | True
+ (~int) and (not ((v1 ^ (123 + v2)) | True))
+-+really ** -confusing ** ~operator ** -precedence
+-flags & ~ select.EPOLLIN and waiters.write_task is not None
+++(really ** -(confusing ** ~(operator ** -precedence)))
++flags & ~select.EPOLLIN and waiters.write_task is not None
+ lambda arg: None
+ lambda a=True: a
+ lambda a, b, c=True: a
+-lambda a, b, c=True, *, d=(1 << v2), e='str': a
+-lambda a, b, c=True, *vararg, d=(v1 << 2), e='str', **kwargs: a + b
++lambda a, b, c=True, *, d=(1 << v2), e="str": a
++lambda a, b, c=True, *vararg, d=(v1 << 2), e="str", **kwargs: a + b
+ manylambdas = lambda x=lambda y=lambda z=1: z: y(): x()
+-foo = (lambda port_id, ignore_missing: {"port1": port1_resource, "port2": port2_resource}[port_id])
++foo = lambda port_id, ignore_missing: {
++    "port1": port1_resource,
++    "port2": port2_resource,
++}[port_id]
+ 1 if True else 2
+ str or None if True else str or bytes or None
+ (str or None) if True else (str or bytes or None)
+ str or None if (1 if True else 2) else str or bytes or None
+ (str or None) if (1 if True else 2) else (str or bytes or None)
+-((super_long_variable_name or None) if (1 if super_long_test_name else 2) else (str or bytes or None))
+-{'2.7': dead, '3.7': (long_live or die_hard)}
+-{'2.7': dead, '3.7': (long_live or die_hard), **{'3.6': verygood}}
++(
++    (super_long_variable_name or None)
++    if (1 if super_long_test_name else 2)
++    else (str or bytes or None)
++)
++{"2.7": dead, "3.7": (long_live or die_hard)}
++{"2.7": dead, "3.7": (long_live or die_hard), **{"3.6": verygood}}
+ {**a, **b, **c}
+-{'2.7', '3.6', '3.7', '3.8', '3.9', ('4.0' if gilectomy else '3.10')}
+-({'a': 'b'}, (True or False), (+value), 'string', b'bytes') or None
++{"2.7", "3.6", "3.7", "3.8", "3.9", ("4.0" if gilectomy else "3.10")}
++({"a": "b"}, (True or False), (+value), "string", b"bytes") or None
+ ()
+ (1,)
+ (1, 2)
+ (1, 2, 3)
+ []
+ [1, 2, 3, 4, 5, 6, 7, 8, 9, (10 or A), (11 or B), (12 or C)]
+-[1, 2, 3,]
++[1, 2, 3]
+ [*a]
+ [*range(10)]
+-[*a, 4, 5,]
+-[4, *a, 5,]
+-[this_is_a_very_long_variable_which_will_force_a_delimiter_split, element, another, *more]
++[*a, 4, 5]
++[4, *a, 5]
++[
++    this_is_a_very_long_variable_which_will_force_a_delimiter_split,
++    element,
++    another,
++    *more,
++]
+ {i for i in (1, 2, 3)}
+ {(i ** 2) for i in (1, 2, 3)}
+-{(i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))}
++{(i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c"))}
+ {((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)}
+ [i for i in (1, 2, 3)]
+ [(i ** 2) for i in (1, 2, 3)]
+-[(i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))]
++[(i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c"))]
+ [((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3)]
+ {i: 0 for i in (1, 2, 3)}
+-{i: j for i, j in ((1, 'a'), (2, 'b'), (3, 'c'))}
++{i: j for i, j in ((1, "a"), (2, "b"), (3, "c"))}
+ {a: b * 2 for a, b in dictionary.items()}
+ {a: b * -2 for a, b in dictionary.items()}
+-{k: v for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension}
++{
++    k: v
++    for k, v in this_is_a_very_long_variable_which_will_cause_a_trailing_comma_which_breaks_the_comprehension
++}
+ Python3 > Python2 > COBOL
+ Life is Life
+ call()
+ call(arg)
+-call(kwarg='hey')
+-call(arg, kwarg='hey')
+-call(arg, another, kwarg='hey', **kwargs)
+-call(this_is_a_very_long_variable_which_will_force_a_delimiter_split, arg, another, kwarg='hey', **kwargs)  # note: no trailing comma pre-3.6
++call(kwarg="hey")
++call(arg, kwarg="hey")
++call(arg, another, kwarg="hey", **kwargs)
++call(
++    this_is_a_very_long_variable_which_will_force_a_delimiter_split,
++    arg,
++    another,
++    kwarg="hey",
++    **kwargs
++)  # note: no trailing comma pre-3.6
+ call(*gidgets[:2])
+ call(a, *gidgets[:2])
+ call(**self.screen_kwargs)
+ call(b, **self.screen_kwargs)
+ lukasz.langa.pl
+@@ -94,26 +115,24 @@
+ 1.0 .real
+ ....__class__
+ list[str]
+ dict[str, int]
+ tuple[str, ...]
+-tuple[
+-    str, int, float, dict[str, int]
+-]
++tuple[str, int, float, dict[str, int]]
+ tuple[str, int, float, dict[str, int],]
+ very_long_variable_name_filters: t.List[
+     t.Tuple[str, t.Union[str, t.List[t.Optional[str]]]],
+ ]
+ xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+     sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+ )
+ xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(  # type: ignore
+     sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
+ )
+-xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[
+-    ..., List[SomeClass]
+-] = classmethod(sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__))  # type: ignore
++xxxx_xxx_xxxx_xxxxx_xxxx_xxx: Callable[..., List[SomeClass]] = classmethod(
++    sync(async_xxxx_xxx_xxxx_xxxxx_xxxx_xxx.__func__)
++)  # type: ignore
+ slice[0]
+ slice[0:1]
+ slice[0:1:2]
+ slice[:]
+ slice[:-1]
+@@ -137,118 +156,197 @@
+ numpy[-(c + 1) :, d]
+ numpy[:, l[-2]]
+ numpy[:, ::-1]
+ numpy[np.newaxis, :]
+ (str or None) if (sys.version_info[0] > (3,)) else (str or bytes or None)
+-{'2.7': dead, '3.7': long_live or die_hard}
+-{'2.7', '3.6', '3.7', '3.8', '3.9', '4.0' if gilectomy else '3.10'}
++{"2.7": dead, "3.7": long_live or die_hard}
++{"2.7", "3.6", "3.7", "3.8", "3.9", "4.0" if gilectomy else "3.10"}
+ [1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or A, 11 or B, 12 or C]
+ (SomeName)
+ SomeName
+ (Good, Bad, Ugly)
+ (i for i in (1, 2, 3))
+ ((i ** 2) for i in (1, 2, 3))
+-((i ** 2) for i, _ in ((1, 'a'), (2, 'b'), (3, 'c')))
++((i ** 2) for i, _ in ((1, "a"), (2, "b"), (3, "c")))
+ (((i ** 2) + j) for i in (1, 2, 3) for j in (1, 2, 3))
+ (*starred,)
+-{"id": "1","type": "type","started_at": now(),"ended_at": now() + timedelta(days=10),"priority": 1,"import_session_id": 1,**kwargs}
++{
++    "id": "1",
++    "type": "type",
++    "started_at": now(),
++    "ended_at": now() + timedelta(days=10),
++    "priority": 1,
++    "import_session_id": 1,
++    **kwargs,
++}
+ a = (1,)
+-b = 1,
++b = (1,)
+ c = 1
+ d = (1,) + a + (2,)
+ e = (1,).count(1)
+ f = 1, *range(10)
+ g = 1, *"ten"
+-what_is_up_with_those_new_coord_names = (coord_names + set(vars_to_create)) + set(vars_to_remove)
+-what_is_up_with_those_new_coord_names = (coord_names | set(vars_to_create)) - set(vars_to_remove)
+-result = session.query(models.Customer.id).filter(models.Customer.account_id == account_id, models.Customer.email == email_address).order_by(models.Customer.id.asc()).all()
+-result = session.query(models.Customer.id).filter(models.Customer.account_id == account_id, models.Customer.email == email_address).order_by(models.Customer.id.asc(),).all()
++what_is_up_with_those_new_coord_names = (coord_names + set(vars_to_create)) + set(
++    vars_to_remove
++)
++what_is_up_with_those_new_coord_names = (coord_names | set(vars_to_create)) - set(
++    vars_to_remove
++)
++result = (
++    session.query(models.Customer.id)
++    .filter(
++        models.Customer.account_id == account_id, models.Customer.email == email_address
++    )
++    .order_by(models.Customer.id.asc())
++    .all()
++)
++result = (
++    session.query(models.Customer.id)
++    .filter(
++        models.Customer.account_id == account_id, models.Customer.email == email_address
++    )
++    .order_by(models.Customer.id.asc())
++    .all()
++)
+ Ø = set()
+ authors.łukasz.say_thanks()
+ mapping = {
+     A: 0.25 * (10.0 / 12),
+     B: 0.1 * (10.0 / 12),
+     C: 0.1 * (10.0 / 12),
+     D: 0.1 * (10.0 / 12),
+ }
++
+ def gen():
+     yield from outside_of_generator
+-    a = (yield)
+-    b = ((yield))
+-    c = (((yield)))
++    a = yield
++    b = yield
++    c = yield
++
+ async def f():
+     await some.complicated[0].call(with_args=(True or (1 is not 1)))
+-print(* [] or [1])
++
++
++print(*[] or [1])
+ print(**{1: 3} if False else {x: x for x in range(3)})
+-print(* lambda x: x)
+-assert(not Test),("Short message")
+-assert this is ComplexTest and not requirements.fit_in_a_single_line(force=False), "Short message"
+-assert(((parens is TooMany)))
+-for x, in (1,), (2,), (3,): ...
+-for y in (): ...
+-for z in (i for i in (1, 2, 3)): ...
+-for i in (call()): ...
+-for j in (1 + (2 + 3)): ...
+-while(this and that): ...
+-for addr_family, addr_type, addr_proto, addr_canonname, addr_sockaddr in socket.getaddrinfo('google.com', 'http'):
++print(*lambda x: x)
++assert not Test, "Short message"
++assert this is ComplexTest and not requirements.fit_in_a_single_line(
++    force=False
++), "Short message"
++assert parens is TooMany
++for (x,) in (1,), (2,), (3,):
++    ...
++for y in ():
++    ...
++for z in (i for i in (1, 2, 3)):
++    ...
++for i in call():
++    ...
++for j in 1 + (2 + 3):
++    ...
++while this and that:
++    ...
++for (
++    addr_family,
++    addr_type,
++    addr_proto,
++    addr_canonname,
++    addr_sockaddr,
++) in socket.getaddrinfo("google.com", "http"):
+     pass
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp not in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp is qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-a = aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp is not qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
+-if (
+-    threading.current_thread() != threading.main_thread() and
+-    threading.current_thread() != threading.main_thread() or
+-    signal.getsignal(signal.SIGINT) != signal.default_int_handler
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa &
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa *
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa /
+-    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+-):
+-    return True
+-if (
+-    ~ aaaa.a + aaaa.b - aaaa.c * aaaa.d / aaaa.e | aaaa.f & aaaa.g % aaaa.h ^ aaaa.i << aaaa.k >> aaaa.l ** aaaa.m // aaaa.n
+-):
+-    return True
+-if (
+-    ~ aaaaaaaa.a + aaaaaaaa.b - aaaaaaaa.c @ aaaaaaaa.d / aaaaaaaa.e | aaaaaaaa.f & aaaaaaaa.g % aaaaaaaa.h ^ aaaaaaaa.i << aaaaaaaa.k >> aaaaaaaa.l ** aaaaaaaa.m // aaaaaaaa.n
+-):
+-    return True
+-if (
+-    ~ aaaaaaaaaaaaaaaa.a + aaaaaaaaaaaaaaaa.b - aaaaaaaaaaaaaaaa.c * aaaaaaaaaaaaaaaa.d @ aaaaaaaaaaaaaaaa.e | aaaaaaaaaaaaaaaa.f & aaaaaaaaaaaaaaaa.g % aaaaaaaaaaaaaaaa.h ^ aaaaaaaaaaaaaaaa.i << aaaaaaaaaaaaaaaa.k >> aaaaaaaaaaaaaaaa.l ** aaaaaaaaaaaaaaaa.m // aaaaaaaaaaaaaaaa.n
+-):
+-    return True
+-aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa - aaaaaaaaaaaaaaaa * (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa) / (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    not in qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    is qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++a = (
++    aaaa.bbbb.cccc.dddd.eeee.ffff.gggg.hhhh.iiii.jjjj.kkkk.llll.mmmm.nnnn.oooo.pppp
++    is not qqqq.rrrr.ssss.tttt.uuuu.vvvv.xxxx.yyyy.zzzz
++)
++if (
++    threading.current_thread() != threading.main_thread()
++    and threading.current_thread() != threading.main_thread()
++    or signal.getsignal(signal.SIGINT) != signal.default_int_handler
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    - aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    * aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    / aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++):
++    return True
++if (
++    ~aaaa.a + aaaa.b - aaaa.c * aaaa.d / aaaa.e
++    | aaaa.f & aaaa.g % aaaa.h ^ aaaa.i << aaaa.k >> aaaa.l ** aaaa.m // aaaa.n
++):
++    return True
++if (
++    ~aaaaaaaa.a + aaaaaaaa.b - aaaaaaaa.c @ aaaaaaaa.d / aaaaaaaa.e
++    | aaaaaaaa.f & aaaaaaaa.g % aaaaaaaa.h
++    ^ aaaaaaaa.i << aaaaaaaa.k >> aaaaaaaa.l ** aaaaaaaa.m // aaaaaaaa.n
++):
++    return True
++if (
++    ~aaaaaaaaaaaaaaaa.a
++    + aaaaaaaaaaaaaaaa.b
++    - aaaaaaaaaaaaaaaa.c * aaaaaaaaaaaaaaaa.d @ aaaaaaaaaaaaaaaa.e
++    | aaaaaaaaaaaaaaaa.f & aaaaaaaaaaaaaaaa.g % aaaaaaaaaaaaaaaa.h
++    ^ aaaaaaaaaaaaaaaa.i
++    << aaaaaaaaaaaaaaaa.k
++    >> aaaaaaaaaaaaaaaa.l ** aaaaaaaaaaaaaaaa.m // aaaaaaaaaaaaaaaa.n
++):
++    return True
++(
++    aaaaaaaaaaaaaaaa
++    + aaaaaaaaaaaaaaaa
++    - aaaaaaaaaaaaaaaa
++    * (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
++    / (aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa)
++)
+ aaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaa
+-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa >> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++(
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    >> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++)
+ bbbb >> bbbb * bbbb
+-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ^bbbb.a & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa^aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++(
++    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    ^ bbbb.a & aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++    ^ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
++)
+ last_call()
+ # standalone comment at ENDMARKER
diff --git a/.vim/bundle/black/tests/data/fmtonoff.py b/.vim/bundle/black/tests/data/fmtonoff.py
new file mode 100644 (file)
index 0000000..5a50eb1
--- /dev/null
@@ -0,0 +1,413 @@
+#!/usr/bin/env python3
+import asyncio
+import sys
+
+from third_party import X, Y, Z
+
+from library import some_connection, \
+                    some_decorator
+# fmt: off
+from third_party import (X,
+                         Y, Z)
+# fmt: on
+f'trigger 3.6 mode'
+# Comment 1
+
+# Comment 2
+
+# fmt: off
+def func_no_args():
+  a; b; c
+  if True: raise RuntimeError
+  if False: ...
+  for i in range(10):
+    print(i)
+    continue
+  exec('new-style exec', {}, {})
+  return None
+async def coroutine(arg, exec=False):
+ 'Single-line docstring. Multiline is harder to reformat.'
+ async with some_connection() as conn:
+     await conn.do_what_i_mean('SELECT bobby, tables FROM xkcd', timeout=2)
+ await asyncio.sleep(1)
+@asyncio.coroutine
+@some_decorator(
+with_args=True,
+many_args=[1,2,3]
+)
+def function_signature_stress_test(number:int,no_annotation=None,text:str='default',* ,debug:bool=False,**kwargs) -> str:
+ return text[number:-1]
+# fmt: on
+def spaces(a=1, b=(), c=[], d={}, e=True, f=-1, g=1 if False else 2, h="", i=r''):
+ offset = attr.ib(default=attr.Factory( lambda: _r.uniform(1, 2)))
+ assert task._cancel_stack[:len(old_stack)] == old_stack
+def spaces_types(a: int = 1, b: tuple = (), c: list = [], d: dict = {}, e: bool = True, f: int = -1, g: int = 1 if False else 2, h: str = "", i: str = r''): ...
+def spaces2(result= _core.Value(None)):
+ ...
+something = {
+    # fmt: off
+    key: 'value',
+}
+
+def subscriptlist():
+    atom[
+        # fmt: off
+        'some big and',
+        'complex subscript',
+        # fmt: on
+        goes + here, andhere,
+       ]
+
+def import_as_names():
+    # fmt: off
+    from hello import a,        b
+    'unformatted'
+    # fmt: on
+
+def testlist_star_expr():
+    # fmt: off
+    a , b = *hello
+    'unformatted'
+    # fmt: on
+
+def yield_expr():
+    # fmt: off
+    yield hello
+    'unformatted'
+    # fmt: on
+    'formatted'
+    # fmt: off
+    ( yield hello )
+    'unformatted'
+    # fmt: on
+
+def example(session):
+    # fmt: off
+    result = session\
+        .query(models.Customer.id)\
+        .filter(models.Customer.account_id == account_id,
+                models.Customer.email == email_address)\
+        .order_by(models.Customer.id.asc())\
+        .all()
+    # fmt: on
+def off_and_on_without_data():
+    """All comments here are technically on the same prefix.
+
+    The comments between will be formatted. This is a known limitation.
+    """
+    # fmt: off
+
+
+        #hey, that won't work
+
+
+    # fmt: on
+    pass
+def on_and_off_broken():
+    """Another known limitation."""
+    # fmt: on
+    # fmt: off
+    this=should.not_be.formatted()
+    and_=indeed . it  is  not  formatted
+    because . the . handling . inside . generate_ignored_nodes()
+    now . considers . multiple . fmt . directives . within . one . prefix
+    # fmt: on
+    # fmt: off
+        # ...but comments still get reformatted even though they should not be
+    # fmt: on
+def long_lines():
+    if True:
+        typedargslist.extend(
+            gen_annotated_params(ast_args.kwonlyargs, ast_args.kw_defaults, parameters, implicit_default=True)
+        )
+        # fmt: off
+        a = (
+            unnecessary_bracket()
+        )
+        # fmt: on
+    _type_comment_re = re.compile(
+        r"""
+        ^
+        [\t ]*
+        \#[ ]type:[ ]*
+        (?P<type>
+            [^#\t\n]+?
+        )
+        (?<!ignore)     # note: this will force the non-greedy + in <type> to match
+                        # a trailing space which is why we need the silliness below
+        (?<!ignore[ ]{1})(?<!ignore[ ]{2})(?<!ignore[ ]{3})(?<!ignore[ ]{4})
+        (?<!ignore[ ]{5})(?<!ignore[ ]{6})(?<!ignore[ ]{7})(?<!ignore[ ]{8})
+        (?<!ignore[ ]{9})(?<!ignore[ ]{10})
+        [\t ]*
+        (?P<nl>
+            (?:\#[^\n]*)?
+            \n?
+        )
+        $
+        """,
+        # fmt: off
+        re.MULTILINE|re.VERBOSE
+        # fmt: on
+    )
+def single_literal_yapf_disable():
+    """Black does not support this."""
+    BAZ = {
+        (1, 2, 3, 4),
+        (5, 6, 7, 8),
+        (9, 10, 11, 12)
+    }  # yapf: disable
+cfg.rule(
+    "Default", "address",
+    xxxx_xxxx=["xxx-xxxxxx-xxxxxxxxxx"],
+    xxxxxx="xx_xxxxx", xxxxxxx="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
+    xxxxxxxxx_xxxx=True, xxxxxxxx_xxxxxxxxxx=False,
+    xxxxxx_xxxxxx=2, xxxxxx_xxxxx_xxxxxxxx=70, xxxxxx_xxxxxx_xxxxx=True,
+    # fmt: off
+    xxxxxxx_xxxxxxxxxxxx={
+        "xxxxxxxx": {
+            "xxxxxx": False,
+            "xxxxxxx": False,
+            "xxxx_xxxxxx": "xxxxx",
+        },
+        "xxxxxxxx-xxxxx": {
+            "xxxxxx": False,
+            "xxxxxxx": True,
+            "xxxx_xxxxxx": "xxxxxx",
+        },
+    },
+    # fmt: on
+    xxxxxxxxxx_xxxxxxxxxxx_xxxxxxx_xxxxxxxxx=5
+)
+# fmt: off
+yield  'hello'
+# No formatting to the end of the file
+l=[1,2,3]
+d={'a':1,
+   'b':2}
+
+# output
+
+
+#!/usr/bin/env python3
+import asyncio
+import sys
+
+from third_party import X, Y, Z
+
+from library import some_connection, some_decorator
+
+# fmt: off
+from third_party import (X,
+                         Y, Z)
+# fmt: on
+f"trigger 3.6 mode"
+# Comment 1
+
+# Comment 2
+
+# fmt: off
+def func_no_args():
+  a; b; c
+  if True: raise RuntimeError
+  if False: ...
+  for i in range(10):
+    print(i)
+    continue
+  exec('new-style exec', {}, {})
+  return None
+async def coroutine(arg, exec=False):
+ 'Single-line docstring. Multiline is harder to reformat.'
+ async with some_connection() as conn:
+     await conn.do_what_i_mean('SELECT bobby, tables FROM xkcd', timeout=2)
+ await asyncio.sleep(1)
+@asyncio.coroutine
+@some_decorator(
+with_args=True,
+many_args=[1,2,3]
+)
+def function_signature_stress_test(number:int,no_annotation=None,text:str='default',* ,debug:bool=False,**kwargs) -> str:
+ return text[number:-1]
+# fmt: on
+def spaces(a=1, b=(), c=[], d={}, e=True, f=-1, g=1 if False else 2, h="", i=r""):
+    offset = attr.ib(default=attr.Factory(lambda: _r.uniform(1, 2)))
+    assert task._cancel_stack[: len(old_stack)] == old_stack
+
+
+def spaces_types(
+    a: int = 1,
+    b: tuple = (),
+    c: list = [],
+    d: dict = {},
+    e: bool = True,
+    f: int = -1,
+    g: int = 1 if False else 2,
+    h: str = "",
+    i: str = r"",
+):
+    ...
+
+
+def spaces2(result=_core.Value(None)):
+    ...
+
+
+something = {
+    # fmt: off
+    key: 'value',
+}
+
+
+def subscriptlist():
+    atom[
+        # fmt: off
+        'some big and',
+        'complex subscript',
+        # fmt: on
+        goes + here,
+        andhere,
+    ]
+
+
+def import_as_names():
+    # fmt: off
+    from hello import a,        b
+    'unformatted'
+    # fmt: on
+
+
+def testlist_star_expr():
+    # fmt: off
+    a , b = *hello
+    'unformatted'
+    # fmt: on
+
+
+def yield_expr():
+    # fmt: off
+    yield hello
+    'unformatted'
+    # fmt: on
+    "formatted"
+    # fmt: off
+    ( yield hello )
+    'unformatted'
+    # fmt: on
+
+
+def example(session):
+    # fmt: off
+    result = session\
+        .query(models.Customer.id)\
+        .filter(models.Customer.account_id == account_id,
+                models.Customer.email == email_address)\
+        .order_by(models.Customer.id.asc())\
+        .all()
+    # fmt: on
+
+
+def off_and_on_without_data():
+    """All comments here are technically on the same prefix.
+
+    The comments between will be formatted. This is a known limitation.
+    """
+    # fmt: off
+
+    # hey, that won't work
+
+    # fmt: on
+    pass
+
+
+def on_and_off_broken():
+    """Another known limitation."""
+    # fmt: on
+    # fmt: off
+    this=should.not_be.formatted()
+    and_=indeed . it  is  not  formatted
+    because . the . handling . inside . generate_ignored_nodes()
+    now . considers . multiple . fmt . directives . within . one . prefix
+    # fmt: on
+    # fmt: off
+    # ...but comments still get reformatted even though they should not be
+    # fmt: on
+
+
+def long_lines():
+    if True:
+        typedargslist.extend(
+            gen_annotated_params(
+                ast_args.kwonlyargs,
+                ast_args.kw_defaults,
+                parameters,
+                implicit_default=True,
+            )
+        )
+        # fmt: off
+        a = (
+            unnecessary_bracket()
+        )
+        # fmt: on
+    _type_comment_re = re.compile(
+        r"""
+        ^
+        [\t ]*
+        \#[ ]type:[ ]*
+        (?P<type>
+            [^#\t\n]+?
+        )
+        (?<!ignore)     # note: this will force the non-greedy + in <type> to match
+                        # a trailing space which is why we need the silliness below
+        (?<!ignore[ ]{1})(?<!ignore[ ]{2})(?<!ignore[ ]{3})(?<!ignore[ ]{4})
+        (?<!ignore[ ]{5})(?<!ignore[ ]{6})(?<!ignore[ ]{7})(?<!ignore[ ]{8})
+        (?<!ignore[ ]{9})(?<!ignore[ ]{10})
+        [\t ]*
+        (?P<nl>
+            (?:\#[^\n]*)?
+            \n?
+        )
+        $
+        """,
+        # fmt: off
+        re.MULTILINE|re.VERBOSE
+        # fmt: on
+    )
+
+
+def single_literal_yapf_disable():
+    """Black does not support this."""
+    BAZ = {(1, 2, 3, 4), (5, 6, 7, 8), (9, 10, 11, 12)}  # yapf: disable
+
+
+cfg.rule(
+    "Default",
+    "address",
+    xxxx_xxxx=["xxx-xxxxxx-xxxxxxxxxx"],
+    xxxxxx="xx_xxxxx",
+    xxxxxxx="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
+    xxxxxxxxx_xxxx=True,
+    xxxxxxxx_xxxxxxxxxx=False,
+    xxxxxx_xxxxxx=2,
+    xxxxxx_xxxxx_xxxxxxxx=70,
+    xxxxxx_xxxxxx_xxxxx=True,
+    # fmt: off
+    xxxxxxx_xxxxxxxxxxxx={
+        "xxxxxxxx": {
+            "xxxxxx": False,
+            "xxxxxxx": False,
+            "xxxx_xxxxxx": "xxxxx",
+        },
+        "xxxxxxxx-xxxxx": {
+            "xxxxxx": False,
+            "xxxxxxx": True,
+            "xxxx_xxxxxx": "xxxxxx",
+        },
+    },
+    # fmt: on
+    xxxxxxxxxx_xxxxxxxxxxx_xxxxxxx_xxxxxxxxx=5,
+)
+# fmt: off
+yield  'hello'
+# No formatting to the end of the file
+l=[1,2,3]
+d={'a':1,
+   'b':2}
diff --git a/.vim/bundle/black/tests/data/fmtonoff2.py b/.vim/bundle/black/tests/data/fmtonoff2.py
new file mode 100644 (file)
index 0000000..e8657c7
--- /dev/null
@@ -0,0 +1,40 @@
+import pytest
+
+TmSt = 1
+TmEx = 2
+
+# fmt: off
+
+# Test data:
+#   Position, Volume, State, TmSt/TmEx/None, [call, [arg1...]]
+
+@pytest.mark.parametrize('test', [
+
+    # Test don't manage the volume
+    [
+        ('stuff', 'in')
+    ],
+])
+def test_fader(test):
+    pass
+
+def check_fader(test):
+
+    pass
+
+def verify_fader(test):
+  # misaligned comment
+    pass
+
+def verify_fader(test):
+    """Hey, ho."""
+    assert test.passed()
+
+def test_calculate_fades():
+    calcs = [
+        # one is zero/none
+        (0, 4, 0, 0, 10,        0, 0, 6, 10),
+        (None, 4, 0, 0, 10,     0, 0, 6, 10),
+    ]
+
+# fmt: on
diff --git a/.vim/bundle/black/tests/data/fmtonoff3.py b/.vim/bundle/black/tests/data/fmtonoff3.py
new file mode 100644 (file)
index 0000000..4e3b024
--- /dev/null
@@ -0,0 +1,35 @@
+# fmt: off
+x = [
+    1, 2,
+    3, 4,
+]
+# fmt: on
+
+# fmt: off
+x = [
+    1, 2,
+    3, 4,
+]
+# fmt: on
+
+x = [
+    1, 2, 3, 4
+]
+
+# output
+
+# fmt: off
+x = [
+    1, 2,
+    3, 4,
+]
+# fmt: on
+
+# fmt: off
+x = [
+    1, 2,
+    3, 4,
+]
+# fmt: on
+
+x = [1, 2, 3, 4]
diff --git a/.vim/bundle/black/tests/data/fmtonoff4.py b/.vim/bundle/black/tests/data/fmtonoff4.py
new file mode 100644 (file)
index 0000000..4ca7079
--- /dev/null
@@ -0,0 +1,36 @@
+# fmt: off
+@test([
+    1, 2,
+    3, 4,
+])
+# fmt: on
+def f(): pass
+
+@test([
+    1, 2,
+    3, 4,
+])
+def f(): pass
+
+# output
+
+# fmt: off
+@test([
+    1, 2,
+    3, 4,
+])
+# fmt: on
+def f():
+    pass
+
+
+@test(
+    [
+        1,
+        2,
+        3,
+        4,
+    ]
+)
+def f():
+    pass
diff --git a/.vim/bundle/black/tests/data/fmtskip.py b/.vim/bundle/black/tests/data/fmtskip.py
new file mode 100644 (file)
index 0000000..1d5836f
--- /dev/null
@@ -0,0 +1,3 @@
+a, b = 1, 2
+c =    6  # fmt: skip
+d = 5
diff --git a/.vim/bundle/black/tests/data/fmtskip2.py b/.vim/bundle/black/tests/data/fmtskip2.py
new file mode 100644 (file)
index 0000000..e624811
--- /dev/null
@@ -0,0 +1,17 @@
+l1 = ["This list should be broken up", "into multiple lines", "because it is way too long"]
+l2 = ["But this list shouldn't", "even though it also has", "way too many characters in it"]  # fmt: skip
+l3 = ["I have", "trailing comma", "so I should be braked",]
+
+# output
+
+l1 = [
+    "This list should be broken up",
+    "into multiple lines",
+    "because it is way too long",
+]
+l2 = ["But this list shouldn't", "even though it also has", "way too many characters in it"]  # fmt: skip
+l3 = [
+    "I have",
+    "trailing comma",
+    "so I should be braked",
+]
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/fmtskip3.py b/.vim/bundle/black/tests/data/fmtskip3.py
new file mode 100644 (file)
index 0000000..6e16688
--- /dev/null
@@ -0,0 +1,20 @@
+a  =    3
+# fmt: off
+b,    c = 1, 2
+d =    6  # fmt: skip
+e = 5
+# fmt: on
+f = ["This is a very long line that should be formatted into a clearer line ", "by rearranging."]
+
+# output
+
+a = 3
+# fmt: off
+b,    c = 1, 2
+d =    6  # fmt: skip
+e = 5
+# fmt: on
+f = [
+    "This is a very long line that should be formatted into a clearer line ",
+    "by rearranging.",
+]
diff --git a/.vim/bundle/black/tests/data/fmtskip4.py b/.vim/bundle/black/tests/data/fmtskip4.py
new file mode 100644 (file)
index 0000000..aadd77d
--- /dev/null
@@ -0,0 +1,13 @@
+a =   2
+# fmt: skip
+l = [1, 2, 3,]
+
+# output
+
+a = 2
+# fmt: skip
+l = [
+    1,
+    2,
+    3,
+]
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/fmtskip5.py b/.vim/bundle/black/tests/data/fmtskip5.py
new file mode 100644 (file)
index 0000000..d7b15e0
--- /dev/null
@@ -0,0 +1,22 @@
+a, b, c = 3, 4,       5
+if (
+    a ==    3
+    and b    != 9  # fmt: skip
+    and c is not None
+):
+    print("I'm good!")
+else:
+    print("I'm bad")
+
+
+# output
+
+a, b, c = 3, 4, 5
+if (
+    a == 3
+    and b    != 9  # fmt: skip
+    and c is not None
+):
+    print("I'm good!")
+else:
+    print("I'm bad")
diff --git a/.vim/bundle/black/tests/data/fmtskip6.py b/.vim/bundle/black/tests/data/fmtskip6.py
new file mode 100644 (file)
index 0000000..0a779fc
--- /dev/null
@@ -0,0 +1,13 @@
+class A:
+    def f(self):
+        for line in range(10):
+            if True:
+                pass  # fmt: skip
+
+# output
+
+class A:
+    def f(self):
+        for line in range(10):
+            if True:
+                pass  # fmt: skip
diff --git a/.vim/bundle/black/tests/data/force_py36.py b/.vim/bundle/black/tests/data/force_py36.py
new file mode 100644 (file)
index 0000000..cad935e
--- /dev/null
@@ -0,0 +1,16 @@
+# The input source must not contain any Py36-specific syntax (e.g. argument type
+# annotations, trailing comma after *rest) or this test becomes invalid.
+def long_function_name(argument_one, argument_two, argument_three, argument_four, argument_five, argument_six, *rest): ...
+# output
+# The input source must not contain any Py36-specific syntax (e.g. argument type
+# annotations, trailing comma after *rest) or this test becomes invalid.
+def long_function_name(
+    argument_one,
+    argument_two,
+    argument_three,
+    argument_four,
+    argument_five,
+    argument_six,
+    *rest,
+):
+    ...
diff --git a/.vim/bundle/black/tests/data/force_pyi.py b/.vim/bundle/black/tests/data/force_pyi.py
new file mode 100644 (file)
index 0000000..07ed93c
--- /dev/null
@@ -0,0 +1,65 @@
+from typing import Union
+
+@bird
+def zoo(): ...
+
+class A: ...
+@bar
+class B:
+    def BMethod(self) -> None: ...
+    @overload
+    def BMethod(self, arg : List[str]) -> None: ...
+
+class C: ...
+@hmm
+class D: ...
+class E: ...
+
+@baz
+def foo() -> None:
+    ...
+
+class F (A , C): ...
+def spam() -> None: ...
+
+@overload
+def spam(arg: str) -> str: ...
+
+var  : int = 1
+
+def eggs() -> Union[str, int]: ...
+
+# output
+
+from typing import Union
+
+@bird
+def zoo(): ...
+
+class A: ...
+
+@bar
+class B:
+    def BMethod(self) -> None: ...
+    @overload
+    def BMethod(self, arg: List[str]) -> None: ...
+
+class C: ...
+
+@hmm
+class D: ...
+
+class E: ...
+
+@baz
+def foo() -> None: ...
+
+class F(A, C): ...
+
+def spam() -> None: ...
+@overload
+def spam(arg: str) -> str: ...
+
+var: int = 1
+
+def eggs() -> Union[str, int]: ...
diff --git a/.vim/bundle/black/tests/data/fstring.py b/.vim/bundle/black/tests/data/fstring.py
new file mode 100644 (file)
index 0000000..4b33231
--- /dev/null
@@ -0,0 +1,21 @@
+f"f-string without formatted values is just a string"
+f"{{NOT a formatted value}}"
+f"{{NOT 'a' \"formatted\" \"value\"}}"
+f"some f-string with {a} {few():.2f} {formatted.values!r}"
+f'some f-string with {a} {few(""):.2f} {formatted.values!r}'
+f"{f'''{'nested'} inner'''} outer"
+f"\"{f'{nested} inner'}\" outer"
+f"space between opening braces: { {a for a in (1, 2, 3)}}"
+f'Hello \'{tricky + "example"}\''
+
+# output
+
+f"f-string without formatted values is just a string"
+f"{{NOT a formatted value}}"
+f'{{NOT \'a\' "formatted" "value"}}'
+f"some f-string with {a} {few():.2f} {formatted.values!r}"
+f'some f-string with {a} {few(""):.2f} {formatted.values!r}'
+f"{f'''{'nested'} inner'''} outer"
+f"\"{f'{nested} inner'}\" outer"
+f"space between opening braces: { {a for a in (1, 2, 3)}}"
+f'Hello \'{tricky + "example"}\''
diff --git a/.vim/bundle/black/tests/data/function.py b/.vim/bundle/black/tests/data/function.py
new file mode 100644 (file)
index 0000000..2d642c8
--- /dev/null
@@ -0,0 +1,247 @@
+#!/usr/bin/env python3
+import asyncio
+import sys
+
+from third_party import X, Y, Z
+
+from library import some_connection, \
+                    some_decorator
+f'trigger 3.6 mode'
+def func_no_args():
+  a; b; c
+  if True: raise RuntimeError
+  if False: ...
+  for i in range(10):
+    print(i)
+    continue
+  exec("new-style exec", {}, {})
+  return None
+async def coroutine(arg, exec=False):
+ "Single-line docstring. Multiline is harder to reformat."
+ async with some_connection() as conn:
+     await conn.do_what_i_mean('SELECT bobby, tables FROM xkcd', timeout=2)
+ await asyncio.sleep(1)
+@asyncio.coroutine
+@some_decorator(
+with_args=True,
+many_args=[1,2,3]
+)
+def function_signature_stress_test(number:int,no_annotation=None,text:str="default",* ,debug:bool=False,**kwargs) -> str:
+ return text[number:-1]
+def spaces(a=1, b=(), c=[], d={}, e=True, f=-1, g=1 if False else 2, h="", i=r''):
+ offset = attr.ib(default=attr.Factory( lambda: _r.uniform(10000, 200000)))
+ assert task._cancel_stack[:len(old_stack)] == old_stack
+def spaces_types(a: int = 1, b: tuple = (), c: list = [], d: dict = {}, e: bool = True, f: int = -1, g: int = 1 if False else 2, h: str = "", i: str = r''): ...
+def spaces2(result= _core.Value(None)):
+ assert fut is self._read_fut, (fut, self._read_fut)
+    # EMPTY LINE WITH WHITESPACE (this comment will be removed)
+def example(session):
+    result = session.query(models.Customer.id).filter(
+        models.Customer.account_id == account_id,
+        models.Customer.email == email_address,
+    ).order_by(
+        models.Customer.id.asc()
+    ).all()
+def long_lines():
+    if True:
+        typedargslist.extend(
+            gen_annotated_params(ast_args.kwonlyargs, ast_args.kw_defaults, parameters, implicit_default=True)
+        )
+        typedargslist.extend(
+            gen_annotated_params(
+                ast_args.kwonlyargs, ast_args.kw_defaults, parameters, implicit_default=True,
+                # trailing standalone comment
+            )
+        )
+    _type_comment_re = re.compile(
+        r"""
+        ^
+        [\t ]*
+        \#[ ]type:[ ]*
+        (?P<type>
+            [^#\t\n]+?
+        )
+        (?<!ignore)     # note: this will force the non-greedy + in <type> to match
+                        # a trailing space which is why we need the silliness below
+        (?<!ignore[ ]{1})(?<!ignore[ ]{2})(?<!ignore[ ]{3})(?<!ignore[ ]{4})
+        (?<!ignore[ ]{5})(?<!ignore[ ]{6})(?<!ignore[ ]{7})(?<!ignore[ ]{8})
+        (?<!ignore[ ]{9})(?<!ignore[ ]{10})
+        [\t ]*
+        (?P<nl>
+            (?:\#[^\n]*)?
+            \n?
+        )
+        $
+        """, re.MULTILINE | re.VERBOSE
+    )
+def trailing_comma():
+    mapping = {
+    A: 0.25 * (10.0 / 12),
+    B: 0.1 * (10.0 / 12),
+    C: 0.1 * (10.0 / 12),
+    D: 0.1 * (10.0 / 12),
+}
+def f(
+  a,
+  **kwargs,
+) -> A:
+    return (
+        yield from A(
+            very_long_argument_name1=very_long_value_for_the_argument,
+            very_long_argument_name2=very_long_value_for_the_argument,
+            **kwargs,
+        )
+    )
+def __await__(): return (yield)
+
+# output
+
+
+#!/usr/bin/env python3
+import asyncio
+import sys
+
+from third_party import X, Y, Z
+
+from library import some_connection, some_decorator
+
+f"trigger 3.6 mode"
+
+
+def func_no_args():
+    a
+    b
+    c
+    if True:
+        raise RuntimeError
+    if False:
+        ...
+    for i in range(10):
+        print(i)
+        continue
+    exec("new-style exec", {}, {})
+    return None
+
+
+async def coroutine(arg, exec=False):
+    "Single-line docstring. Multiline is harder to reformat."
+    async with some_connection() as conn:
+        await conn.do_what_i_mean("SELECT bobby, tables FROM xkcd", timeout=2)
+    await asyncio.sleep(1)
+
+
+@asyncio.coroutine
+@some_decorator(with_args=True, many_args=[1, 2, 3])
+def function_signature_stress_test(
+    number: int,
+    no_annotation=None,
+    text: str = "default",
+    *,
+    debug: bool = False,
+    **kwargs,
+) -> str:
+    return text[number:-1]
+
+
+def spaces(a=1, b=(), c=[], d={}, e=True, f=-1, g=1 if False else 2, h="", i=r""):
+    offset = attr.ib(default=attr.Factory(lambda: _r.uniform(10000, 200000)))
+    assert task._cancel_stack[: len(old_stack)] == old_stack
+
+
+def spaces_types(
+    a: int = 1,
+    b: tuple = (),
+    c: list = [],
+    d: dict = {},
+    e: bool = True,
+    f: int = -1,
+    g: int = 1 if False else 2,
+    h: str = "",
+    i: str = r"",
+):
+    ...
+
+
+def spaces2(result=_core.Value(None)):
+    assert fut is self._read_fut, (fut, self._read_fut)
+
+
+def example(session):
+    result = (
+        session.query(models.Customer.id)
+        .filter(
+            models.Customer.account_id == account_id,
+            models.Customer.email == email_address,
+        )
+        .order_by(models.Customer.id.asc())
+        .all()
+    )
+
+
+def long_lines():
+    if True:
+        typedargslist.extend(
+            gen_annotated_params(
+                ast_args.kwonlyargs,
+                ast_args.kw_defaults,
+                parameters,
+                implicit_default=True,
+            )
+        )
+        typedargslist.extend(
+            gen_annotated_params(
+                ast_args.kwonlyargs,
+                ast_args.kw_defaults,
+                parameters,
+                implicit_default=True,
+                # trailing standalone comment
+            )
+        )
+    _type_comment_re = re.compile(
+        r"""
+        ^
+        [\t ]*
+        \#[ ]type:[ ]*
+        (?P<type>
+            [^#\t\n]+?
+        )
+        (?<!ignore)     # note: this will force the non-greedy + in <type> to match
+                        # a trailing space which is why we need the silliness below
+        (?<!ignore[ ]{1})(?<!ignore[ ]{2})(?<!ignore[ ]{3})(?<!ignore[ ]{4})
+        (?<!ignore[ ]{5})(?<!ignore[ ]{6})(?<!ignore[ ]{7})(?<!ignore[ ]{8})
+        (?<!ignore[ ]{9})(?<!ignore[ ]{10})
+        [\t ]*
+        (?P<nl>
+            (?:\#[^\n]*)?
+            \n?
+        )
+        $
+        """,
+        re.MULTILINE | re.VERBOSE,
+    )
+
+
+def trailing_comma():
+    mapping = {
+        A: 0.25 * (10.0 / 12),
+        B: 0.1 * (10.0 / 12),
+        C: 0.1 * (10.0 / 12),
+        D: 0.1 * (10.0 / 12),
+    }
+
+
+def f(
+    a,
+    **kwargs,
+) -> A:
+    return (
+        yield from A(
+            very_long_argument_name1=very_long_value_for_the_argument,
+            very_long_argument_name2=very_long_value_for_the_argument,
+            **kwargs,
+        )
+    )
+
+
+def __await__():
+    return (yield)
diff --git a/.vim/bundle/black/tests/data/function2.py b/.vim/bundle/black/tests/data/function2.py
new file mode 100644 (file)
index 0000000..cfc259e
--- /dev/null
@@ -0,0 +1,58 @@
+def f(
+  a,
+  **kwargs,
+) -> A:
+    with cache_dir():
+        if something:
+            result = (
+                CliRunner().invoke(black.main, [str(src1), str(src2), "--diff", "--check"])
+            )
+    limited.append(-limited.pop())  # negate top
+    return A(
+        very_long_argument_name1=very_long_value_for_the_argument,
+        very_long_argument_name2=-very.long.value.for_the_argument,
+        **kwargs,
+    )
+def g():
+    "Docstring."
+    def inner():
+        pass
+    print("Inner defs should breathe a little.")
+def h():
+    def inner():
+        pass
+    print("Inner defs should breathe a little.")
+
+# output
+
+def f(
+    a,
+    **kwargs,
+) -> A:
+    with cache_dir():
+        if something:
+            result = CliRunner().invoke(
+                black.main, [str(src1), str(src2), "--diff", "--check"]
+            )
+    limited.append(-limited.pop())  # negate top
+    return A(
+        very_long_argument_name1=very_long_value_for_the_argument,
+        very_long_argument_name2=-very.long.value.for_the_argument,
+        **kwargs,
+    )
+
+
+def g():
+    "Docstring."
+
+    def inner():
+        pass
+
+    print("Inner defs should breathe a little.")
+
+
+def h():
+    def inner():
+        pass
+
+    print("Inner defs should breathe a little.")
diff --git a/.vim/bundle/black/tests/data/function_trailing_comma.py b/.vim/bundle/black/tests/data/function_trailing_comma.py
new file mode 100644 (file)
index 0000000..0207821
--- /dev/null
@@ -0,0 +1,150 @@
+def f(a,):
+    d = {'key': 'value',}
+    tup = (1,)
+
+def f2(a,b,):
+    d = {'key': 'value', 'key2': 'value2',}
+    tup = (1,2,)
+
+def f(a:int=1,):
+    call(arg={'explode': 'this',})
+    call2(arg=[1,2,3],)
+    x = {
+        "a": 1,
+        "b": 2,
+    }["a"]
+    if a == {"a": 1,"b": 2,"c": 3,"d": 4,"e": 5,"f": 6,"g": 7,"h": 8,}["a"]:
+        pass
+
+def xxxxxxxxxxxxxxxxxxxxxxxxxxxx() -> Set[
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+]:
+    json = {"k": {"k2": {"k3": [1,]}}}
+
+
+
+# The type annotation shouldn't get a trailing comma since that would change its type.
+# Relevant bug report: https://github.com/psf/black/issues/2381.
+def some_function_with_a_really_long_name() -> (
+    returning_a_deeply_nested_import_of_a_type_i_suppose
+):
+    pass
+
+
+def some_method_with_a_really_long_name(very_long_parameter_so_yeah: str, another_long_parameter: int) -> (
+    another_case_of_returning_a_deeply_nested_import_of_a_type_i_suppose_cause_why_not
+):
+    pass
+
+
+def func() -> (
+    also_super_long_type_annotation_that_may_cause_an_AST_related_crash_in_black(this_shouldn_t_get_a_trailing_comma_too)
+):
+    pass
+
+
+def func() -> ((also_super_long_type_annotation_that_may_cause_an_AST_related_crash_in_black(
+        this_shouldn_t_get_a_trailing_comma_too
+    ))
+):
+    pass
+
+# output
+
+def f(
+    a,
+):
+    d = {
+        "key": "value",
+    }
+    tup = (1,)
+
+
+def f2(
+    a,
+    b,
+):
+    d = {
+        "key": "value",
+        "key2": "value2",
+    }
+    tup = (
+        1,
+        2,
+    )
+
+
+def f(
+    a: int = 1,
+):
+    call(
+        arg={
+            "explode": "this",
+        }
+    )
+    call2(
+        arg=[1, 2, 3],
+    )
+    x = {
+        "a": 1,
+        "b": 2,
+    }["a"]
+    if a == {
+        "a": 1,
+        "b": 2,
+        "c": 3,
+        "d": 4,
+        "e": 5,
+        "f": 6,
+        "g": 7,
+        "h": 8,
+    }["a"]:
+        pass
+
+
+def xxxxxxxxxxxxxxxxxxxxxxxxxxxx() -> Set[
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+]:
+    json = {
+        "k": {
+            "k2": {
+                "k3": [
+                    1,
+                ]
+            }
+        }
+    }
+
+
+# The type annotation shouldn't get a trailing comma since that would change its type.
+# Relevant bug report: https://github.com/psf/black/issues/2381.
+def some_function_with_a_really_long_name() -> (
+    returning_a_deeply_nested_import_of_a_type_i_suppose
+):
+    pass
+
+
+def some_method_with_a_really_long_name(
+    very_long_parameter_so_yeah: str, another_long_parameter: int
+) -> (
+    another_case_of_returning_a_deeply_nested_import_of_a_type_i_suppose_cause_why_not
+):
+    pass
+
+
+def func() -> (
+    also_super_long_type_annotation_that_may_cause_an_AST_related_crash_in_black(
+        this_shouldn_t_get_a_trailing_comma_too
+    )
+):
+    pass
+
+
+def func() -> (
+    (
+        also_super_long_type_annotation_that_may_cause_an_AST_related_crash_in_black(
+            this_shouldn_t_get_a_trailing_comma_too
+        )
+    )
+):
+    pass
diff --git a/.vim/bundle/black/tests/data/import_spacing.py b/.vim/bundle/black/tests/data/import_spacing.py
new file mode 100644 (file)
index 0000000..8e6e23c
--- /dev/null
@@ -0,0 +1,118 @@
+"""The asyncio package, tracking PEP 3156."""
+
+# flake8: noqa
+
+from logging import (
+    WARNING
+)
+from logging import (
+    ERROR,
+)
+import sys
+
+# This relies on each of the submodules having an __all__ variable.
+from .base_events import *
+from .coroutines import *
+from .events import *  # comment here
+
+from .futures import *
+from .locks import *  # comment here
+from .protocols import *
+
+from ..runners import *  # comment here
+from ..queues import *
+from ..streams import *
+
+from some_library import (
+    Just, Enough, Libraries, To, Fit, In, This, Nice, Split, Which, We, No, Longer, Use
+)
+from name_of_a_company.extremely_long_project_name.component.ttypes import CuteLittleServiceHandlerFactoryyy
+from name_of_a_company.extremely_long_project_name.extremely_long_component_name.ttypes import *
+
+from .a.b.c.subprocess import *
+from . import (tasks)
+from . import (A, B, C)
+from . import SomeVeryLongNameAndAllOfItsAdditionalLetters1, \
+              SomeVeryLongNameAndAllOfItsAdditionalLetters2
+
+__all__ = (
+    base_events.__all__
+    + coroutines.__all__
+    + events.__all__
+    + futures.__all__
+    + locks.__all__
+    + protocols.__all__
+    + runners.__all__
+    + queues.__all__
+    + streams.__all__
+    + tasks.__all__
+)
+
+
+# output
+
+
+"""The asyncio package, tracking PEP 3156."""
+
+# flake8: noqa
+
+from logging import WARNING
+from logging import (
+    ERROR,
+)
+import sys
+
+# This relies on each of the submodules having an __all__ variable.
+from .base_events import *
+from .coroutines import *
+from .events import *  # comment here
+
+from .futures import *
+from .locks import *  # comment here
+from .protocols import *
+
+from ..runners import *  # comment here
+from ..queues import *
+from ..streams import *
+
+from some_library import (
+    Just,
+    Enough,
+    Libraries,
+    To,
+    Fit,
+    In,
+    This,
+    Nice,
+    Split,
+    Which,
+    We,
+    No,
+    Longer,
+    Use,
+)
+from name_of_a_company.extremely_long_project_name.component.ttypes import (
+    CuteLittleServiceHandlerFactoryyy,
+)
+from name_of_a_company.extremely_long_project_name.extremely_long_component_name.ttypes import *
+
+from .a.b.c.subprocess import *
+from . import tasks
+from . import A, B, C
+from . import (
+    SomeVeryLongNameAndAllOfItsAdditionalLetters1,
+    SomeVeryLongNameAndAllOfItsAdditionalLetters2,
+)
+
+__all__ = (
+    base_events.__all__
+    + coroutines.__all__
+    + events.__all__
+    + futures.__all__
+    + locks.__all__
+    + protocols.__all__
+    + runners.__all__
+    + queues.__all__
+    + streams.__all__
+    + tasks.__all__
+)
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/.gitignore b/.vim/bundle/black/tests/data/include_exclude_tests/.gitignore
new file mode 100644 (file)
index 0000000..91f3456
--- /dev/null
@@ -0,0 +1 @@
+dont_exclude/
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.pie b/.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.pie
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.py b/.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.pyi b/.vim/bundle/black/tests/data/include_exclude_tests/b/.definitely_exclude/a.pyi
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.pie b/.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.pie
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.py b/.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.pyi b/.vim/bundle/black/tests/data/include_exclude_tests/b/dont_exclude/a.pyi
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.pie b/.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.pie
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.py b/.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.pyi b/.vim/bundle/black/tests/data/include_exclude_tests/b/exclude/a.pyi
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/include_exclude_tests/pyproject.toml b/.vim/bundle/black/tests/data/include_exclude_tests/pyproject.toml
new file mode 100644 (file)
index 0000000..9ba7ec2
--- /dev/null
@@ -0,0 +1,3 @@
+[build-system]
+requires = ["setuptools>=41.0", "setuptools-scm", "wheel"]
+build-backend = "setuptools.build_meta"
diff --git a/.vim/bundle/black/tests/data/invalid_gitignore_tests/.gitignore b/.vim/bundle/black/tests/data/invalid_gitignore_tests/.gitignore
new file mode 100644 (file)
index 0000000..cdf4cb4
--- /dev/null
@@ -0,0 +1 @@
+!
diff --git a/.vim/bundle/black/tests/data/invalid_gitignore_tests/a.py b/.vim/bundle/black/tests/data/invalid_gitignore_tests/a.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/invalid_gitignore_tests/pyproject.toml b/.vim/bundle/black/tests/data/invalid_gitignore_tests/pyproject.toml
new file mode 100644 (file)
index 0000000..3908e45
--- /dev/null
@@ -0,0 +1 @@
+# Empty configuration file; used in tests to avoid interference from Black's own config.
diff --git a/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a.py b/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a/.gitignore b/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a/.gitignore
new file mode 100644 (file)
index 0000000..cdf4cb4
--- /dev/null
@@ -0,0 +1 @@
+!
diff --git a/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a/a.py b/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/a/a.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/pyproject.toml b/.vim/bundle/black/tests/data/invalid_nested_gitignore_tests/pyproject.toml
new file mode 100644 (file)
index 0000000..3908e45
--- /dev/null
@@ -0,0 +1 @@
+# Empty configuration file; used in tests to avoid interference from Black's own config.
diff --git a/.vim/bundle/black/tests/data/long_strings.py b/.vim/bundle/black/tests/data/long_strings.py
new file mode 100644 (file)
index 0000000..430f760
--- /dev/null
@@ -0,0 +1,661 @@
+x = "This is a really long string that can't possibly be expected to fit all together on one line. In fact it may even take up three or more lines... like four or five... but probably just three."
+
+x += "This is a really long string that can't possibly be expected to fit all together on one line. In fact it may even take up three or more lines... like four or five... but probably just three."
+
+y = (
+    'Short string'
+)
+
+print('This is a really long string inside of a print statement with extra arguments attached at the end of it.', x, y, z)
+
+print("This is a really long string inside of a print statement with no extra arguments attached at the end of it.")
+
+D1 = {"The First": "This is a really long string that can't possibly be expected to fit all together on one line. Also it is inside a dictionary, so formatting is more difficult.", "The Second": "This is another really really (not really) long string that also can't be expected to fit on one line and is, like the other string, inside a dictionary."}
+
+D2 = {1.0: "This is a really long string that can't possibly be expected to fit all together on one line. Also it is inside a dictionary, so formatting is more difficult.", 2.0: "This is another really really (not really) long string that also can't be expected to fit on one line and is, like the other string, inside a dictionary."}
+
+D3 = {x: "This is a really long string that can't possibly be expected to fit all together on one line. Also it is inside a dictionary, so formatting is more difficult.", y: "This is another really really (not really) long string that also can't be expected to fit on one line and is, like the other string, inside a dictionary."}
+
+D4 = {"A long and ridiculous {}".format(string_key): "This is a really really really long string that has to go i,side of a dictionary. It is soooo bad.", some_func("calling", "some", "stuff"): "This is a really really really long string that has to go inside of a dictionary. It is {soooo} bad (#{x}).".format(sooo="soooo", x=2), "A %s %s" % ("formatted", "string"): "This is a really really really long string that has to go inside of a dictionary. It is %s bad (#%d)." % ("soooo", 2)}
+
+func_with_keywords(my_arg, my_kwarg="Long keyword strings also need to be wrapped, but they will probably need to be handled a little bit differently.")
+
+bad_split1 = (
+    'But what should happen when code has already been formatted but in the wrong way? Like'
+    " with a space at the end instead of the beginning. Or what about when it is split too soon?"
+)
+
+bad_split2 = "But what should happen when code has already " \
+             "been formatted but in the wrong way? Like " \
+             "with a space at the end instead of the " \
+             "beginning. Or what about when it is split too " \
+             "soon? In the case of a split that is too " \
+             "short, black will try to honer the custom " \
+             "split."
+
+bad_split3 = (
+    "What if we have inline comments on "  # First Comment
+    "each line of a bad split? In that "  # Second Comment
+    "case, we should just leave it alone."  # Third Comment
+)
+
+bad_split_func1(
+    "But what should happen when code has already "
+    "been formatted but in the wrong way? Like "
+    "with a space at the end instead of the "
+    "beginning. Or what about when it is split too "
+    "soon? In the case of a split that is too "
+    "short, black will try to honer the custom "
+    "split.",
+    xxx, yyy, zzz
+)
+
+bad_split_func2(
+    xxx, yyy, zzz,
+    long_string_kwarg="But what should happen when code has already been formatted but in the wrong way? Like "
+                      "with a space at the end instead of the beginning. Or what about when it is split too "
+                      "soon?",
+)
+
+bad_split_func3(
+    (
+        "But what should happen when code has already "
+        r"been formatted but in the wrong way? Like "
+        "with a space at the end instead of the "
+        r"beginning. Or what about when it is split too "
+        r"soon? In the case of a split that is too "
+        "short, black will try to honer the custom "
+        "split."
+    ),
+    xxx,
+    yyy,
+    zzz,
+)
+
+raw_string = r"This is a long raw string. When re-formatting this string, black needs to make sure it prepends the 'r' onto the new string."
+
+fmt_string1 = "We also need to be sure to preserve any and all {} which may or may not be attached to the string in question.".format("method calls")
+
+fmt_string2 = "But what about when the string is {} but {}".format("short", "the method call is really really really really really really really really long?")
+
+old_fmt_string1 = "While we are on the topic of %s, we should also note that old-style formatting must also be preserved, since some %s still uses it." % ("formatting", "code")
+
+old_fmt_string2 = "This is a %s %s %s %s" % ("really really really really really", "old", "way to format strings!", "Use f-strings instead!")
+
+old_fmt_string3 = "Whereas only the strings after the percent sign were long in the last example, this example uses a long initial string as well. This is another %s %s %s %s" % ("really really really really really", "old", "way to format strings!", "Use f-strings instead!")
+
+fstring = f"f-strings definitely make things more {difficult} than they need to be for {{black}}. But boy they sure are handy. The problem is that some lines will need to have the 'f' whereas others do not. This {line}, for example, needs one."
+
+fstring_with_no_fexprs = f"Some regular string that needs to get split certainly but is NOT an fstring by any means whatsoever."
+
+comment_string = "Long lines with inline comments should have their comments appended to the reformatted string's enclosing right parentheses."  # This comment gets thrown to the top.
+
+arg_comment_string = print("Long lines with inline comments which are apart of (and not the only member of) an argument list should have their comments appended to the reformatted string's enclosing left parentheses.",  # This comment stays on the bottom.
+    "Arg #2", "Arg #3", "Arg #4", "Arg #5")
+
+pragma_comment_string1 = "Lines which end with an inline pragma comment of the form `# <pragma>: <...>` should be left alone."  # noqa: E501
+
+pragma_comment_string2 = "Lines which end with an inline pragma comment of the form `# <pragma>: <...>` should be left alone."  # noqa
+
+"""This is a really really really long triple quote string and it should not be touched."""
+
+triple_quote_string = """This is a really really really long triple quote string assignment and it should not be touched."""
+
+assert some_type_of_boolean_expression, "Followed by a really really really long string that is used to provide context to the AssertionError exception."
+
+assert some_type_of_boolean_expression, "Followed by a really really really long string that is used to provide context to the AssertionError exception, which uses dynamic string {}.".format("formatting")
+
+assert some_type_of_boolean_expression, "Followed by a really really really long string that is used to provide context to the AssertionError exception, which uses dynamic string %s." % "formatting"
+
+assert some_type_of_boolean_expression, "Followed by a really really really long string that is used to provide context to the AssertionError exception, which uses dynamic %s %s." % ("string", "formatting")
+
+some_function_call("With a reallly generic name and with a really really long string that is, at some point down the line, " + added + " to a variable and then added to another string.")
+
+some_function_call("With a reallly generic name and with a really really long string that is, at some point down the line, " + added + " to a variable and then added to another string. But then what happens when the final string is also supppppperrrrr long?! Well then that second (realllllllly long) string should be split too.", "and a second argument", and_a_third)
+
+return "A really really really really really really really really really really really really really long {} {}".format("return", "value")
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma which should NOT be there.",
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma which should NOT be there.", # comment after comma
+)
+
+func_with_bad_comma(
+    (
+        "This is a really long string argument to a function that has a trailing comma"
+        " which should NOT be there."
+    ),
+)
+
+func_with_bad_comma(
+    (
+        "This is a really long string argument to a function that has a trailing comma"
+        " which should NOT be there."
+    ), # comment after comma
+)
+
+func_with_bad_parens_that_wont_fit_in_one_line(
+    ("short string that should have parens stripped"),
+    x,
+    y,
+    z
+)
+
+func_with_bad_parens_that_wont_fit_in_one_line(
+    x,
+    y,
+    ("short string that should have parens stripped"),
+    z
+)
+
+func_with_bad_parens(
+    ("short string that should have parens stripped"),
+    x,
+    y,
+    z,
+)
+
+func_with_bad_parens(
+    x,
+    y,
+    ("short string that should have parens stripped"),
+    z,
+)
+
+annotated_variable: Final = "This is a large " + STRING + " that has been " + CONCATENATED + "using the '+' operator."
+annotated_variable: Final = "This is a large string that has a type annotation attached to it. A type annotation should NOT stop a long string from being wrapped."
+annotated_variable: Literal["fakse_literal"] = "This is a large string that has a type annotation attached to it. A type annotation should NOT stop a long string from being wrapped."
+
+backslashes = "This is a really long string with \"embedded\" double quotes and 'single' quotes that also handles checking for an even number of backslashes \\"
+backslashes = "This is a really long string with \"embedded\" double quotes and 'single' quotes that also handles checking for an even number of backslashes \\\\"
+backslashes = "This is a really 'long' string with \"embedded double quotes\" and 'single' quotes that also handles checking for an odd number of backslashes \\\", like this...\\\\\\"
+
+short_string = (
+    "Hi"
+    " there."
+)
+
+func_call(
+    short_string=(
+        "Hi"
+        " there."
+    )
+)
+
+raw_strings = r"Don't" " get" r" merged" " unless they are all raw."
+
+def foo():
+    yield "This is a really long string that can't possibly be expected to fit all together on one line. In fact it may even take up three or more lines... like four or five... but probably just three."
+
+x = f"This is a {{really}} long string that needs to be split without a doubt (i.e. most definitely). In short, this {string} that can't possibly be {{expected}} to fit all together on one line. In {fact} it may even take up three or more lines... like four or five... but probably just four."
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # type: ignore
+    " of it."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # noqa
+    " of it."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # pylint: disable=some-pylint-check
+    " of it."
+)
+
+string_with_nameescape = (
+    "........................................................................ \N{LAO KO LA}"
+)
+
+string_with_nameescape = (
+    "........................................................................... \N{LAO KO LA}"
+)
+
+string_with_nameescape = (
+    "............................................................................ \N{LAO KO LA}"
+)
+
+string_with_nameescape_and_escaped_backslash = (
+    "...................................................................... \\\N{LAO KO LA}"
+)
+
+string_with_nameescape_and_escaped_backslash = (
+    "......................................................................... \\\N{LAO KO LA}"
+)
+
+string_with_nameescape_and_escaped_backslash = (
+    ".......................................................................... \\\N{LAO KO LA}"
+)
+
+string_with_escaped_nameescape = (
+    "........................................................................ \\N{LAO KO LA}"
+)
+
+string_with_escaped_nameescape = (
+    "........................................................................... \\N{LAO KO LA}"
+)
+
+
+# output
+
+
+x = (
+    "This is a really long string that can't possibly be expected to fit all together"
+    " on one line. In fact it may even take up three or more lines... like four or"
+    " five... but probably just three."
+)
+
+x += (
+    "This is a really long string that can't possibly be expected to fit all together"
+    " on one line. In fact it may even take up three or more lines... like four or"
+    " five... but probably just three."
+)
+
+y = "Short string"
+
+print(
+    "This is a really long string inside of a print statement with extra arguments"
+    " attached at the end of it.",
+    x,
+    y,
+    z,
+)
+
+print(
+    "This is a really long string inside of a print statement with no extra arguments"
+    " attached at the end of it."
+)
+
+D1 = {
+    "The First": (
+        "This is a really long string that can't possibly be expected to fit all"
+        " together on one line. Also it is inside a dictionary, so formatting is more"
+        " difficult."
+    ),
+    "The Second": (
+        "This is another really really (not really) long string that also can't be"
+        " expected to fit on one line and is, like the other string, inside a"
+        " dictionary."
+    ),
+}
+
+D2 = {
+    1.0: (
+        "This is a really long string that can't possibly be expected to fit all"
+        " together on one line. Also it is inside a dictionary, so formatting is more"
+        " difficult."
+    ),
+    2.0: (
+        "This is another really really (not really) long string that also can't be"
+        " expected to fit on one line and is, like the other string, inside a"
+        " dictionary."
+    ),
+}
+
+D3 = {
+    x: (
+        "This is a really long string that can't possibly be expected to fit all"
+        " together on one line. Also it is inside a dictionary, so formatting is more"
+        " difficult."
+    ),
+    y: (
+        "This is another really really (not really) long string that also can't be"
+        " expected to fit on one line and is, like the other string, inside a"
+        " dictionary."
+    ),
+}
+
+D4 = {
+    "A long and ridiculous {}".format(string_key): (
+        "This is a really really really long string that has to go i,side of a"
+        " dictionary. It is soooo bad."
+    ),
+    some_func("calling", "some", "stuff"): (
+        "This is a really really really long string that has to go inside of a"
+        " dictionary. It is {soooo} bad (#{x}).".format(sooo="soooo", x=2)
+    ),
+    "A %s %s"
+    % ("formatted", "string"): (
+        "This is a really really really long string that has to go inside of a"
+        " dictionary. It is %s bad (#%d)."
+    )
+    % ("soooo", 2),
+}
+
+func_with_keywords(
+    my_arg,
+    my_kwarg=(
+        "Long keyword strings also need to be wrapped, but they will probably need to"
+        " be handled a little bit differently."
+    ),
+)
+
+bad_split1 = (
+    "But what should happen when code has already been formatted but in the wrong way?"
+    " Like with a space at the end instead of the beginning. Or what about when it is"
+    " split too soon?"
+)
+
+bad_split2 = (
+    "But what should happen when code has already "
+    "been formatted but in the wrong way? Like "
+    "with a space at the end instead of the "
+    "beginning. Or what about when it is split too "
+    "soon? In the case of a split that is too "
+    "short, black will try to honer the custom "
+    "split."
+)
+
+bad_split3 = (
+    "What if we have inline comments on "  # First Comment
+    "each line of a bad split? In that "  # Second Comment
+    "case, we should just leave it alone."  # Third Comment
+)
+
+bad_split_func1(
+    "But what should happen when code has already "
+    "been formatted but in the wrong way? Like "
+    "with a space at the end instead of the "
+    "beginning. Or what about when it is split too "
+    "soon? In the case of a split that is too "
+    "short, black will try to honer the custom "
+    "split.",
+    xxx,
+    yyy,
+    zzz,
+)
+
+bad_split_func2(
+    xxx,
+    yyy,
+    zzz,
+    long_string_kwarg=(
+        "But what should happen when code has already been formatted but in the wrong"
+        " way? Like with a space at the end instead of the beginning. Or what about"
+        " when it is split too soon?"
+    ),
+)
+
+bad_split_func3(
+    (
+        "But what should happen when code has already "
+        r"been formatted but in the wrong way? Like "
+        "with a space at the end instead of the "
+        r"beginning. Or what about when it is split too "
+        r"soon? In the case of a split that is too "
+        "short, black will try to honer the custom "
+        "split."
+    ),
+    xxx,
+    yyy,
+    zzz,
+)
+
+raw_string = (
+    r"This is a long raw string. When re-formatting this string, black needs to make"
+    r" sure it prepends the 'r' onto the new string."
+)
+
+fmt_string1 = (
+    "We also need to be sure to preserve any and all {} which may or may not be"
+    " attached to the string in question.".format("method calls")
+)
+
+fmt_string2 = "But what about when the string is {} but {}".format(
+    "short",
+    "the method call is really really really really really really really really long?",
+)
+
+old_fmt_string1 = (
+    "While we are on the topic of %s, we should also note that old-style formatting"
+    " must also be preserved, since some %s still uses it." % ("formatting", "code")
+)
+
+old_fmt_string2 = "This is a %s %s %s %s" % (
+    "really really really really really",
+    "old",
+    "way to format strings!",
+    "Use f-strings instead!",
+)
+
+old_fmt_string3 = (
+    "Whereas only the strings after the percent sign were long in the last example,"
+    " this example uses a long initial string as well. This is another %s %s %s %s"
+    % (
+        "really really really really really",
+        "old",
+        "way to format strings!",
+        "Use f-strings instead!",
+    )
+)
+
+fstring = (
+    f"f-strings definitely make things more {difficult} than they need to be for"
+    " {black}. But boy they sure are handy. The problem is that some lines will need"
+    f" to have the 'f' whereas others do not. This {line}, for example, needs one."
+)
+
+fstring_with_no_fexprs = (
+    f"Some regular string that needs to get split certainly but is NOT an fstring by"
+    f" any means whatsoever."
+)
+
+comment_string = (  # This comment gets thrown to the top.
+    "Long lines with inline comments should have their comments appended to the"
+    " reformatted string's enclosing right parentheses."
+)
+
+arg_comment_string = print(
+    "Long lines with inline comments which are apart of (and not the only member of) an"
+    " argument list should have their comments appended to the reformatted string's"
+    " enclosing left parentheses.",  # This comment stays on the bottom.
+    "Arg #2",
+    "Arg #3",
+    "Arg #4",
+    "Arg #5",
+)
+
+pragma_comment_string1 = "Lines which end with an inline pragma comment of the form `# <pragma>: <...>` should be left alone."  # noqa: E501
+
+pragma_comment_string2 = "Lines which end with an inline pragma comment of the form `# <pragma>: <...>` should be left alone."  # noqa
+
+"""This is a really really really long triple quote string and it should not be touched."""
+
+triple_quote_string = """This is a really really really long triple quote string assignment and it should not be touched."""
+
+assert some_type_of_boolean_expression, (
+    "Followed by a really really really long string that is used to provide context to"
+    " the AssertionError exception."
+)
+
+assert some_type_of_boolean_expression, (
+    "Followed by a really really really long string that is used to provide context to"
+    " the AssertionError exception, which uses dynamic string {}.".format("formatting")
+)
+
+assert some_type_of_boolean_expression, (
+    "Followed by a really really really long string that is used to provide context to"
+    " the AssertionError exception, which uses dynamic string %s." % "formatting"
+)
+
+assert some_type_of_boolean_expression, (
+    "Followed by a really really really long string that is used to provide context to"
+    " the AssertionError exception, which uses dynamic %s %s."
+    % ("string", "formatting")
+)
+
+some_function_call(
+    "With a reallly generic name and with a really really long string that is, at some"
+    " point down the line, "
+    + added
+    + " to a variable and then added to another string."
+)
+
+some_function_call(
+    "With a reallly generic name and with a really really long string that is, at some"
+    " point down the line, "
+    + added
+    + " to a variable and then added to another string. But then what happens when the"
+    " final string is also supppppperrrrr long?! Well then that second (realllllllly"
+    " long) string should be split too.",
+    "and a second argument",
+    and_a_third,
+)
+
+return (
+    "A really really really really really really really really really really really"
+    " really really long {} {}".format("return", "value")
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma"
+    " which should NOT be there.",
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma"
+    " which should NOT be there.",  # comment after comma
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma"
+    " which should NOT be there.",
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma"
+    " which should NOT be there.",  # comment after comma
+)
+
+func_with_bad_parens_that_wont_fit_in_one_line(
+    "short string that should have parens stripped", x, y, z
+)
+
+func_with_bad_parens_that_wont_fit_in_one_line(
+    x, y, "short string that should have parens stripped", z
+)
+
+func_with_bad_parens(
+    "short string that should have parens stripped",
+    x,
+    y,
+    z,
+)
+
+func_with_bad_parens(
+    x,
+    y,
+    "short string that should have parens stripped",
+    z,
+)
+
+annotated_variable: Final = (
+    "This is a large "
+    + STRING
+    + " that has been "
+    + CONCATENATED
+    + "using the '+' operator."
+)
+annotated_variable: Final = (
+    "This is a large string that has a type annotation attached to it. A type"
+    " annotation should NOT stop a long string from being wrapped."
+)
+annotated_variable: Literal["fakse_literal"] = (
+    "This is a large string that has a type annotation attached to it. A type"
+    " annotation should NOT stop a long string from being wrapped."
+)
+
+backslashes = (
+    "This is a really long string with \"embedded\" double quotes and 'single' quotes"
+    " that also handles checking for an even number of backslashes \\"
+)
+backslashes = (
+    "This is a really long string with \"embedded\" double quotes and 'single' quotes"
+    " that also handles checking for an even number of backslashes \\\\"
+)
+backslashes = (
+    "This is a really 'long' string with \"embedded double quotes\" and 'single' quotes"
+    ' that also handles checking for an odd number of backslashes \\", like'
+    " this...\\\\\\"
+)
+
+short_string = "Hi there."
+
+func_call(short_string="Hi there.")
+
+raw_strings = r"Don't" " get" r" merged" " unless they are all raw."
+
+
+def foo():
+    yield (
+        "This is a really long string that can't possibly be expected to fit all"
+        " together on one line. In fact it may even take up three or more lines... like"
+        " four or five... but probably just three."
+    )
+
+
+x = (
+    "This is a {really} long string that needs to be split without a doubt (i.e."
+    f" most definitely). In short, this {string} that can't possibly be {{expected}} to"
+    f" fit all together on one line. In {fact} it may even take up three or more"
+    " lines... like four or five... but probably just four."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # type: ignore
+    " of it."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # noqa
+    " of it."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # pylint: disable=some-pylint-check
+    " of it."
+)
+
+string_with_nameescape = (
+    "........................................................................"
+    " \N{LAO KO LA}"
+)
+
+string_with_nameescape = (
+    "..........................................................................."
+    " \N{LAO KO LA}"
+)
+
+string_with_nameescape = (
+    "............................................................................"
+    " \N{LAO KO LA}"
+)
+
+string_with_nameescape_and_escaped_backslash = (
+    "......................................................................"
+    " \\\N{LAO KO LA}"
+)
+
+string_with_nameescape_and_escaped_backslash = (
+    "........................................................................."
+    " \\\N{LAO KO LA}"
+)
+
+string_with_nameescape_and_escaped_backslash = (
+    ".........................................................................."
+    " \\\N{LAO KO LA}"
+)
+
+string_with_escaped_nameescape = (
+    "........................................................................ \\N{LAO"
+    " KO LA}"
+)
+
+string_with_escaped_nameescape = (
+    "..........................................................................."
+    " \\N{LAO KO LA}"
+)
diff --git a/.vim/bundle/black/tests/data/long_strings__edge_case.py b/.vim/bundle/black/tests/data/long_strings__edge_case.py
new file mode 100644 (file)
index 0000000..2bc0b6e
--- /dev/null
@@ -0,0 +1,140 @@
+some_variable = "This string is long but not so long that it needs to be split just yet"
+some_variable = 'This string is long but not so long that it needs to be split just yet'
+some_variable = "This string is long, just long enough that it needs to be split, u get?"
+some_variable = 'This string is long, just long enough that it needs to be split, u get?'
+some_variable = "This string is long, just long enough that it needs to be split, u get? So we stay"
+some_variable = 'This string is long, just long enough that it needs to be split, u get? So we stay'
+some_variable = "This string is long, just long enough that it needs to be split, u get? So we split"
+some_variable = 'This string is long, just long enough that it needs to be split, u get? So we split'
+some_variable = "This string is long but not so long that it needs hahahah toooooo be so greatttt {} that I just can't think of any more good words to say about it at alll".format("ha")
+some_variable = "This string is long but not so long that it needs hahahah toooooo be so greatttt {} that I just can't think of any more good words to say about it at allll".format("ha")
+some_variable = "This string is long but not so long that it needs hahahah toooooo be so greatttt {} that I just can't think of any more good words to say about it at alllllllllll".format("ha")
+some_variable = "This string is long but not so long that it needs hahahah toooooo be so greatttt {} that I just can't think of any more good words to say about it at allllllllllll".format("ha")
+some_variable = "This is a long string that will end with a method that is not calleddd".format
+addition_inside_tuple = (
+    some_string_inside_a_variable
+    + "Some string that is just long enough to cause a split to take place.............",
+    xyz,
+    "Some really long string that needs to get split eventually but I'm running out of things to say" + some_string_inside_a_variable
+)
+addition_inside_tuple = (
+    some_string_inside_a_variable
+    + "Some string that is just long enough to cause a split to take place.............."
+)
+return "Hi there. This is areally really reallllly long string that needs to be split!!!"
+ternary_expression = (
+    "Short String"
+    if some_condition
+    else "This is a really long string that will eventually need to be split right here."
+)
+return f'{x}/b/c/d/d/d/dadfjsadjsaidoaisjdsfjaofjdfijaidfjaodfjaoifjodjafojdoajaaaaaaaaaaa'
+return f'{x}/b/c/d/d/d/dadfjsadjsaidoaisjdsfjaofjdfijaidfjaodfjaoifjodjafojdoajaaaaaaaaaaaa'
+assert str(result) == "This long string should be split at some point right close to or around hereeeeeee"
+assert str(result) < "This long string should be split at some point right close to or around hereeeeee"
+assert "A format string: %s" % "This long string should be split at some point right close to or around hereeeeeee" != result
+msg += "This long string should be wrapped in parens at some point right around hereeeee"
+msg += "This long string should be split at some point right close to or around hereeeeeeee"
+msg += "This long string should not be split at any point ever since it is just righttt"
+
+
+# output
+
+
+some_variable = "This string is long but not so long that it needs to be split just yet"
+some_variable = "This string is long but not so long that it needs to be split just yet"
+some_variable = (
+    "This string is long, just long enough that it needs to be split, u get?"
+)
+some_variable = (
+    "This string is long, just long enough that it needs to be split, u get?"
+)
+some_variable = (
+    "This string is long, just long enough that it needs to be split, u get? So we stay"
+)
+some_variable = (
+    "This string is long, just long enough that it needs to be split, u get? So we stay"
+)
+some_variable = (
+    "This string is long, just long enough that it needs to be split, u get? So we"
+    " split"
+)
+some_variable = (
+    "This string is long, just long enough that it needs to be split, u get? So we"
+    " split"
+)
+some_variable = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"
+    " {} that I just can't think of any more good words to say about it at alll".format(
+        "ha"
+    )
+)
+some_variable = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"
+    " {} that I just can't think of any more good words to say about it at allll"
+    .format("ha")
+)
+some_variable = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"
+    " {} that I just can't think of any more good words to say about it at alllllllllll"
+    .format("ha")
+)
+some_variable = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"
+    " {} that I just can't think of any more good words to say about it at"
+    " allllllllllll".format("ha")
+)
+some_variable = (
+    "This is a long string that will end with a method that is not calleddd".format
+)
+addition_inside_tuple = (
+    some_string_inside_a_variable
+    + "Some string that is just long enough to cause a split to take"
+    " place.............",
+    xyz,
+    "Some really long string that needs to get split eventually but I'm running out of"
+    " things to say"
+    + some_string_inside_a_variable,
+)
+addition_inside_tuple = (
+    some_string_inside_a_variable
+    + "Some string that is just long enough to cause a split to take"
+    " place.............."
+)
+return (
+    "Hi there. This is areally really reallllly long string that needs to be split!!!"
+)
+ternary_expression = (
+    "Short String"
+    if some_condition
+    else (
+        "This is a really long string that will eventually need to be split right here."
+    )
+)
+return (
+    f"{x}/b/c/d/d/d/dadfjsadjsaidoaisjdsfjaofjdfijaidfjaodfjaoifjodjafojdoajaaaaaaaaaaa"
+)
+return f"{x}/b/c/d/d/d/dadfjsadjsaidoaisjdsfjaofjdfijaidfjaodfjaoifjodjafojdoajaaaaaaaaaaaa"
+assert (
+    str(result)
+    == "This long string should be split at some point right close to or around"
+    " hereeeeeee"
+)
+assert (
+    str(result)
+    < "This long string should be split at some point right close to or around"
+    " hereeeeee"
+)
+assert (
+    "A format string: %s"
+    % "This long string should be split at some point right close to or around"
+    " hereeeeeee"
+    != result
+)
+msg += (
+    "This long string should be wrapped in parens at some point right around hereeeee"
+)
+msg += (
+    "This long string should be split at some point right close to or around"
+    " hereeeeeeee"
+)
+msg += "This long string should not be split at any point ever since it is just righttt"
diff --git a/.vim/bundle/black/tests/data/long_strings__regression.py b/.vim/bundle/black/tests/data/long_strings__regression.py
new file mode 100644 (file)
index 0000000..36f323e
--- /dev/null
@@ -0,0 +1,1166 @@
+class A:
+    def foo():
+        result = type(message)("")
+
+
+# Don't merge multiline (e.g. triple-quoted) strings.
+def foo():
+    query = (
+        """SELECT xxxxxxxxxxxxxxxxxxxx(xxx)"""
+        """ FROM xxxxxxxxxxxxxxxx WHERE xxxxxxxxxx AND xxx <> xxxxxxxxxxxxxx()""")
+
+# There was a bug where tuples were being identified as long strings.
+long_tuple = ('Apple', 'Berry', 'Cherry', 'Dill', 'Evergreen', 'Fig',
+           'Grape', 'Harry', 'Iglu', 'Jaguar')
+
+stupid_format_method_bug = "Some really long string that just so happens to be the {} {} to force the 'format' method to hang over the line length boundary. This is pretty annoying.".format("perfect", "length")
+
+class A:
+    def foo():
+        os.system("This is a regression test. xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxxx.".format("xxxxxxxxxx", "xxxxxx", "xxxxxxxxxx"))
+
+
+class A:
+    def foo():
+        XXXXXXXXXXXX.append(
+            (
+                "xxx_xxxxxxxxxx(xxxxx={}, xxxx={}, xxxxx, xxxx_xxxx_xxxxxxxxxx={})".format(
+                    xxxxx, xxxx, xxxx_xxxx_xxxxxxxxxx
+                ),
+                my_var,
+                my_other_var,
+            )
+        )
+
+class A:
+    class B:
+        def foo():
+            bar(
+                (
+                    "[{}]: xxx_xxxxxxxxxx(xxxxx={}, xxxx={}, xxxxx={}"
+                    " xxxx_xxxx_xxxxxxxxxx={}, xxxx={})"
+                    .format(xxxx._xxxxxxxxxxxxxx, xxxxx, xxxx, xxxx_xxxx_xxxxxxxxxx, xxxxxxx)
+                ),
+                varX,
+                varY,
+                varZ,
+            )
+
+def foo(xxxx):
+    for (xxx_xxxx, _xxx_xxx, _xxx_xxxxx, xxx_xxxx) in xxxx:
+        for xxx in xxx_xxxx:
+            assert ("x" in xxx) or (
+                xxx in xxx_xxx_xxxxx
+            ), "{0} xxxxxxx xx {1}, xxx {1} xx xxx xx xxxx xx xxx xxxx: xxx xxxx {2}".format(
+                xxx_xxxx, xxx, xxxxxx.xxxxxxx(xxx_xxx_xxxxx)
+            )
+
+class A:
+    def disappearing_comment():
+        return (
+            (  # xx -x xxxxxxx xx xxx xxxxxxx.
+                '{{xxx_xxxxxxxxxx_xxxxxxxx}} xxx xxxx'
+                ' {} {{xxxx}} >&2'
+                .format(
+                    "{xxxx} {xxxxxx}"
+                    if xxxxx.xx_xxxxxxxxxx
+                    else ( # Disappearing Comment
+                        "--xxxxxxx --xxxxxx=x --xxxxxx-xxxxx=xxxxxx"
+                        " --xxxxxx-xxxx=xxxxxxxxxxx.xxx"
+                    )
+                )
+            ),
+            (x, y, z),
+        )
+
+class A:
+    class B:
+        def foo():
+            xxxxx_xxxx(
+                xx, "\t"
+                "@xxxxxx '{xxxx_xxx}\t' > {xxxxxx_xxxx}.xxxxxxx;"
+                "{xxxx_xxx} >> {xxxxxx_xxxx}.xxxxxxx 2>&1; xx=$$?;"
+                "xxxx $$xx"
+                .format(xxxx_xxx=xxxx_xxxxxxx, xxxxxx_xxxx=xxxxxxx + "/" + xxxx_xxx_xxxx, x=xxx_xxxxx_xxxxx_xxx),
+                x,
+                y,
+                z,
+            )
+
+func_call_where_string_arg_has_method_call_and_bad_parens(
+    (
+        "A long string with {}. This string is so long that it is ridiculous. It can't fit on one line at alllll.".format("formatting")
+    ),
+)
+
+func_call_where_string_arg_has_old_fmt_and_bad_parens(
+    (
+        "A long string with {}. This string is so long that it is ridiculous. It can't fit on one line at alllll." % "formatting"
+    ),
+)
+
+func_call_where_string_arg_has_old_fmt_and_bad_parens(
+    (
+        "A long string with {}. This {} is so long that it is ridiculous. It can't fit on one line at alllll." % ("formatting", "string")
+    ),
+)
+
+class A:
+    def append(self):
+        if True:
+            xxxx.xxxxxxx.xxxxx( ('xxxxxxxxxx xxxx xx xxxxxx(%x) xx %x xxxx xx xxx %x.xx'
+                                 % (len(self) + 1,
+                                    xxxx.xxxxxxxxxx,
+                                    xxxx.xxxxxxxxxx))
+                                + (' %.3f (%s) to %.3f (%s).\n'
+                                   % (xxxx.xxxxxxxxx,
+                                      xxxx.xxxxxxxxxxxxxx(xxxx.xxxxxxxxx),
+                                      x,
+                                      xxxx.xxxxxxxxxxxxxx( xx)
+                                      )))
+
+class A:
+    def foo():
+        some_func_call(
+            'xxxxxxxxxx',
+            (
+                "xx {xxxxxxxxxxx}/xxxxxxxxxxx.xxx xxxx.xxx && xxxxxx -x "
+                "\"xxxx xxxxxxx xxxxxx xxxx; xxxx xxxxxx_xxxxx xxxxxx xxxx; "
+                "xxxx.xxxx_xxxxxx(['xxxx.xxx'], xxxx.xxxxxxx().xxxxxxxxxx)\" "
+            ),
+            None,
+            ('xxxxxxxxxxx',),
+        ),
+
+class A:
+    def foo():
+        some_func_call(
+            (
+                "xx {xxxxxxxxxxx}/xxxxxxxxxxx.xxx xxxx.xxx && xxxxxx -x "
+                "xxxx, ('xxxxxxx xxxxxx xxxx, xxxx') xxxxxx_xxxxx xxxxxx xxxx; "
+                "xxxx.xxxx_xxxxxx(['xxxx.xxx'], xxxx.xxxxxxx().xxxxxxxxxx)\" "
+            ),
+            None,
+            ('xxxxxxxxxxx',),
+        ),
+
+xxxxxxx = { 'xx' : 'xxxx xxxxxxx xxxxxxxxx -x xxx -x /xxx/{0} -x xxx,xxx -xx {1} \
+-xx {1} -xx xxx=xxx_xxxx,xxx_xx,xxx_xxx,xxx_xxxx,xxx_xx,xxx_xxx |\
+ xxxxxx -x xxxxxxxx -x xxxxxxxx -x',
+         'xx' : 'xxxx xxxxxxx xxxxxxxxx -x xxx -x /xxx/{0} -x xxx,xxx -xx {1} \
+-xx {1} -xx xxx=xxx_xxxx_xxx_xxxx,xxx_xx_xxx_xxxx,xxx_xxxx_xxx_xxxx,\
+xxx_xx_xxxx_xxxx,xxx_xxx_xxxx,xxx_xxx_xxxx xxxx=xxx | xxxxxx -x xxxxxxxx -x xxxxxxxx -x'
+}
+
+class A:
+    def foo(self):
+        if True:
+            xxxxx_xxxxxxxxxxxx('xxx xxxxxx xxx xxxxxxxxx.xx xx xxxxxxxx.  xxx xxxxxxxxxxxxx.xx xxxxxxx '
+                               + 'xx xxxxxx xxxxxx xxxxxx xx xxxxxxx xxx xxx ${0} xx x xxxxxxxx xxxxx'.xxxxxx(xxxxxx_xxxxxx_xxx))
+
+class A:
+    class B:
+        def foo():
+            row = {
+                'xxxxxxxxxxxxxxx' : xxxxxx_xxxxx_xxxx,
+                # 'xxxxxxxxxxxxxxxxxxxxxxx'
+                # 'xxxxxxxxxxxxxxxxxxxxxx'
+                # 'xxxxxxxxxxxxxxxxxx'
+                # 'xxxxxxxxxxxxxxxxx'
+                'xxxxxxxxxx' : xxxxx_xxxxx,
+                }
+
+class A:
+    def xxxx_xxx_xx_xxxxxxxxxx_xxxx_xxxxxxxxx(xxxx):
+        xxxxxxxx = [
+            xxxxxxxxxxxxxxxx(
+                'xxxx',
+                xxxxxxxxxxx={
+                    'xxxx' : 1.0,
+                },
+                xxxxxx={'xxxxxx 1' : xxxxxx(xxxx='xxxxxx 1', xxxxxx=600.0)},
+                xxxxxxxx_xxxxxxx=0.0,
+            ),
+            xxxxxxxxxxxxxxxx(
+                'xxxxxxx',
+                xxxxxxxxxxx={
+                    'xxxx' : 1.0,
+                },
+                xxxxxx={'xxxxxx 1' : xxxxxx(xxxx='xxxxxx 1', xxxxxx=200.0)},
+                xxxxxxxx_xxxxxxx=0.0,
+            ),
+            xxxxxxxxxxxxxxxx(
+                'xxxx',
+            ),
+        ]
+
+some_dictionary = {
+    'xxxxx006': ['xxx-xxx xxxxx3xxxx1xx2xxxxxxxxxxxxxx0xx6xxxxxxxxxx2xxxxxx9xxxxxxxxxx0xxxxx1xxx2x/xx9xx6+x+xxxxxxxxxxxxxx4xxxxxxxxxxxxxxxxxxxxx43xxx2xx2x4x++xxx6xxxxxxxxx+xxxxx/xx9x+xxxxxxxxxxxxxx8x15xxxxxxxxxxxxxxxxx82xx/xxxxxxxxxxxxxx/x5xxxxxxxxxxxxxx6xxxxxx74x4/xxx4x+xxxxxxxxx2xxxxxxxx87xxxxx4xxxxxxxx3xx0xxxxx4xxx1xx9xx5xxxxxxx/xxxxx5xx6xx4xxxx1x/x2xxxxxxxxxxxx64xxxxxxx1x0xx5xxxxxxxxxxxxxx== xxxxx000 xxxxxxxxxx\n',
+                 'xxx-xxx xxxxx3xxxx1xx2xxxxxxxxxxxxxx6xxxxxxxxxxxxxx9xxxxxxxxxxxxx3xxx9xxxxxxxxxxxxxxxx0xxxxxxxxxxxxxxxxx2xxxx2xxx6xxxxx/xx54xxxxxxxxx4xxx3xxxxxx9xx3xxxxx39xxxxxxxxx5xx91xxxx7xxxxxx8xxxxxxxxxxxxxxxx9xxx93xxxxxxxxxxxxxxxxx7xxx8xx8xx4/x1xxxxx1x3xxxxxxxxxxxxx3xxxxxx9xx4xx4x7xxxxxxxxxxxxx1xxxxxxxxx7xxxxxxxxxxxxxx4xx6xxxxxxxxx9xxx7xxxx2xxxxxxxxxxxxxxxxxxxxxx8xxxxxxxxxxxxxxxxxxxx6xx== xxxxx010 xxxxxxxxxx\n'],
+    'xxxxx016': ['xxx-xxx xxxxx3xxxx1xx2xxxxxxxxxxxxxx0xx6xxxxxxxxxx2xxxxxx9xxxxxxxxxx0xxxxx1xxx2x/xx9xx6+x+xxxxxxxxxxxxxx4xxxxxxxxxxxxxxxxxxxxx43xxx2xx2x4x++xxx6xxxxxxxxx+xxxxx/xx9x+xxxxxxxxxxxxxx8x15xxxxxxxxxxxxxxxxx82xx/xxxxxxxxxxxxxx/x5xxxxxxxxxxxxxx6xxxxxx74x4/xxx4x+xxxxxxxxx2xxxxxxxx87xxxxx4xxxxxxxx3xx0xxxxx4xxx1xx9xx5xxxxxxx/xxxxx5xx6xx4xxxx1x/x2xxxxxxxxxxxx64xxxxxxx1x0xx5xxxxxxxxxxxxxx== xxxxx000 xxxxxxxxxx\n',
+                 'xxx-xxx xxxxx3xxxx1xx2xxxxxxxxxxxxxx6xxxxxxxxxxxxxx9xxxxxxxxxxxxx3xxx9xxxxxxxxxxxxxxxx0xxxxxxxxxxxxxxxxx2xxxx2xxx6xxxxx/xx54xxxxxxxxx4xxx3xxxxxx9xx3xxxxx39xxxxxxxxx5xx91xxxx7xxxxxx8xxxxxxxxxxxxxxxx9xxx93xxxxxxxxxxxxxxxxx7xxx8xx8xx4/x1xxxxx1x3xxxxxxxxxxxxx3xxxxxx9xx4xx4x7xxxxxxxxxxxxx1xxxxxxxxx7xxxxxxxxxxxxxx4xx6xxxxxxxxx9xxx7xxxx2xxxxxxxxxxxxxxxxxxxxxx8xxxxxxxxxxxxxxxxxxxx6xx== xxxxx010 xxxxxxxxxx\n']
+}
+
+def foo():
+    xxx_xxx = (
+        'xxxx xxx xxxxxxxx_xxxx xx "xxxxxxxxxx".'
+        '\n xxx: xxxxxx xxxxxxxx_xxxx=xxxxxxxxxx'
+    ) # xxxx xxxxxxxxxx xxxx xx xxxx xx xxx xxxxxxxx xxxxxx xxxxx.
+
+some_tuple = ("some string", "some string" " which should be joined")
+
+some_commented_string = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"  # This comment gets thrown to the top.
+    " {} that I just can't think of any more good words to say about it at"
+    " allllllllllll".format("ha")  # comments here are fine
+)
+
+some_commented_string = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"  # But these
+    " {} that I just can't think of any more good words to say about it at"  # comments will stay
+    " allllllllllll".format("ha")  # comments here are fine
+)
+
+lpar_and_rpar_have_comments = func_call(  # LPAR Comment
+    "Long really ridiculous type of string that shouldn't really even exist at all. I mean commmme onnn!!!",  # Comma Comment
+)  # RPAR Comment
+
+cmd_fstring = (
+    f"sudo -E deluge-console info --detailed --sort-reverse=time_added "
+    f"{'' if ID is None else ID} | perl -nE 'print if /^{field}:/'"
+)
+
+cmd_fstring = f"sudo -E deluge-console info --detailed --sort-reverse=time_added {'' if ID is None else ID} | perl -nE 'print if /^{field}:/'"
+
+cmd_fstring = f"sudo -E deluge-console info --detailed --sort-reverse=time_added {'{{}}' if ID is None else ID} | perl -nE 'print if /^{field}:/'"
+
+cmd_fstring = f"sudo -E deluge-console info --detailed --sort-reverse=time_added {{'' if ID is None else ID}} | perl -nE 'print if /^{field}:/'"
+
+fstring = f"This string really doesn't need to be an {{{{fstring}}}}, but this one most certainly, absolutely {does}."
+
+fstring = (
+    f"We have to remember to escape {braces}."
+    " Like {these}."
+    f" But not {this}."
+)
+
+class A:
+    class B:
+        def foo():
+            st_error = STError(
+                f"This string ({string_leaf.value}) appears to be pointless (i.e. has"
+                " no parent)."
+            )
+
+def foo():
+    user_regex = _lazy_re_compile(
+        r"(^[-!#$%&'*+/=?^_`{}|~0-9A-Z]+(\.[-!#$%&'*+/=?^_`{}|~0-9A-Z]+)*\Z"  # dot-atom
+        r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001-\011\013\014\016-\177])*"\Z)',  # quoted-string
+        re.IGNORECASE)
+
+def foo():
+    user_regex = _lazy_re_compile(
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"  # dot-atom
+        'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',  # quoted-string
+        xyz
+    )
+
+def foo():
+    user_regex = _lazy_re_compile(
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"  # dot-atom
+        'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',  # quoted-string
+        xyz
+    )
+
+class A:
+    class B:
+        def foo():
+            if not hasattr(module, name):
+                raise ValueError(
+                    "Could not find object %s in %s.\n"
+                    "Please note that you cannot serialize things like inner "
+                    "classes. Please move the object into the main module "
+                    "body to use migrations.\n"
+                    "For more information, see "
+                    "https://docs.djangoproject.com/en/%s/topics/migrations/#serializing-values"
+                    % (name, module_name, get_docs_version()))
+
+class A:
+    class B:
+        def foo():
+            if not hasattr(module, name):
+                raise ValueError(
+                    "Could not find object %s in %s.\nPlease note that you cannot serialize things like inner classes. Please move the object into the main module body to use migrations.\nFor more information, see https://docs.djangoproject.com/en/%s/topics/migrations/#serializing-values"
+                    % (name, module_name, get_docs_version()))
+
+x = (
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+)
+
+class Step(StepBase):
+    def who(self):
+        self.cmd = 'SR AAAA-CORRECT NAME IS {last_name} {first_name}{middle_name} {title}/P{passenger_association}'.format(
+            last_name=last_name,
+            first_name=first_name,
+            middle_name=middle_name,
+            title=title,
+            passenger_association=passenger_association,
+        )
+
+xxxxxxx_xxxxxx_xxxxxxx = xxx(
+    [
+        xxxxxxxxxxxx(
+            xxxxxx_xxxxxxx=(
+                '((x.aaaaaaaaa = "xxxxxx.xxxxxxxxxxxxxxxxxxxxx") || (x.xxxxxxxxx = "xxxxxxxxxxxx")) && '
+                # xxxxx xxxxxxxxxxxx xxxx xxx (xxxxxxxxxxxxxxxx) xx x xxxxxxxxx xx xxxxxx.
+                "(x.bbbbbbbbbbbb.xxx != "
+                '"xxx:xxx:xxx::cccccccccccc:xxxxxxx-xxxx/xxxxxxxxxxx/xxxxxxxxxxxxxxxxx") && '
+            )
+        )
+    ]
+)
+
+if __name__ == "__main__":
+    for i in range(4, 8):
+        cmd = (
+            r"for pid in $(ps aux | grep paster | grep -v grep | grep '\-%d' | awk '{print $2}'); do kill $pid; done"
+            % (i)
+        )
+
+def A():
+    def B():
+        def C():
+            def D():
+                def E():
+                    def F():
+                        def G():
+                            assert (
+                                c_float(val[0][0] / val[0][1]).value
+                                == c_float(value[0][0] / value[0][1]).value
+                            ), "%s didn't roundtrip" % tag
+
+class xxxxxxxxxxxxxxxxxxxxx(xxxx.xxxxxxxxxxxxx):
+    def xxxxxxx_xxxxxx(xxxx):
+        assert xxxxxxx_xxxx in [
+            x.xxxxx.xxxxxx.xxxxx.xxxxxx,
+            x.xxxxx.xxxxxx.xxxxx.xxxx,
+        ], ("xxxxxxxxxxx xxxxxxx xxxx (xxxxxx xxxx) %x xxx xxxxx" % xxxxxxx_xxxx)
+
+value.__dict__[
+    key
+] = "test"  # set some Thrift field to non-None in the struct aa bb cc dd ee
+
+RE_ONE_BACKSLASH = {
+    "asdf_hjkl_jkl": re.compile(
+        r"(?<!([0-9]\ ))(?<=(^|\ ))([A-Z]+(\ )?|[0-9](\ )|[a-z](\ )){4,7}([A-Z]|[0-9]|[a-z])($|\b)(?!(\ ?([0-9]\ )|(\.)))"
+    ),
+}
+
+RE_TWO_BACKSLASHES = {
+    "asdf_hjkl_jkl": re.compile(
+        r"(?<!([0-9]\ ))(?<=(^|\ ))([A-Z]+(\ )?|[0-9](\ )|[a-z](\\ )){4,7}([A-Z]|[0-9]|[a-z])($|\b)(?!(\ ?([0-9]\ )|(\.)))"
+    ),
+}
+
+RE_THREE_BACKSLASHES = {
+    "asdf_hjkl_jkl": re.compile(
+        r"(?<!([0-9]\ ))(?<=(^|\ ))([A-Z]+(\ )?|[0-9](\ )|[a-z](\\\ )){4,7}([A-Z]|[0-9]|[a-z])($|\b)(?!(\ ?([0-9]\ )|(\.)))"
+    ),
+}
+
+# We do NOT split on f-string expressions.
+print(f"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam. {[f'{i}' for i in range(10)]}")
+x = f"This is a long string which contains an f-expr that should not split {{{[i for i in range(5)]}}}."
+
+# The parens should NOT be removed in this case.
+(
+    "my very long string that should get formatted if I'm careful to make sure it goes"
+    " over 88 characters which it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+    "my very long string that should get formatted if I'm careful to make sure it goes over 88 characters which"
+    " it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+    "my very long string"
+    " that should get formatted"
+    " if I'm careful to make sure"
+    " it goes over 88 characters which"
+    " it has now"
+)
+
+
+def _legacy_listen_examples():
+    text += (
+        "    \"listen for the '%(event_name)s' event\"\n"
+        "\n    # ... (event logic logic logic) ...\n"
+        % {
+            "since": since,
+        }
+    )
+
+
+class X:
+    async def foo(self):
+        msg = ""
+        for candidate in CANDIDATES:
+            msg += (
+                "**{candidate.object_type} {candidate.rev}**"
+                " - {candidate.description}\n"
+            )
+
+
+temp_msg = (
+    f"{f'{humanize_number(pos)}.': <{pound_len+2}} "
+    f"{balance: <{bal_len + 5}} "
+    f"<<{author.display_name}>>\n"
+)
+
+assert str(suffix_arr) == (
+    "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert str(suffix_arr) != (
+    "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert str(suffix_arr) <= (
+    "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert str(suffix_arr) >= (
+    "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert str(suffix_arr) < (
+    "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert str(suffix_arr) > (
+    "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert str(suffix_arr) in "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', 'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', 'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+assert str(suffix_arr) not in "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', 'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', 'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+message = (
+    f"1. Go to Google Developers Console and log in with your Google account."
+    "(https://console.developers.google.com/)"
+    "2. You should be prompted to create a new project (name does not matter)."
+    "3. Click on Enable APIs and Services at the top."
+    "4. In the list of APIs choose or search for YouTube Data API v3 and "
+    "click on it. Choose Enable."
+    "5. Click on Credentials on the left navigation bar."
+    "6. Click on Create Credential at the top."
+    '7. At the top click the link for "API key".'
+    "8. No application restrictions are needed. Click Create at the bottom."
+    "9. You now have a key to add to `{prefix}set api youtube api_key`"
+)
+message = (
+    f"1. Go to Google Developers Console and log in with your Google account."
+    "(https://console.developers.google.com/)"
+    "2. You should be prompted to create a new project (name does not matter)."
+    f"3. Click on Enable APIs and Services at the top."
+    "4. In the list of APIs choose or search for YouTube Data API v3 and "
+    "click on it. Choose Enable."
+    f"5. Click on Credentials on the left navigation bar."
+    "6. Click on Create Credential at the top."
+    '7. At the top click the link for "API key".'
+    "8. No application restrictions are needed. Click Create at the bottom."
+    "9. You now have a key to add to `{prefix}set api youtube api_key`"
+)
+message = (
+    f"1. Go to Google Developers Console and log in with your Google account."
+    "(https://console.developers.google.com/)"
+    "2. You should be prompted to create a new project (name does not matter)."
+    f"3. Click on Enable APIs and Services at the top."
+    "4. In the list of APIs choose or search for YouTube Data API v3 and "
+    "click on it. Choose Enable."
+    f"5. Click on Credentials on the left navigation bar."
+    "6. Click on Create Credential at the top."
+    '7. At the top click the link for "API key".'
+    "8. No application restrictions are needed. Click Create at the bottom."
+    f"9. You now have a key to add to `{prefix}set api youtube api_key`"
+)
+
+# It shouldn't matter if the string prefixes are capitalized.
+temp_msg = (
+    F"{F'{humanize_number(pos)}.': <{pound_len+2}} "
+    F"{balance: <{bal_len + 5}} "
+    F"<<{author.display_name}>>\n"
+)
+
+fstring = (
+    F"We have to remember to escape {braces}."
+    " Like {these}."
+    F" But not {this}."
+)
+
+welcome_to_programming = R"hello," R" world!"
+
+fstring = F"f-strings definitely make things more {difficult} than they need to be for {{black}}. But boy they sure are handy. The problem is that some lines will need to have the 'f' whereas others do not. This {line}, for example, needs one."
+
+x = F"This is a long string which contains an f-expr that should not split {{{[i for i in range(5)]}}}."
+
+x = (
+    "\N{BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR}\N{VARIATION SELECTOR-16}"
+)
+
+xxxxxx_xxx_xxxx_xx_xxxxx_xxxxxxxx_xxxxxxxx_xxxxxxxxxx_xxxx_xxxx_xxxxx = xxxx.xxxxxx.xxxxxxxxx.xxxxxxxxxxxxxxxxxxxx(
+    xx_xxxxxx={
+        "x3_xxxxxxxx": "xxx3_xxxxx_xxxxxxxx_xxxxxxxx_xxxxxxxxxx_xxxxxxxx_xxxxxx_xxxxxxx",
+    },
+)
+
+
+# output
+
+
+class A:
+    def foo():
+        result = type(message)("")
+
+
+# Don't merge multiline (e.g. triple-quoted) strings.
+def foo():
+    query = (
+        """SELECT xxxxxxxxxxxxxxxxxxxx(xxx)"""
+        """ FROM xxxxxxxxxxxxxxxx WHERE xxxxxxxxxx AND xxx <> xxxxxxxxxxxxxx()"""
+    )
+
+
+# There was a bug where tuples were being identified as long strings.
+long_tuple = (
+    "Apple",
+    "Berry",
+    "Cherry",
+    "Dill",
+    "Evergreen",
+    "Fig",
+    "Grape",
+    "Harry",
+    "Iglu",
+    "Jaguar",
+)
+
+stupid_format_method_bug = (
+    "Some really long string that just so happens to be the {} {} to force the 'format'"
+    " method to hang over the line length boundary. This is pretty annoying.".format(
+        "perfect", "length"
+    )
+)
+
+
+class A:
+    def foo():
+        os.system(
+            "This is a regression test. xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx"
+            " xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx"
+            " xxxx.".format("xxxxxxxxxx", "xxxxxx", "xxxxxxxxxx")
+        )
+
+
+class A:
+    def foo():
+        XXXXXXXXXXXX.append(
+            (
+                "xxx_xxxxxxxxxx(xxxxx={}, xxxx={}, xxxxx, xxxx_xxxx_xxxxxxxxxx={})"
+                .format(xxxxx, xxxx, xxxx_xxxx_xxxxxxxxxx),
+                my_var,
+                my_other_var,
+            )
+        )
+
+
+class A:
+    class B:
+        def foo():
+            bar(
+                "[{}]: xxx_xxxxxxxxxx(xxxxx={}, xxxx={}, xxxxx={}"
+                " xxxx_xxxx_xxxxxxxxxx={}, xxxx={})".format(
+                    xxxx._xxxxxxxxxxxxxx, xxxxx, xxxx, xxxx_xxxx_xxxxxxxxxx, xxxxxxx
+                ),
+                varX,
+                varY,
+                varZ,
+            )
+
+
+def foo(xxxx):
+    for (xxx_xxxx, _xxx_xxx, _xxx_xxxxx, xxx_xxxx) in xxxx:
+        for xxx in xxx_xxxx:
+            assert ("x" in xxx) or (xxx in xxx_xxx_xxxxx), (
+                "{0} xxxxxxx xx {1}, xxx {1} xx xxx xx xxxx xx xxx xxxx: xxx xxxx {2}"
+                .format(xxx_xxxx, xxx, xxxxxx.xxxxxxx(xxx_xxx_xxxxx))
+            )
+
+
+class A:
+    def disappearing_comment():
+        return (
+            (  # xx -x xxxxxxx xx xxx xxxxxxx.
+                "{{xxx_xxxxxxxxxx_xxxxxxxx}} xxx xxxx {} {{xxxx}} >&2".format(
+                    "{xxxx} {xxxxxx}"
+                    if xxxxx.xx_xxxxxxxxxx
+                    else (  # Disappearing Comment
+                        "--xxxxxxx --xxxxxx=x --xxxxxx-xxxxx=xxxxxx"
+                        " --xxxxxx-xxxx=xxxxxxxxxxx.xxx"
+                    )
+                )
+            ),
+            (x, y, z),
+        )
+
+
+class A:
+    class B:
+        def foo():
+            xxxxx_xxxx(
+                xx,
+                "\t"
+                "@xxxxxx '{xxxx_xxx}\t' > {xxxxxx_xxxx}.xxxxxxx;"
+                "{xxxx_xxx} >> {xxxxxx_xxxx}.xxxxxxx 2>&1; xx=$$?;"
+                "xxxx $$xx".format(
+                    xxxx_xxx=xxxx_xxxxxxx,
+                    xxxxxx_xxxx=xxxxxxx + "/" + xxxx_xxx_xxxx,
+                    x=xxx_xxxxx_xxxxx_xxx,
+                ),
+                x,
+                y,
+                z,
+            )
+
+
+func_call_where_string_arg_has_method_call_and_bad_parens(
+    "A long string with {}. This string is so long that it is ridiculous. It can't fit"
+    " on one line at alllll.".format("formatting"),
+)
+
+func_call_where_string_arg_has_old_fmt_and_bad_parens(
+    "A long string with {}. This string is so long that it is ridiculous. It can't fit"
+    " on one line at alllll." % "formatting",
+)
+
+func_call_where_string_arg_has_old_fmt_and_bad_parens(
+    "A long string with {}. This {} is so long that it is ridiculous. It can't fit on"
+    " one line at alllll." % ("formatting", "string"),
+)
+
+
+class A:
+    def append(self):
+        if True:
+            xxxx.xxxxxxx.xxxxx(
+                "xxxxxxxxxx xxxx xx xxxxxx(%x) xx %x xxxx xx xxx %x.xx"
+                % (len(self) + 1, xxxx.xxxxxxxxxx, xxxx.xxxxxxxxxx)
+                + " %.3f (%s) to %.3f (%s).\n"
+                % (
+                    xxxx.xxxxxxxxx,
+                    xxxx.xxxxxxxxxxxxxx(xxxx.xxxxxxxxx),
+                    x,
+                    xxxx.xxxxxxxxxxxxxx(xx),
+                )
+            )
+
+
+class A:
+    def foo():
+        some_func_call(
+            "xxxxxxxxxx",
+            "xx {xxxxxxxxxxx}/xxxxxxxxxxx.xxx xxxx.xxx && xxxxxx -x "
+            '"xxxx xxxxxxx xxxxxx xxxx; xxxx xxxxxx_xxxxx xxxxxx xxxx; '
+            "xxxx.xxxx_xxxxxx(['xxxx.xxx'], xxxx.xxxxxxx().xxxxxxxxxx)\" ",
+            None,
+            ("xxxxxxxxxxx",),
+        ),
+
+
+class A:
+    def foo():
+        some_func_call(
+            "xx {xxxxxxxxxxx}/xxxxxxxxxxx.xxx xxxx.xxx && xxxxxx -x "
+            "xxxx, ('xxxxxxx xxxxxx xxxx, xxxx') xxxxxx_xxxxx xxxxxx xxxx; "
+            "xxxx.xxxx_xxxxxx(['xxxx.xxx'], xxxx.xxxxxxx().xxxxxxxxxx)\" ",
+            None,
+            ("xxxxxxxxxxx",),
+        ),
+
+
+xxxxxxx = {
+    "xx": (
+        "xxxx xxxxxxx xxxxxxxxx -x xxx -x /xxx/{0} -x xxx,xxx -xx {1} -xx {1} -xx"
+        " xxx=xxx_xxxx,xxx_xx,xxx_xxx,xxx_xxxx,xxx_xx,xxx_xxx | xxxxxx -x xxxxxxxx -x"
+        " xxxxxxxx -x"
+    ),
+    "xx": (
+        "xxxx xxxxxxx xxxxxxxxx -x xxx -x /xxx/{0} -x xxx,xxx -xx {1} -xx {1} -xx"
+        " xxx=xxx_xxxx_xxx_xxxx,xxx_xx_xxx_xxxx,xxx_xxxx_xxx_xxxx,xxx_xx_xxxx_xxxx,xxx_xxx_xxxx,xxx_xxx_xxxx"
+        " xxxx=xxx | xxxxxx -x xxxxxxxx -x xxxxxxxx -x"
+    ),
+}
+
+
+class A:
+    def foo(self):
+        if True:
+            xxxxx_xxxxxxxxxxxx(
+                "xxx xxxxxx xxx xxxxxxxxx.xx xx xxxxxxxx.  xxx xxxxxxxxxxxxx.xx"
+                " xxxxxxx "
+                + "xx xxxxxx xxxxxx xxxxxx xx xxxxxxx xxx xxx ${0} xx x xxxxxxxx xxxxx"
+                .xxxxxx(xxxxxx_xxxxxx_xxx)
+            )
+
+
+class A:
+    class B:
+        def foo():
+            row = {
+                "xxxxxxxxxxxxxxx": xxxxxx_xxxxx_xxxx,
+                # 'xxxxxxxxxxxxxxxxxxxxxxx'
+                # 'xxxxxxxxxxxxxxxxxxxxxx'
+                # 'xxxxxxxxxxxxxxxxxx'
+                # 'xxxxxxxxxxxxxxxxx'
+                "xxxxxxxxxx": xxxxx_xxxxx,
+            }
+
+
+class A:
+    def xxxx_xxx_xx_xxxxxxxxxx_xxxx_xxxxxxxxx(xxxx):
+        xxxxxxxx = [
+            xxxxxxxxxxxxxxxx(
+                "xxxx",
+                xxxxxxxxxxx={
+                    "xxxx": 1.0,
+                },
+                xxxxxx={"xxxxxx 1": xxxxxx(xxxx="xxxxxx 1", xxxxxx=600.0)},
+                xxxxxxxx_xxxxxxx=0.0,
+            ),
+            xxxxxxxxxxxxxxxx(
+                "xxxxxxx",
+                xxxxxxxxxxx={
+                    "xxxx": 1.0,
+                },
+                xxxxxx={"xxxxxx 1": xxxxxx(xxxx="xxxxxx 1", xxxxxx=200.0)},
+                xxxxxxxx_xxxxxxx=0.0,
+            ),
+            xxxxxxxxxxxxxxxx(
+                "xxxx",
+            ),
+        ]
+
+
+some_dictionary = {
+    "xxxxx006": [
+        "xxx-xxx"
+        " xxxxx3xxxx1xx2xxxxxxxxxxxxxx0xx6xxxxxxxxxx2xxxxxx9xxxxxxxxxx0xxxxx1xxx2x/xx9xx6+x+xxxxxxxxxxxxxx4xxxxxxxxxxxxxxxxxxxxx43xxx2xx2x4x++xxx6xxxxxxxxx+xxxxx/xx9x+xxxxxxxxxxxxxx8x15xxxxxxxxxxxxxxxxx82xx/xxxxxxxxxxxxxx/x5xxxxxxxxxxxxxx6xxxxxx74x4/xxx4x+xxxxxxxxx2xxxxxxxx87xxxxx4xxxxxxxx3xx0xxxxx4xxx1xx9xx5xxxxxxx/xxxxx5xx6xx4xxxx1x/x2xxxxxxxxxxxx64xxxxxxx1x0xx5xxxxxxxxxxxxxx=="
+        " xxxxx000 xxxxxxxxxx\n",
+        "xxx-xxx"
+        " xxxxx3xxxx1xx2xxxxxxxxxxxxxx6xxxxxxxxxxxxxx9xxxxxxxxxxxxx3xxx9xxxxxxxxxxxxxxxx0xxxxxxxxxxxxxxxxx2xxxx2xxx6xxxxx/xx54xxxxxxxxx4xxx3xxxxxx9xx3xxxxx39xxxxxxxxx5xx91xxxx7xxxxxx8xxxxxxxxxxxxxxxx9xxx93xxxxxxxxxxxxxxxxx7xxx8xx8xx4/x1xxxxx1x3xxxxxxxxxxxxx3xxxxxx9xx4xx4x7xxxxxxxxxxxxx1xxxxxxxxx7xxxxxxxxxxxxxx4xx6xxxxxxxxx9xxx7xxxx2xxxxxxxxxxxxxxxxxxxxxx8xxxxxxxxxxxxxxxxxxxx6xx=="
+        " xxxxx010 xxxxxxxxxx\n",
+    ],
+    "xxxxx016": [
+        "xxx-xxx"
+        " xxxxx3xxxx1xx2xxxxxxxxxxxxxx0xx6xxxxxxxxxx2xxxxxx9xxxxxxxxxx0xxxxx1xxx2x/xx9xx6+x+xxxxxxxxxxxxxx4xxxxxxxxxxxxxxxxxxxxx43xxx2xx2x4x++xxx6xxxxxxxxx+xxxxx/xx9x+xxxxxxxxxxxxxx8x15xxxxxxxxxxxxxxxxx82xx/xxxxxxxxxxxxxx/x5xxxxxxxxxxxxxx6xxxxxx74x4/xxx4x+xxxxxxxxx2xxxxxxxx87xxxxx4xxxxxxxx3xx0xxxxx4xxx1xx9xx5xxxxxxx/xxxxx5xx6xx4xxxx1x/x2xxxxxxxxxxxx64xxxxxxx1x0xx5xxxxxxxxxxxxxx=="
+        " xxxxx000 xxxxxxxxxx\n",
+        "xxx-xxx"
+        " xxxxx3xxxx1xx2xxxxxxxxxxxxxx6xxxxxxxxxxxxxx9xxxxxxxxxxxxx3xxx9xxxxxxxxxxxxxxxx0xxxxxxxxxxxxxxxxx2xxxx2xxx6xxxxx/xx54xxxxxxxxx4xxx3xxxxxx9xx3xxxxx39xxxxxxxxx5xx91xxxx7xxxxxx8xxxxxxxxxxxxxxxx9xxx93xxxxxxxxxxxxxxxxx7xxx8xx8xx4/x1xxxxx1x3xxxxxxxxxxxxx3xxxxxx9xx4xx4x7xxxxxxxxxxxxx1xxxxxxxxx7xxxxxxxxxxxxxx4xx6xxxxxxxxx9xxx7xxxx2xxxxxxxxxxxxxxxxxxxxxx8xxxxxxxxxxxxxxxxxxxx6xx=="
+        " xxxxx010 xxxxxxxxxx\n",
+    ],
+}
+
+
+def foo():
+    xxx_xxx = (  # xxxx xxxxxxxxxx xxxx xx xxxx xx xxx xxxxxxxx xxxxxx xxxxx.
+        'xxxx xxx xxxxxxxx_xxxx xx "xxxxxxxxxx".\n xxx: xxxxxx xxxxxxxx_xxxx=xxxxxxxxxx'
+    )
+
+
+some_tuple = ("some string", "some string which should be joined")
+
+some_commented_string = (  # This comment gets thrown to the top.
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"
+    " {} that I just can't think of any more good words to say about it at"
+    " allllllllllll".format("ha")  # comments here are fine
+)
+
+some_commented_string = (
+    "This string is long but not so long that it needs hahahah toooooo be so greatttt"  # But these
+    " {} that I just can't think of any more good words to say about it at"  # comments will stay
+    " allllllllllll".format("ha")  # comments here are fine
+)
+
+lpar_and_rpar_have_comments = func_call(  # LPAR Comment
+    "Long really ridiculous type of string that shouldn't really even exist at all. I"
+    " mean commmme onnn!!!",  # Comma Comment
+)  # RPAR Comment
+
+cmd_fstring = (
+    "sudo -E deluge-console info --detailed --sort-reverse=time_added "
+    f"{'' if ID is None else ID} | perl -nE 'print if /^{field}:/'"
+)
+
+cmd_fstring = (
+    "sudo -E deluge-console info --detailed --sort-reverse=time_added"
+    f" {'' if ID is None else ID} | perl -nE 'print if /^{field}:/'"
+)
+
+cmd_fstring = (
+    "sudo -E deluge-console info --detailed --sort-reverse=time_added"
+    f" {'{{}}' if ID is None else ID} | perl -nE 'print if /^{field}:/'"
+)
+
+cmd_fstring = (
+    "sudo -E deluge-console info --detailed --sort-reverse=time_added {'' if ID is"
+    f" None else ID}} | perl -nE 'print if /^{field}:/'"
+)
+
+fstring = (
+    "This string really doesn't need to be an {{fstring}}, but this one most"
+    f" certainly, absolutely {does}."
+)
+
+fstring = f"We have to remember to escape {braces}. Like {{these}}. But not {this}."
+
+
+class A:
+    class B:
+        def foo():
+            st_error = STError(
+                f"This string ({string_leaf.value}) appears to be pointless (i.e. has"
+                " no parent)."
+            )
+
+
+def foo():
+    user_regex = _lazy_re_compile(
+        r"(^[-!#$%&'*+/=?^_`{}|~0-9A-Z]+(\.[-!#$%&'*+/=?^_`{}|~0-9A-Z]+)*\Z"  # dot-atom
+        r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001-\011\013\014\016-\177])*"\Z)',  # quoted-string
+        re.IGNORECASE,
+    )
+
+
+def foo():
+    user_regex = _lazy_re_compile(
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"  # dot-atom
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",  # quoted-string
+        xyz,
+    )
+
+
+def foo():
+    user_regex = _lazy_re_compile(
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"  # dot-atom
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",  # quoted-string
+        xyz,
+    )
+
+
+class A:
+    class B:
+        def foo():
+            if not hasattr(module, name):
+                raise ValueError(
+                    "Could not find object %s in %s.\n"
+                    "Please note that you cannot serialize things like inner "
+                    "classes. Please move the object into the main module "
+                    "body to use migrations.\n"
+                    "For more information, see "
+                    "https://docs.djangoproject.com/en/%s/topics/migrations/#serializing-values"
+                    % (name, module_name, get_docs_version())
+                )
+
+
+class A:
+    class B:
+        def foo():
+            if not hasattr(module, name):
+                raise ValueError(
+                    "Could not find object %s in %s.\nPlease note that you cannot"
+                    " serialize things like inner classes. Please move the object into"
+                    " the main module body to use migrations.\nFor more information,"
+                    " see https://docs.djangoproject.com/en/%s/topics/migrations/#serializing-values"
+                    % (name, module_name, get_docs_version())
+                )
+
+
+x = (
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+)
+
+
+class Step(StepBase):
+    def who(self):
+        self.cmd = (
+            "SR AAAA-CORRECT NAME IS {last_name} {first_name}{middle_name}"
+            " {title}/P{passenger_association}".format(
+                last_name=last_name,
+                first_name=first_name,
+                middle_name=middle_name,
+                title=title,
+                passenger_association=passenger_association,
+            )
+        )
+
+
+xxxxxxx_xxxxxx_xxxxxxx = xxx(
+    [
+        xxxxxxxxxxxx(
+            xxxxxx_xxxxxxx=(
+                '((x.aaaaaaaaa = "xxxxxx.xxxxxxxxxxxxxxxxxxxxx") || (x.xxxxxxxxx ='
+                ' "xxxxxxxxxxxx")) && '
+                # xxxxx xxxxxxxxxxxx xxxx xxx (xxxxxxxxxxxxxxxx) xx x xxxxxxxxx xx xxxxxx.
+                "(x.bbbbbbbbbbbb.xxx != "
+                '"xxx:xxx:xxx::cccccccccccc:xxxxxxx-xxxx/xxxxxxxxxxx/xxxxxxxxxxxxxxxxx") && '
+            )
+        )
+    ]
+)
+
+if __name__ == "__main__":
+    for i in range(4, 8):
+        cmd = (
+            r"for pid in $(ps aux | grep paster | grep -v grep | grep '\-%d' | awk"
+            r" '{print $2}'); do kill $pid; done" % (i)
+        )
+
+
+def A():
+    def B():
+        def C():
+            def D():
+                def E():
+                    def F():
+                        def G():
+                            assert (
+                                c_float(val[0][0] / val[0][1]).value
+                                == c_float(value[0][0] / value[0][1]).value
+                            ), "%s didn't roundtrip" % tag
+
+
+class xxxxxxxxxxxxxxxxxxxxx(xxxx.xxxxxxxxxxxxx):
+    def xxxxxxx_xxxxxx(xxxx):
+        assert xxxxxxx_xxxx in [
+            x.xxxxx.xxxxxx.xxxxx.xxxxxx,
+            x.xxxxx.xxxxxx.xxxxx.xxxx,
+        ], (
+            "xxxxxxxxxxx xxxxxxx xxxx (xxxxxx xxxx) %x xxx xxxxx" % xxxxxxx_xxxx
+        )
+
+
+value.__dict__[
+    key
+] = "test"  # set some Thrift field to non-None in the struct aa bb cc dd ee
+
+RE_ONE_BACKSLASH = {
+    "asdf_hjkl_jkl": re.compile(
+        r"(?<!([0-9]\ ))(?<=(^|\ ))([A-Z]+(\ )?|[0-9](\ )|[a-z](\ )){4,7}([A-Z]|[0-9]|[a-z])($|\b)(?!(\ ?([0-9]\ )|(\.)))"
+    ),
+}
+
+RE_TWO_BACKSLASHES = {
+    "asdf_hjkl_jkl": re.compile(
+        r"(?<!([0-9]\ ))(?<=(^|\ ))([A-Z]+(\ )?|[0-9](\ )|[a-z](\\"
+        r" )){4,7}([A-Z]|[0-9]|[a-z])($|\b)(?!(\ ?([0-9]\ )|(\.)))"
+    ),
+}
+
+RE_THREE_BACKSLASHES = {
+    "asdf_hjkl_jkl": re.compile(
+        r"(?<!([0-9]\ ))(?<=(^|\ ))([A-Z]+(\ )?|[0-9](\ )|[a-z](\\\ )){4,7}([A-Z]|[0-9]|[a-z])($|\b)(?!(\ ?([0-9]\ )|(\.)))"
+    ),
+}
+
+# We do NOT split on f-string expressions.
+print(
+    "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam."
+    f" {[f'{i}' for i in range(10)]}"
+)
+x = (
+    "This is a long string which contains an f-expr that should not split"
+    f" {{{[i for i in range(5)]}}}."
+)
+
+# The parens should NOT be removed in this case.
+(
+    "my very long string that should get formatted if I'm careful to make sure it goes"
+    " over 88 characters which it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+    "my very long string that should get formatted if I'm careful to make sure it goes"
+    " over 88 characters which it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+    "my very long string"
+    " that should get formatted"
+    " if I'm careful to make sure"
+    " it goes over 88 characters which"
+    " it has now"
+)
+
+
+def _legacy_listen_examples():
+    text += (
+        "    \"listen for the '%(event_name)s' event\"\n"
+        "\n    # ... (event logic logic logic) ...\n"
+        % {
+            "since": since,
+        }
+    )
+
+
+class X:
+    async def foo(self):
+        msg = ""
+        for candidate in CANDIDATES:
+            msg += (
+                "**{candidate.object_type} {candidate.rev}**"
+                " - {candidate.description}\n"
+            )
+
+
+temp_msg = (
+    f"{f'{humanize_number(pos)}.': <{pound_len+2}} "
+    f"{balance: <{bal_len + 5}} "
+    f"<<{author.display_name}>>\n"
+)
+
+assert (
+    str(suffix_arr)
+    == "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    != "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    <= "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    >= "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    < "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    > "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', "
+    "'grykangaroo$', 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', "
+    "'o$', 'oo$', 'roo$', 'rykangaroo$', 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    in "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', 'grykangaroo$',"
+    " 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', 'o$', 'oo$', 'roo$', 'rykangaroo$',"
+    " 'ykangaroo$']"
+)
+assert (
+    str(suffix_arr)
+    not in "['$', 'angaroo$', 'angrykangaroo$', 'aroo$', 'garoo$', 'grykangaroo$',"
+    " 'kangaroo$', 'ngaroo$', 'ngrykangaroo$', 'o$', 'oo$', 'roo$',"
+    " 'rykangaroo$', 'ykangaroo$']"
+)
+message = (
+    f"1. Go to Google Developers Console and log in with your Google account."
+    f"(https://console.developers.google.com/)"
+    f"2. You should be prompted to create a new project (name does not matter)."
+    f"3. Click on Enable APIs and Services at the top."
+    f"4. In the list of APIs choose or search for YouTube Data API v3 and "
+    f"click on it. Choose Enable."
+    f"5. Click on Credentials on the left navigation bar."
+    f"6. Click on Create Credential at the top."
+    f'7. At the top click the link for "API key".'
+    f"8. No application restrictions are needed. Click Create at the bottom."
+    f"9. You now have a key to add to `{{prefix}}set api youtube api_key`"
+)
+message = (
+    f"1. Go to Google Developers Console and log in with your Google account."
+    f"(https://console.developers.google.com/)"
+    f"2. You should be prompted to create a new project (name does not matter)."
+    f"3. Click on Enable APIs and Services at the top."
+    f"4. In the list of APIs choose or search for YouTube Data API v3 and "
+    f"click on it. Choose Enable."
+    f"5. Click on Credentials on the left navigation bar."
+    f"6. Click on Create Credential at the top."
+    f'7. At the top click the link for "API key".'
+    f"8. No application restrictions are needed. Click Create at the bottom."
+    f"9. You now have a key to add to `{{prefix}}set api youtube api_key`"
+)
+message = (
+    "1. Go to Google Developers Console and log in with your Google account."
+    "(https://console.developers.google.com/)"
+    "2. You should be prompted to create a new project (name does not matter)."
+    "3. Click on Enable APIs and Services at the top."
+    "4. In the list of APIs choose or search for YouTube Data API v3 and "
+    "click on it. Choose Enable."
+    "5. Click on Credentials on the left navigation bar."
+    "6. Click on Create Credential at the top."
+    '7. At the top click the link for "API key".'
+    "8. No application restrictions are needed. Click Create at the bottom."
+    f"9. You now have a key to add to `{prefix}set api youtube api_key`"
+)
+
+# It shouldn't matter if the string prefixes are capitalized.
+temp_msg = (
+    f"{F'{humanize_number(pos)}.': <{pound_len+2}} "
+    f"{balance: <{bal_len + 5}} "
+    f"<<{author.display_name}>>\n"
+)
+
+fstring = f"We have to remember to escape {braces}. Like {{these}}. But not {this}."
+
+welcome_to_programming = R"hello," R" world!"
+
+fstring = (
+    f"f-strings definitely make things more {difficult} than they need to be for"
+    " {black}. But boy they sure are handy. The problem is that some lines will need"
+    f" to have the 'f' whereas others do not. This {line}, for example, needs one."
+)
+
+x = (
+    "This is a long string which contains an f-expr that should not split"
+    f" {{{[i for i in range(5)]}}}."
+)
+
+x = (
+    "\N{BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR}\N{VARIATION SELECTOR-16}"
+)
+
+xxxxxx_xxx_xxxx_xx_xxxxx_xxxxxxxx_xxxxxxxx_xxxxxxxxxx_xxxx_xxxx_xxxxx = xxxx.xxxxxx.xxxxxxxxx.xxxxxxxxxxxxxxxxxxxx(
+    xx_xxxxxx={
+        "x3_xxxxxxxx": (
+            "xxx3_xxxxx_xxxxxxxx_xxxxxxxx_xxxxxxxxxx_xxxxxxxx_xxxxxx_xxxxxxx"
+        ),
+    },
+)
diff --git a/.vim/bundle/black/tests/data/long_strings_flag_disabled.py b/.vim/bundle/black/tests/data/long_strings_flag_disabled.py
new file mode 100644 (file)
index 0000000..ef3094f
--- /dev/null
@@ -0,0 +1,289 @@
+x = "This is a really long string that can't possibly be expected to fit all together on one line. In fact it may even take up three or more lines... like four or five... but probably just three."
+
+x += "This is a really long string that can't possibly be expected to fit all together on one line. In fact it may even take up three or more lines... like four or five... but probably just three."
+
+y = "Short string"
+
+print(
+    "This is a really long string inside of a print statement with extra arguments attached at the end of it.",
+    x,
+    y,
+    z,
+)
+
+print(
+    "This is a really long string inside of a print statement with no extra arguments attached at the end of it."
+)
+
+D1 = {
+    "The First": "This is a really long string that can't possibly be expected to fit all together on one line. Also it is inside a dictionary, so formatting is more difficult.",
+    "The Second": "This is another really really (not really) long string that also can't be expected to fit on one line and is, like the other string, inside a dictionary.",
+}
+
+D2 = {
+    1.0: "This is a really long string that can't possibly be expected to fit all together on one line. Also it is inside a dictionary, so formatting is more difficult.",
+    2.0: "This is another really really (not really) long string that also can't be expected to fit on one line and is, like the other string, inside a dictionary.",
+}
+
+D3 = {
+    x: "This is a really long string that can't possibly be expected to fit all together on one line. Also it is inside a dictionary, so formatting is more difficult.",
+    y: "This is another really really (not really) long string that also can't be expected to fit on one line and is, like the other string, inside a dictionary.",
+}
+
+D4 = {
+    "A long and ridiculous {}".format(
+        string_key
+    ): "This is a really really really long string that has to go i,side of a dictionary. It is soooo bad.",
+    some_func(
+        "calling", "some", "stuff"
+    ): "This is a really really really long string that has to go inside of a dictionary. It is {soooo} bad (#{x}).".format(
+        sooo="soooo", x=2
+    ),
+    "A %s %s"
+    % (
+        "formatted",
+        "string",
+    ): "This is a really really really long string that has to go inside of a dictionary. It is %s bad (#%d)."
+    % ("soooo", 2),
+}
+
+func_with_keywords(
+    my_arg,
+    my_kwarg="Long keyword strings also need to be wrapped, but they will probably need to be handled a little bit differently.",
+)
+
+bad_split1 = (
+    "But what should happen when code has already been formatted but in the wrong way? Like"
+    " with a space at the end instead of the beginning. Or what about when it is split too soon?"
+)
+
+bad_split2 = (
+    "But what should happen when code has already "
+    "been formatted but in the wrong way? Like "
+    "with a space at the end instead of the "
+    "beginning. Or what about when it is split too "
+    "soon? In the case of a split that is too "
+    "short, black will try to honer the custom "
+    "split."
+)
+
+bad_split3 = (
+    "What if we have inline comments on "  # First Comment
+    "each line of a bad split? In that "  # Second Comment
+    "case, we should just leave it alone."  # Third Comment
+)
+
+bad_split_func1(
+    "But what should happen when code has already "
+    "been formatted but in the wrong way? Like "
+    "with a space at the end instead of the "
+    "beginning. Or what about when it is split too "
+    "soon? In the case of a split that is too "
+    "short, black will try to honer the custom "
+    "split.",
+    xxx,
+    yyy,
+    zzz,
+)
+
+bad_split_func2(
+    xxx,
+    yyy,
+    zzz,
+    long_string_kwarg="But what should happen when code has already been formatted but in the wrong way? Like "
+    "with a space at the end instead of the beginning. Or what about when it is split too "
+    "soon?",
+)
+
+bad_split_func3(
+    (
+        "But what should happen when code has already "
+        r"been formatted but in the wrong way? Like "
+        "with a space at the end instead of the "
+        r"beginning. Or what about when it is split too "
+        r"soon? In the case of a split that is too "
+        "short, black will try to honer the custom "
+        "split."
+    ),
+    xxx,
+    yyy,
+    zzz,
+)
+
+raw_string = r"This is a long raw string. When re-formatting this string, black needs to make sure it prepends the 'r' onto the new string."
+
+fmt_string1 = "We also need to be sure to preserve any and all {} which may or may not be attached to the string in question.".format(
+    "method calls"
+)
+
+fmt_string2 = "But what about when the string is {} but {}".format(
+    "short",
+    "the method call is really really really really really really really really long?",
+)
+
+old_fmt_string1 = (
+    "While we are on the topic of %s, we should also note that old-style formatting must also be preserved, since some %s still uses it."
+    % ("formatting", "code")
+)
+
+old_fmt_string2 = "This is a %s %s %s %s" % (
+    "really really really really really",
+    "old",
+    "way to format strings!",
+    "Use f-strings instead!",
+)
+
+old_fmt_string3 = "Whereas only the strings after the percent sign were long in the last example, this example uses a long initial string as well. This is another %s %s %s %s" % (
+    "really really really really really",
+    "old",
+    "way to format strings!",
+    "Use f-strings instead!",
+)
+
+fstring = f"f-strings definitely make things more {difficult} than they need to be for {{black}}. But boy they sure are handy. The problem is that some lines will need to have the 'f' whereas others do not. This {line}, for example, needs one."
+
+fstring_with_no_fexprs = f"Some regular string that needs to get split certainly but is NOT an fstring by any means whatsoever."
+
+comment_string = "Long lines with inline comments should have their comments appended to the reformatted string's enclosing right parentheses."  # This comment gets thrown to the top.
+
+arg_comment_string = print(
+    "Long lines with inline comments which are apart of (and not the only member of) an argument list should have their comments appended to the reformatted string's enclosing left parentheses.",  # This comment stays on the bottom.
+    "Arg #2",
+    "Arg #3",
+    "Arg #4",
+    "Arg #5",
+)
+
+pragma_comment_string1 = "Lines which end with an inline pragma comment of the form `# <pragma>: <...>` should be left alone."  # noqa: E501
+
+pragma_comment_string2 = "Lines which end with an inline pragma comment of the form `# <pragma>: <...>` should be left alone."  # noqa
+
+"""This is a really really really long triple quote string and it should not be touched."""
+
+triple_quote_string = """This is a really really really long triple quote string assignment and it should not be touched."""
+
+assert (
+    some_type_of_boolean_expression
+), "Followed by a really really really long string that is used to provide context to the AssertionError exception."
+
+assert (
+    some_type_of_boolean_expression
+), "Followed by a really really really long string that is used to provide context to the AssertionError exception, which uses dynamic string {}.".format(
+    "formatting"
+)
+
+assert some_type_of_boolean_expression, (
+    "Followed by a really really really long string that is used to provide context to the AssertionError exception, which uses dynamic string %s."
+    % "formatting"
+)
+
+assert some_type_of_boolean_expression, (
+    "Followed by a really really really long string that is used to provide context to the AssertionError exception, which uses dynamic %s %s."
+    % ("string", "formatting")
+)
+
+some_function_call(
+    "With a reallly generic name and with a really really long string that is, at some point down the line, "
+    + added
+    + " to a variable and then added to another string."
+)
+
+some_function_call(
+    "With a reallly generic name and with a really really long string that is, at some point down the line, "
+    + added
+    + " to a variable and then added to another string. But then what happens when the final string is also supppppperrrrr long?! Well then that second (realllllllly long) string should be split too.",
+    "and a second argument",
+    and_a_third,
+)
+
+return "A really really really really really really really really really really really really really long {} {}".format(
+    "return", "value"
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma which should NOT be there.",
+)
+
+func_with_bad_comma(
+    "This is a really long string argument to a function that has a trailing comma which should NOT be there.",  # comment after comma
+)
+
+func_with_bad_comma(
+    (
+        "This is a really long string argument to a function that has a trailing comma"
+        " which should NOT be there."
+    ),
+)
+
+func_with_bad_comma(
+    (
+        "This is a really long string argument to a function that has a trailing comma"
+        " which should NOT be there."
+    ),  # comment after comma
+)
+
+func_with_bad_parens_that_wont_fit_in_one_line(
+    ("short string that should have parens stripped"), x, y, z
+)
+
+func_with_bad_parens_that_wont_fit_in_one_line(
+    x, y, ("short string that should have parens stripped"), z
+)
+
+func_with_bad_parens(
+    ("short string that should have parens stripped"),
+    x,
+    y,
+    z,
+)
+
+func_with_bad_parens(
+    x,
+    y,
+    ("short string that should have parens stripped"),
+    z,
+)
+
+annotated_variable: Final = (
+    "This is a large "
+    + STRING
+    + " that has been "
+    + CONCATENATED
+    + "using the '+' operator."
+)
+annotated_variable: Final = "This is a large string that has a type annotation attached to it. A type annotation should NOT stop a long string from being wrapped."
+annotated_variable: Literal[
+    "fakse_literal"
+] = "This is a large string that has a type annotation attached to it. A type annotation should NOT stop a long string from being wrapped."
+
+backslashes = "This is a really long string with \"embedded\" double quotes and 'single' quotes that also handles checking for an even number of backslashes \\"
+backslashes = "This is a really long string with \"embedded\" double quotes and 'single' quotes that also handles checking for an even number of backslashes \\\\"
+backslashes = "This is a really 'long' string with \"embedded double quotes\" and 'single' quotes that also handles checking for an odd number of backslashes \\\", like this...\\\\\\"
+
+short_string = "Hi" " there."
+
+func_call(short_string=("Hi" " there."))
+
+raw_strings = r"Don't" " get" r" merged" " unless they are all raw."
+
+
+def foo():
+    yield "This is a really long string that can't possibly be expected to fit all together on one line. In fact it may even take up three or more lines... like four or five... but probably just three."
+
+
+x = f"This is a {{really}} long string that needs to be split without a doubt (i.e. most definitely). In short, this {string} that can't possibly be {{expected}} to fit all together on one line. In {fact} it may even take up three or more lines... like four or five... but probably just four."
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # type: ignore
+    " of it."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # noqa
+    " of it."
+)
+
+long_unmergable_string_with_pragma = (
+    "This is a really long string that can't be merged because it has a likely pragma at the end"  # pylint: disable=some-pylint-check
+    " of it."
+)
diff --git a/.vim/bundle/black/tests/data/missing_final_newline.diff b/.vim/bundle/black/tests/data/missing_final_newline.diff
new file mode 100644 (file)
index 0000000..6d991c7
--- /dev/null
@@ -0,0 +1,8 @@
+--- [Deterministic header]
++++ [Deterministic header]
+@@ -1,3 +1,3 @@
+ # A comment-only file, with no final EOL character
+ # This triggers https://bugs.python.org/issue2142
+-# This is the line without the EOL character
+\ No newline at end of file
++# This is the line without the EOL character
diff --git a/.vim/bundle/black/tests/data/missing_final_newline.py b/.vim/bundle/black/tests/data/missing_final_newline.py
new file mode 100644 (file)
index 0000000..687e136
--- /dev/null
@@ -0,0 +1,3 @@
+# A comment-only file, with no final EOL character
+# This triggers https://bugs.python.org/issue2142
+# This is the line without the EOL character
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/pyproject.toml b/.vim/bundle/black/tests/data/nested_gitignore_tests/pyproject.toml
new file mode 100644 (file)
index 0000000..9ba7ec2
--- /dev/null
@@ -0,0 +1,3 @@
+[build-system]
+requires = ["setuptools>=41.0", "setuptools-scm", "wheel"]
+build-backend = "setuptools.build_meta"
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/.gitignore b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/.gitignore
new file mode 100644 (file)
index 0000000..2987e7b
--- /dev/null
@@ -0,0 +1 @@
+a.py
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/a.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/a.py
new file mode 100644 (file)
index 0000000..7135cfd
--- /dev/null
@@ -0,0 +1 @@
+# should be excluded (root/.gitignore)
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/b.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/b.py
new file mode 100644 (file)
index 0000000..bdeeca3
--- /dev/null
@@ -0,0 +1 @@
+# should be included
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/c.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/c.py
new file mode 100644 (file)
index 0000000..bdeeca3
--- /dev/null
@@ -0,0 +1 @@
+# should be included
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/.gitignore b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/.gitignore
new file mode 100644 (file)
index 0000000..6df81dd
--- /dev/null
@@ -0,0 +1 @@
+b.py
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/a.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/a.py
new file mode 100644 (file)
index 0000000..7135cfd
--- /dev/null
@@ -0,0 +1 @@
+# should be excluded (root/.gitignore)
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/b.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/b.py
new file mode 100644 (file)
index 0000000..c91d479
--- /dev/null
@@ -0,0 +1 @@
+# should be excluded (child/.gitignore)
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/c.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/root/child/c.py
new file mode 100644 (file)
index 0000000..bdeeca3
--- /dev/null
@@ -0,0 +1 @@
+# should be included
diff --git a/.vim/bundle/black/tests/data/nested_gitignore_tests/x.py b/.vim/bundle/black/tests/data/nested_gitignore_tests/x.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/.vim/bundle/black/tests/data/non_python_notebook.ipynb b/.vim/bundle/black/tests/data/non_python_notebook.ipynb
new file mode 100644 (file)
index 0000000..da5cdd8
--- /dev/null
@@ -0,0 +1 @@
+{"metadata":{"kernelspec":{"name":"ir","display_name":"R","language":"R"},"language_info":{"name":"R","codemirror_mode":"r","pygments_lexer":"r","mimetype":"text/x-r-source","file_extension":".r","version":"4.0.5"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"library(tidyverse) ","metadata":{"_uuid":"051d70d956493feee0c6d64651c6a088724dca2a","_execution_state":"idle"},"execution_count":null,"outputs":[]}]}
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/notebook_empty_metadata.ipynb b/.vim/bundle/black/tests/data/notebook_empty_metadata.ipynb
new file mode 100644 (file)
index 0000000..7dc1f80
--- /dev/null
@@ -0,0 +1,27 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "%%time\n",
+    "\n",
+    "print('foo')"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {},
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/.vim/bundle/black/tests/data/notebook_no_trailing_newline.ipynb b/.vim/bundle/black/tests/data/notebook_no_trailing_newline.ipynb
new file mode 100644 (file)
index 0000000..79f95be
--- /dev/null
@@ -0,0 +1,39 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "%%time\n",
+    "\n",
+    "print('foo')"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "interpreter": {
+   "hash": "e758f3098b5b55f4d87fe30bbdc1367f20f246b483f96267ee70e6c40cb185d8"
+  },
+  "kernelspec": {
+   "display_name": "Python 3.8.10 64-bit ('black': venv)",
+   "name": "python3"
+  },
+  "language_info": {
+   "name": "python",
+   "version": ""
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/notebook_trailing_newline.ipynb b/.vim/bundle/black/tests/data/notebook_trailing_newline.ipynb
new file mode 100644 (file)
index 0000000..4f82869
--- /dev/null
@@ -0,0 +1,39 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "%%time\n",
+    "\n",
+    "print('foo')"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "interpreter": {
+   "hash": "e758f3098b5b55f4d87fe30bbdc1367f20f246b483f96267ee70e6c40cb185d8"
+  },
+  "kernelspec": {
+   "display_name": "Python 3.8.10 64-bit ('black': venv)",
+   "name": "python3"
+  },
+  "language_info": {
+   "name": "python",
+   "version": ""
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/.vim/bundle/black/tests/data/notebook_which_cant_be_parsed.ipynb b/.vim/bundle/black/tests/data/notebook_which_cant_be_parsed.ipynb
new file mode 100644 (file)
index 0000000..257cc56
--- /dev/null
@@ -0,0 +1 @@
+foo
diff --git a/.vim/bundle/black/tests/data/notebook_without_changes.ipynb b/.vim/bundle/black/tests/data/notebook_without_changes.ipynb
new file mode 100644 (file)
index 0000000..ac6c7e6
--- /dev/null
@@ -0,0 +1,46 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "%%time\n",
+    "\n",
+    "print(\"foo\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "This notebook should not be reformatted"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "interpreter": {
+   "hash": "e758f3098b5b55f4d87fe30bbdc1367f20f246b483f96267ee70e6c40cb185d8"
+  },
+  "kernelspec": {
+   "display_name": "Python 3.8.10 64-bit ('black': venv)",
+   "name": "python3"
+  },
+  "language_info": {
+   "name": "python",
+   "version": ""
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/numeric_literals.py b/.vim/bundle/black/tests/data/numeric_literals.py
new file mode 100644 (file)
index 0000000..254da68
--- /dev/null
@@ -0,0 +1,44 @@
+#!/usr/bin/env python3.6
+
+x = 123456789
+x = 123456
+x = .1
+x = 1.
+x = 1E+1
+x = 1E-1
+x = 1.000_000_01
+x = 123456789.123456789
+x = 123456789.123456789E123456789
+x = 123456789E123456789
+x = 123456789J
+x = 123456789.123456789J
+x = 0XB1ACC
+x = 0B1011
+x = 0O777
+x = 0.000000006
+x = 10000
+x = 133333
+
+# output
+
+
+#!/usr/bin/env python3.6
+
+x = 123456789
+x = 123456
+x = 0.1
+x = 1.0
+x = 1e1
+x = 1e-1
+x = 1.000_000_01
+x = 123456789.123456789
+x = 123456789.123456789e123456789
+x = 123456789e123456789
+x = 123456789j
+x = 123456789.123456789j
+x = 0xB1ACC
+x = 0b1011
+x = 0o777
+x = 0.000000006
+x = 10000
+x = 133333
diff --git a/.vim/bundle/black/tests/data/numeric_literals_py2.py b/.vim/bundle/black/tests/data/numeric_literals_py2.py
new file mode 100644 (file)
index 0000000..8f85c43
--- /dev/null
@@ -0,0 +1,16 @@
+#!/usr/bin/env python2.7
+
+x = 123456789L
+x = 123456789l
+x = 123456789
+x = 0xb1acc
+
+# output
+
+
+#!/usr/bin/env python2.7
+
+x = 123456789L
+x = 123456789L
+x = 123456789
+x = 0xB1ACC
diff --git a/.vim/bundle/black/tests/data/numeric_literals_skip_underscores.py b/.vim/bundle/black/tests/data/numeric_literals_skip_underscores.py
new file mode 100644 (file)
index 0000000..e345bb9
--- /dev/null
@@ -0,0 +1,23 @@
+#!/usr/bin/env python3.6
+
+x = 123456789
+x = 1_2_3_4_5_6_7
+x = 1E+1
+x = 0xb1acc
+x = 0.00_00_006
+x = 12_34_567J
+x = .1_2
+x = 1_2.
+
+# output
+
+#!/usr/bin/env python3.6
+
+x = 123456789
+x = 1_2_3_4_5_6_7
+x = 1e1
+x = 0xB1ACC
+x = 0.00_00_006
+x = 12_34_567j
+x = 0.1_2
+x = 1_2.0
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/pep_570.py b/.vim/bundle/black/tests/data/pep_570.py
new file mode 100644 (file)
index 0000000..ca8f7ab
--- /dev/null
@@ -0,0 +1,44 @@
+def positional_only_arg(a, /):
+    pass
+
+
+def all_markers(a, b, /, c, d, *, e, f):
+    pass
+
+
+def all_markers_with_args_and_kwargs(
+    a_long_one,
+    b_long_one,
+    /,
+    c_long_one,
+    d_long_one,
+    *args,
+    e_long_one,
+    f_long_one,
+    **kwargs,
+):
+    pass
+
+
+def all_markers_with_defaults(a, b=1, /, c=2, d=3, *, e=4, f=5):
+    pass
+
+
+def long_one_with_long_parameter_names(
+    but_all_of_them,
+    are_positional_only,
+    arguments_mmmmkay,
+    so_this_is_only_valid_after,
+    three_point_eight,
+    /,
+):
+    pass
+
+
+lambda a, /: a
+
+lambda a, b, /, c, d, *, e, f: a
+
+lambda a, b, /, c, d, *args, e, f, **kwargs: args
+
+lambda a, b=1, /, c=2, d=3, *, e=4, f=5: 1
diff --git a/.vim/bundle/black/tests/data/pep_572.py b/.vim/bundle/black/tests/data/pep_572.py
new file mode 100644 (file)
index 0000000..c6867f2
--- /dev/null
@@ -0,0 +1,47 @@
+(a := 1)
+(a := a)
+if (match := pattern.search(data)) is None:
+    pass
+if match := pattern.search(data):
+    pass
+[y := f(x), y ** 2, y ** 3]
+filtered_data = [y for x in data if (y := f(x)) is None]
+(y := f(x))
+y0 = (y1 := f(x))
+foo(x=(y := f(x)))
+
+
+def foo(answer=(p := 42)):
+    pass
+
+
+def foo(answer: (p := 42) = 5):
+    pass
+
+
+lambda: (x := 1)
+(x := lambda: 1)
+(x := lambda: (y := 1))
+lambda line: (m := re.match(pattern, line)) and m.group(1)
+x = (y := 0)
+(z := (y := (x := 0)))
+(info := (name, phone, *rest))
+(x := 1, 2)
+(total := total + tax)
+len(lines := f.readlines())
+foo(x := 3, cat="vector")
+foo(cat=(category := "vector"))
+if any(len(longline := l) >= 100 for l in lines):
+    print(longline)
+if env_base := os.environ.get("PYTHONUSERBASE", None):
+    return env_base
+if self._is_special and (ans := self._check_nans(context=context)):
+    return ans
+foo(b := 2, a=1)
+foo((b := 2), a=1)
+foo(c=(b := 2), a=1)
+
+while x := f(x):
+    pass
+while x := f(x):
+    pass
diff --git a/.vim/bundle/black/tests/data/pep_572_do_not_remove_parens.py b/.vim/bundle/black/tests/data/pep_572_do_not_remove_parens.py
new file mode 100644 (file)
index 0000000..20e80a6
--- /dev/null
@@ -0,0 +1,21 @@
+# Most of the following examples are really dumb, some of them aren't even accepted by Python,
+# we're fixing them only so fuzzers (which follow the grammar which actually allows these
+# examples matter of fact!) don't yell at us :p
+
+del (a := [1])
+
+try:
+    pass
+except (a := 1) as (b := why_does_this_exist):
+    pass
+
+for (z := 124) in (x := -124):
+    pass
+
+with (y := [3, 2, 1]) as (funfunfun := indeed):
+    pass
+
+
+@(please := stop)
+def sigh():
+    pass
diff --git a/.vim/bundle/black/tests/data/pep_572_py310.py b/.vim/bundle/black/tests/data/pep_572_py310.py
new file mode 100644 (file)
index 0000000..2aef589
--- /dev/null
@@ -0,0 +1,4 @@
+# Unparenthesized walruses are now allowed in indices since Python 3.10.
+x[a:=0]
+x[a:=0, b:=1]
+x[5, b:=0]
diff --git a/.vim/bundle/black/tests/data/pep_572_py39.py b/.vim/bundle/black/tests/data/pep_572_py39.py
new file mode 100644 (file)
index 0000000..7bbd509
--- /dev/null
@@ -0,0 +1,7 @@
+# Unparenthesized walruses are now allowed in set literals & set comprehensions
+# since Python 3.9
+{x := 1, 2, 3}
+{x4 := x ** 5 for x in range(7)}
+# We better not remove the parentheses here (since it's a 3.10 feature)
+x[(a := 1)]
+x[(a := 1), (b := 3)]
diff --git a/.vim/bundle/black/tests/data/pep_572_remove_parens.py b/.vim/bundle/black/tests/data/pep_572_remove_parens.py
new file mode 100644 (file)
index 0000000..9718d95
--- /dev/null
@@ -0,0 +1,105 @@
+if (foo := 0):
+    pass
+
+if (foo := 1):
+    pass
+
+if (y := 5 + 5):
+    pass
+
+y = (x := 0)
+
+y += (x := 0)
+
+(y := 5 + 5)
+
+test: int = (test2 := 2)
+
+a, b = (test := (1, 2))
+
+# see also https://github.com/psf/black/issues/2139
+assert (foo := 42 - 12)
+
+foo(x=(y := f(x)))
+
+
+def foo(answer=(p := 42)):
+    ...
+
+
+def foo2(answer: (p := 42) = 5):
+    ...
+
+
+lambda: (x := 1)
+
+a[(x := 12)]
+a[:(x := 13)]
+
+# we don't touch expressions in f-strings but if we do one day, don't break 'em
+f'{(x:=10)}'
+
+
+def a():
+    return (x := 3)
+    await (b := 1)
+    yield (a := 2)
+    raise (c := 3)
+
+def this_is_so_dumb() -> (please := no):
+    pass
+
+
+# output
+if foo := 0:
+    pass
+
+if foo := 1:
+    pass
+
+if y := 5 + 5:
+    pass
+
+y = (x := 0)
+
+y += (x := 0)
+
+(y := 5 + 5)
+
+test: int = (test2 := 2)
+
+a, b = (test := (1, 2))
+
+# see also https://github.com/psf/black/issues/2139
+assert (foo := 42 - 12)
+
+foo(x=(y := f(x)))
+
+
+def foo(answer=(p := 42)):
+    ...
+
+
+def foo2(answer: (p := 42) = 5):
+    ...
+
+
+lambda: (x := 1)
+
+a[(x := 12)]
+a[:(x := 13)]
+
+# we don't touch expressions in f-strings but if we do one day, don't break 'em
+f"{(x:=10)}"
+
+
+def a():
+    return (x := 3)
+    await (b := 1)
+    yield (a := 2)
+    raise (c := 3)
+
+
+def this_is_so_dumb() -> (please := no):
+    pass
+
diff --git a/.vim/bundle/black/tests/data/percent_precedence.py b/.vim/bundle/black/tests/data/percent_precedence.py
new file mode 100644 (file)
index 0000000..b895443
--- /dev/null
@@ -0,0 +1,41 @@
+("" % a) ** 2
+("" % a)[0]
+("" % a)()
+("" % a).b
+
+2 * ("" % a)
+2 @ ("" % a)
+2 / ("" % a)
+2 // ("" % a)
+2 % ("" % a)
++("" % a)
+b + ("" % a)
+-("" % a)
+b - ("" % a)
+b + -("" % a)
+~("" % a)
+2 ** ("" % a)
+await ("" % a)
+b[("" % a)]
+b(("" % a))
+# output
+("" % a) ** 2
+("" % a)[0]
+("" % a)()
+("" % a).b
+
+2 * ("" % a)
+2 @ ("" % a)
+2 / ("" % a)
+2 // ("" % a)
+2 % ("" % a)
++("" % a)
+b + "" % a
+-("" % a)
+b - "" % a
+b + -("" % a)
+~("" % a)
+2 ** ("" % a)
+await ("" % a)
+b[("" % a)]
+b(("" % a))
diff --git a/.vim/bundle/black/tests/data/python2.py b/.vim/bundle/black/tests/data/python2.py
new file mode 100644 (file)
index 0000000..4a22f46
--- /dev/null
@@ -0,0 +1,33 @@
+#!/usr/bin/env python2
+
+import sys
+
+print >> sys.stderr , "Warning:" ,
+print >> sys.stderr , "this is a blast from the past."
+print >> sys.stderr , "Look, a repr:", `sys`
+
+
+def function((_globals, _locals)):
+    exec ur"print 'hi from exec!'" in _globals, _locals
+
+
+function((globals(), locals()))
+
+
+# output
+
+
+#!/usr/bin/env python2
+
+import sys
+
+print >>sys.stderr, "Warning:",
+print >>sys.stderr, "this is a blast from the past."
+print >>sys.stderr, "Look, a repr:", ` sys `
+
+
+def function((_globals, _locals)):
+    exec ur"print 'hi from exec!'" in _globals, _locals
+
+
+function((globals(), locals()))
diff --git a/.vim/bundle/black/tests/data/python2_print_function.py b/.vim/bundle/black/tests/data/python2_print_function.py
new file mode 100755 (executable)
index 0000000..81b8d8a
--- /dev/null
@@ -0,0 +1,16 @@
+#!/usr/bin/env python2
+from __future__ import print_function
+
+print('hello')
+print(u'hello')
+print(a, file=sys.stderr)
+
+# output
+
+
+#!/usr/bin/env python2
+from __future__ import print_function
+
+print("hello")
+print(u"hello")
+print(a, file=sys.stderr)
diff --git a/.vim/bundle/black/tests/data/python2_unicode_literals.py b/.vim/bundle/black/tests/data/python2_unicode_literals.py
new file mode 100644 (file)
index 0000000..2fe7039
--- /dev/null
@@ -0,0 +1,20 @@
+#!/usr/bin/env python2
+from __future__ import unicode_literals as _unicode_literals
+from __future__ import absolute_import
+from __future__ import print_function as lol, with_function
+
+u'hello'
+U"hello"
+Ur"hello"
+
+# output
+
+
+#!/usr/bin/env python2
+from __future__ import unicode_literals as _unicode_literals
+from __future__ import absolute_import
+from __future__ import print_function as lol, with_function
+
+"hello"
+"hello"
+r"hello"
diff --git a/.vim/bundle/black/tests/data/python37.py b/.vim/bundle/black/tests/data/python37.py
new file mode 100644 (file)
index 0000000..dab8b40
--- /dev/null
@@ -0,0 +1,65 @@
+#!/usr/bin/env python3.7
+
+
+def f():
+    return (i * 2 async for i in arange(42))
+
+
+def g():
+    return (
+        something_long * something_long
+        async for something_long in async_generator(with_an_argument)
+    )
+
+
+async def func():
+    if test:
+        out_batched = [
+            i
+            async for i in aitertools._async_map(
+                self.async_inc, arange(8), batch_size=3
+            )
+        ]
+
+
+def awaited_generator_value(n):
+    return (await awaitable for awaitable in awaitable_list)
+
+
+def make_arange(n):
+    return (i * 2 for i in range(n) if await wrap(i))
+
+
+# output
+
+
+#!/usr/bin/env python3.7
+
+
+def f():
+    return (i * 2 async for i in arange(42))
+
+
+def g():
+    return (
+        something_long * something_long
+        async for something_long in async_generator(with_an_argument)
+    )
+
+
+async def func():
+    if test:
+        out_batched = [
+            i
+            async for i in aitertools._async_map(
+                self.async_inc, arange(8), batch_size=3
+            )
+        ]
+
+
+def awaited_generator_value(n):
+    return (await awaitable for awaitable in awaitable_list)
+
+
+def make_arange(n):
+    return (i * 2 for i in range(n) if await wrap(i))
diff --git a/.vim/bundle/black/tests/data/python38.py b/.vim/bundle/black/tests/data/python38.py
new file mode 100644 (file)
index 0000000..63b0588
--- /dev/null
@@ -0,0 +1,45 @@
+#!/usr/bin/env python3.8
+
+
+def starred_return():
+    my_list = ["value2", "value3"]
+    return "value1", *my_list
+
+
+def starred_yield():
+    my_list = ["value2", "value3"]
+    yield "value1", *my_list
+
+
+# all right hand side expressions allowed in regular assignments are now also allowed in
+# annotated assignments
+a : Tuple[ str, int] = "1", 2
+a: Tuple[int , ... ] = b,  *c, d
+def t():
+    a : str =  yield "a"
+
+
+# output
+
+
+#!/usr/bin/env python3.8
+
+
+def starred_return():
+    my_list = ["value2", "value3"]
+    return "value1", *my_list
+
+
+def starred_yield():
+    my_list = ["value2", "value3"]
+    yield "value1", *my_list
+
+
+# all right hand side expressions allowed in regular assignments are now also allowed in
+# annotated assignments
+a: Tuple[str, int] = "1", 2
+a: Tuple[int, ...] = b, *c, d
+
+
+def t():
+    a: str = yield "a"
diff --git a/.vim/bundle/black/tests/data/python39.py b/.vim/bundle/black/tests/data/python39.py
new file mode 100644 (file)
index 0000000..ae67c22
--- /dev/null
@@ -0,0 +1,37 @@
+#!/usr/bin/env python3.9
+
+@relaxed_decorator[0]
+def f():
+    ...
+
+@relaxed_decorator[extremely_long_name_that_definitely_will_not_fit_on_one_line_of_standard_length]
+def f():
+    ...
+
+@extremely_long_variable_name_that_doesnt_fit := complex.expression(with_long="arguments_value_that_wont_fit_at_the_end_of_the_line")
+def f():
+    ...
+
+# output
+
+
+#!/usr/bin/env python3.9
+
+
+@relaxed_decorator[0]
+def f():
+    ...
+
+
+@relaxed_decorator[
+    extremely_long_name_that_definitely_will_not_fit_on_one_line_of_standard_length
+]
+def f():
+    ...
+
+
+@extremely_long_variable_name_that_doesnt_fit := complex.expression(
+    with_long="arguments_value_that_wont_fit_at_the_end_of_the_line"
+)
+def f():
+    ...
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/remove_parens.py b/.vim/bundle/black/tests/data/remove_parens.py
new file mode 100644 (file)
index 0000000..abd5f71
--- /dev/null
@@ -0,0 +1,142 @@
+x = (1)
+x = (1.2)
+
+data = (
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+).encode()
+
+async def show_status():
+    while True:
+        try:
+            if report_host:
+                data = (
+                   f"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+               ).encode()
+        except Exception as e:
+            pass
+
+def example():
+    return (("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"))
+
+
+def example1():
+    return ((1111111111111111111111111111111111111111111111111111111111111111111111111111111111111))
+
+
+def example1point5():
+    return ((((((1111111111111111111111111111111111111111111111111111111111111111111111111111111111111))))))
+
+
+def example2():
+    return (("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"))
+
+
+def example3():
+    return ((1111111111111111111111111111111111111111111111111111111111111111111111111111111))
+
+
+def example4():
+    return ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((True))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
+
+
+def example5():
+    return ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
+
+
+def example6():
+    return ((((((((({a:a for a in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17]})))))))))
+
+
+def example7():
+    return ((((((((({a:a for a in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20000000000000000000]})))))))))
+
+
+def example8():
+    return (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((None)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
+
+# output
+x = 1
+x = 1.2
+
+data = (
+    "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+).encode()
+
+
+async def show_status():
+    while True:
+        try:
+            if report_host:
+                data = (
+                    f"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+                ).encode()
+        except Exception as e:
+            pass
+
+
+def example():
+    return "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+
+
+def example1():
+    return 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111
+
+
+def example1point5():
+    return 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111
+
+
+def example2():
+    return (
+        "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+    )
+
+
+def example3():
+    return (
+        1111111111111111111111111111111111111111111111111111111111111111111111111111111
+    )
+
+
+def example4():
+    return True
+
+
+def example5():
+    return ()
+
+
+def example6():
+    return {a: a for a in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17]}
+
+
+def example7():
+    return {
+        a: a
+        for a in [
+            1,
+            2,
+            3,
+            4,
+            5,
+            6,
+            7,
+            8,
+            9,
+            10,
+            11,
+            12,
+            13,
+            14,
+            15,
+            16,
+            17,
+            18,
+            19,
+            20000000000000000000,
+        ]
+    }
+
+
+def example8():
+    return None
diff --git a/.vim/bundle/black/tests/data/slices.py b/.vim/bundle/black/tests/data/slices.py
new file mode 100644 (file)
index 0000000..7a42678
--- /dev/null
@@ -0,0 +1,31 @@
+slice[a.b : c.d]
+slice[d :: d + 1]
+slice[d + 1 :: d]
+slice[d::d]
+slice[0]
+slice[-1]
+slice[:-1]
+slice[::-1]
+slice[:c, c - 1]
+slice[c, c + 1, d::]
+slice[ham[c::d] :: 1]
+slice[ham[cheese ** 2 : -1] : 1 : 1, ham[1:2]]
+slice[:-1:]
+slice[lambda: None : lambda: None]
+slice[lambda x, y, *args, really=2, **kwargs: None :, None::]
+slice[1 or 2 : True and False]
+slice[not so_simple : 1 < val <= 10]
+slice[(1 for i in range(42)) : x]
+slice[:: [i for i in range(42)]]
+
+
+async def f():
+    slice[await x : [i async for i in arange(42)] : 42]
+
+
+# These are from PEP-8:
+ham[1:9], ham[1:9:3], ham[:9:3], ham[1::3], ham[1:9:]
+ham[lower:upper], ham[lower:upper:], ham[lower::step]
+# ham[lower+offset : upper+offset]
+ham[: upper_fn(x) : step_fn(x)], ham[:: step_fn(x)]
+ham[lower + offset : upper + offset]
diff --git a/.vim/bundle/black/tests/data/string_prefixes.py b/.vim/bundle/black/tests/data/string_prefixes.py
new file mode 100644 (file)
index 0000000..9ddc2b5
--- /dev/null
@@ -0,0 +1,39 @@
+#!/usr/bin/env python3.6
+
+name = R"Łukasz"
+F"hello {name}"
+B"hello"
+r"hello"
+fR"hello"
+
+
+def docstring_singleline():
+    R"""2020 was one hell of a year. The good news is that we were able to"""
+
+
+def docstring_multiline():
+    R"""
+    clear out all of the issues opened in that time :p
+    """
+
+
+# output
+
+
+#!/usr/bin/env python3.6
+
+name = R"Łukasz"
+f"hello {name}"
+b"hello"
+r"hello"
+fR"hello"
+
+
+def docstring_singleline():
+    R"""2020 was one hell of a year. The good news is that we were able to"""
+
+
+def docstring_multiline():
+    R"""
+    clear out all of the issues opened in that time :p
+    """
diff --git a/.vim/bundle/black/tests/data/string_quotes.py b/.vim/bundle/black/tests/data/string_quotes.py
new file mode 100644 (file)
index 0000000..3384241
--- /dev/null
@@ -0,0 +1,112 @@
+''''''
+'\''
+'"'
+"'"
+"\""
+"Hello"
+"Don't do that"
+'Here is a "'
+'What\'s the deal here?'
+"What's the deal \"here\"?"
+"And \"here\"?"
+"""Strings with "" in them"""
+'''Strings with "" in them'''
+'''Here's a "'''
+'''Here's a " '''
+'''Just a normal triple
+quote'''
+f"just a normal {f} string"
+f'''This is a triple-quoted {f}-string'''
+f'MOAR {" ".join([])}'
+f"MOAR {' '.join([])}"
+r"raw string ftw"
+r'Date d\'expiration:(.*)'
+r'Tricky "quote'
+r'Not-so-tricky \"quote'
+rf'{yay}'
+'\n\
+The \"quick\"\n\
+brown fox\n\
+jumps over\n\
+the \'lazy\' dog.\n\
+'
+re.compile(r'[\\"]')
+"x = ''; y = \"\""
+"x = '''; y = \"\""
+"x = ''''; y = \"\""
+"x = '' ''; y = \"\""
+"x = ''; y = \"\"\""
+"x = '''; y = \"\"\"\""
+"x = ''''; y = \"\"\"\"\""
+"x = '' ''; y = \"\"\"\"\""
+'unnecessary \"\"escaping'
+"unnecessary \'\'escaping"
+'\\""'
+"\\''"
+'Lots of \\\\\\\\\'quotes\''
+f'{y * " "} \'{z}\''
+f'{{y * " "}} \'{z}\''
+f'\'{z}\' {y * " "}'
+f'{y * x} \'{z}\''
+'\'{z}\' {y * " "}'
+'{y * x} \'{z}\''
+
+# We must bail out if changing the quotes would introduce backslashes in f-string
+# expressions. xref: https://github.com/psf/black/issues/2348
+f"\"{b}\"{' ' * (long-len(b)+1)}: \"{sts}\",\n"
+f"\"{a}\"{'hello' * b}\"{c}\""
+
+# output
+
+""""""
+"'"
+'"'
+"'"
+'"'
+"Hello"
+"Don't do that"
+'Here is a "'
+"What's the deal here?"
+'What\'s the deal "here"?'
+'And "here"?'
+"""Strings with "" in them"""
+"""Strings with "" in them"""
+'''Here's a "'''
+"""Here's a " """
+"""Just a normal triple
+quote"""
+f"just a normal {f} string"
+f"""This is a triple-quoted {f}-string"""
+f'MOAR {" ".join([])}'
+f"MOAR {' '.join([])}"
+r"raw string ftw"
+r"Date d\'expiration:(.*)"
+r'Tricky "quote'
+r"Not-so-tricky \"quote"
+rf"{yay}"
+"\nThe \"quick\"\nbrown fox\njumps over\nthe 'lazy' dog.\n"
+re.compile(r'[\\"]')
+"x = ''; y = \"\""
+"x = '''; y = \"\""
+"x = ''''; y = \"\""
+"x = '' ''; y = \"\""
+'x = \'\'; y = """'
+'x = \'\'\'; y = """"'
+'x = \'\'\'\'; y = """""'
+'x = \'\' \'\'; y = """""'
+'unnecessary ""escaping'
+"unnecessary ''escaping"
+'\\""'
+"\\''"
+"Lots of \\\\\\\\'quotes'"
+f'{y * " "} \'{z}\''
+f"{{y * \" \"}} '{z}'"
+f'\'{z}\' {y * " "}'
+f"{y * x} '{z}'"
+"'{z}' {y * \" \"}"
+"{y * x} '{z}'"
+
+# We must bail out if changing the quotes would introduce backslashes in f-string
+# expressions. xref: https://github.com/psf/black/issues/2348
+f"\"{b}\"{' ' * (long-len(b)+1)}: \"{sts}\",\n"
+f"\"{a}\"{'hello' * b}\"{c}\""
diff --git a/.vim/bundle/black/tests/data/stub.pyi b/.vim/bundle/black/tests/data/stub.pyi
new file mode 100644 (file)
index 0000000..94ba852
--- /dev/null
@@ -0,0 +1,35 @@
+X: int
+
+def f(): ...
+
+class C:
+    ...
+
+class B:
+    ...
+
+class A:
+    def f(self) -> int:
+        ...
+
+    def g(self) -> str: ...
+
+def g():
+    ...
+
+def h(): ...
+
+# output
+X: int
+
+def f(): ...
+
+class C: ...
+class B: ...
+
+class A:
+    def f(self) -> int: ...
+    def g(self) -> str: ...
+
+def g(): ...
+def h(): ...
diff --git a/.vim/bundle/black/tests/data/trailing_comma_optional_parens1.py b/.vim/bundle/black/tests/data/trailing_comma_optional_parens1.py
new file mode 100644 (file)
index 0000000..5ad29a8
--- /dev/null
@@ -0,0 +1,3 @@
+if e1234123412341234.winerror not in (_winapi.ERROR_SEM_TIMEOUT,
+                        _winapi.ERROR_PIPE_BUSY) or _check_timeout(t):
+    pass
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/trailing_comma_optional_parens2.py b/.vim/bundle/black/tests/data/trailing_comma_optional_parens2.py
new file mode 100644 (file)
index 0000000..2817073
--- /dev/null
@@ -0,0 +1,3 @@
+if (e123456.get_tk_patchlevel() >= (8, 6, 0, 'final') or
+    (8, 5, 8) <= get_tk_patchlevel() < (8, 6)):
+    pass
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/trailing_comma_optional_parens3.py b/.vim/bundle/black/tests/data/trailing_comma_optional_parens3.py
new file mode 100644 (file)
index 0000000..e6a673e
--- /dev/null
@@ -0,0 +1,8 @@
+if True:
+    if True:
+        if True:
+            return _(
+                "qweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweas "
+                + "qweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqwegqweasdzxcqweasdzxc.",
+                "qweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqweasdzxcqwe",
+            ) % {"reported_username": reported_username, "report_reason": report_reason}
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/data/tricky_unicode_symbols.py b/.vim/bundle/black/tests/data/tricky_unicode_symbols.py
new file mode 100644 (file)
index 0000000..366a92f
--- /dev/null
@@ -0,0 +1,6 @@
+ä = 1
+µ = 2
+蟒 = 3
+x󠄀 = 4
+មុ = 1
+Q̇_per_meter = 4
diff --git a/.vim/bundle/black/tests/data/tupleassign.py b/.vim/bundle/black/tests/data/tupleassign.py
new file mode 100644 (file)
index 0000000..d948fee
--- /dev/null
@@ -0,0 +1,23 @@
+# This is a standalone comment.
+sdfjklsdfsjldkflkjsf, sdfjsdfjlksdljkfsdlkf, sdfsdjfklsdfjlksdljkf, sdsfsdfjskdflsfsdf = 1, 2, 3
+
+# This is as well.
+this_will_be_wrapped_in_parens, = struct.unpack(b"12345678901234567890")
+
+(a,) = call()
+
+# output
+
+
+# This is a standalone comment.
+(
+    sdfjklsdfsjldkflkjsf,
+    sdfjsdfjlksdljkfsdlkf,
+    sdfsdjfklsdfjlksdljkf,
+    sdsfsdfjskdflsfsdf,
+) = (1, 2, 3)
+
+# This is as well.
+(this_will_be_wrapped_in_parens,) = struct.unpack(b"12345678901234567890")
+
+(a,) = call()
\ No newline at end of file
diff --git a/.vim/bundle/black/tests/empty.toml b/.vim/bundle/black/tests/empty.toml
new file mode 100644 (file)
index 0000000..3908e45
--- /dev/null
@@ -0,0 +1 @@
+# Empty configuration file; used in tests to avoid interference from Black's own config.
diff --git a/.vim/bundle/black/tests/optional.py b/.vim/bundle/black/tests/optional.py
new file mode 100644 (file)
index 0000000..e12b94c
--- /dev/null
@@ -0,0 +1,119 @@
+"""
+Allows configuring optional test markers in config, see pyproject.toml.
+
+Run optional tests with `pytest --run-optional=...`.
+
+Mark tests to run only if an optional test ISN'T selected by prepending the mark with
+"no_".
+
+You can specify a "no_" prefix straight in config, in which case you can mark tests
+to run when this tests ISN'T selected by omitting the "no_" prefix.
+
+Specifying the name of the default behavior in `--run-optional=` is harmless.
+
+Adapted from https://pypi.org/project/pytest-optional-tests/, (c) 2019 Reece Hart
+"""
+
+from functools import lru_cache
+import itertools
+import logging
+import re
+from typing import FrozenSet, List, Set, TYPE_CHECKING
+
+import pytest
+from _pytest.store import StoreKey
+
+log = logging.getLogger(__name__)
+
+
+if TYPE_CHECKING:
+    from _pytest.config.argparsing import Parser
+    from _pytest.config import Config
+    from _pytest.mark.structures import MarkDecorator
+    from _pytest.nodes import Node
+
+
+ALL_POSSIBLE_OPTIONAL_MARKERS = StoreKey[FrozenSet[str]]()
+ENABLED_OPTIONAL_MARKERS = StoreKey[FrozenSet[str]]()
+
+
+def pytest_addoption(parser: "Parser") -> None:
+    group = parser.getgroup("collect")
+    group.addoption(
+        "--run-optional",
+        action="append",
+        dest="run_optional",
+        default=None,
+        help="Optional test markers to run; comma-separated",
+    )
+    parser.addini("optional-tests", "List of optional tests markers", "linelist")
+
+
+def pytest_configure(config: "Config") -> None:
+    """Optional tests are markers.
+
+    Use the syntax in https://docs.pytest.org/en/stable/mark.html#registering-marks.
+    """
+    ot_ini = config.inicfg.get("optional-tests") or []
+    ot_markers = set()
+    ot_run: Set[str] = set()
+    if isinstance(ot_ini, str):
+        ot_ini = ot_ini.strip().split("\n")
+    marker_re = re.compile(r"^\s*(?P<no>no_)?(?P<marker>\w+)(:\s*(?P<description>.*))?")
+    for ot in ot_ini:
+        m = marker_re.match(ot)
+        if not m:
+            raise ValueError(f"{ot!r} doesn't match pytest marker syntax")
+
+        marker = (m.group("no") or "") + m.group("marker")
+        description = m.group("description")
+        config.addinivalue_line("markers", f"{marker}: {description}")
+        config.addinivalue_line(
+            "markers", f"{no(marker)}: run when `{marker}` not passed"
+        )
+        ot_markers.add(marker)
+
+    # collect requested optional tests
+    passed_args = config.getoption("run_optional")
+    if passed_args:
+        ot_run.update(itertools.chain.from_iterable(a.split(",") for a in passed_args))
+    ot_run |= {no(excluded) for excluded in ot_markers - ot_run}
+    ot_markers |= {no(m) for m in ot_markers}
+
+    log.info("optional tests to run:", ot_run)
+    unknown_tests = ot_run - ot_markers
+    if unknown_tests:
+        raise ValueError(f"Unknown optional tests wanted: {unknown_tests!r}")
+
+    store = config._store
+    store[ALL_POSSIBLE_OPTIONAL_MARKERS] = frozenset(ot_markers)
+    store[ENABLED_OPTIONAL_MARKERS] = frozenset(ot_run)
+
+
+def pytest_collection_modifyitems(config: "Config", items: "List[Node]") -> None:
+    store = config._store
+    all_possible_optional_markers = store[ALL_POSSIBLE_OPTIONAL_MARKERS]
+    enabled_optional_markers = store[ENABLED_OPTIONAL_MARKERS]
+
+    for item in items:
+        all_markers_on_test = set(m.name for m in item.iter_markers())
+        optional_markers_on_test = all_markers_on_test & all_possible_optional_markers
+        if not optional_markers_on_test or (
+            optional_markers_on_test & enabled_optional_markers
+        ):
+            continue
+        log.info("skipping non-requested optional", item)
+        item.add_marker(skip_mark(frozenset(optional_markers_on_test)))
+
+
+@lru_cache()
+def skip_mark(tests: FrozenSet[str]) -> "MarkDecorator":
+    names = ", ".join(sorted(tests))
+    return pytest.mark.skip(reason=f"Marked with disabled optional tests ({names})")
+
+
+@lru_cache()
+def no(name: str) -> str:
+    if name.startswith("no_"):
+        return name[len("no_") :]
+    return "no_" + name
diff --git a/.vim/bundle/black/tests/test.toml b/.vim/bundle/black/tests/test.toml
new file mode 100644 (file)
index 0000000..d3ab1e6
--- /dev/null
@@ -0,0 +1,16 @@
+[tool.black]
+verbose = 1
+--check = "no"
+diff = "y"
+color = true
+line-length = 79
+target-version = ["py36", "py37", "py38"]
+exclude='\.pyi?$'
+include='\.py?$'
+
+[v1.0.0-syntax]
+# This shouldn't break Black.
+contributors = [
+  "Foo Bar <foo@example.com>",
+  { name = "Baz Qux", email = "bazqux@example.com", url = "https://example.com/bazqux" }
+]
diff --git a/.vim/bundle/black/tests/test_black.py b/.vim/bundle/black/tests/test_black.py
new file mode 100644 (file)
index 0000000..beb56cf
--- /dev/null
@@ -0,0 +1,2040 @@
+#!/usr/bin/env python3
+
+import asyncio
+import inspect
+import io
+import logging
+import multiprocessing
+import os
+import sys
+import types
+import unittest
+from concurrent.futures import ThreadPoolExecutor
+from contextlib import contextmanager
+from dataclasses import replace
+from io import BytesIO
+from pathlib import Path
+from platform import system
+from tempfile import TemporaryDirectory
+from typing import (
+    Any,
+    Callable,
+    Dict,
+    Iterator,
+    List,
+    Optional,
+    Sequence,
+    TypeVar,
+    Union,
+)
+from unittest.mock import MagicMock, patch
+
+import click
+import pytest
+import regex as re
+from click import unstyle
+from click.testing import CliRunner
+from pathspec import PathSpec
+
+import black
+import black.files
+from black import Feature, TargetVersion
+from black import re_compile_maybe_verbose as compile_pattern
+from black.cache import get_cache_file
+from black.debug import DebugVisitor
+from black.output import color_diff, diff
+from black.report import Report
+
+# Import other test classes
+from tests.util import (
+    DATA_DIR,
+    DEFAULT_MODE,
+    DETERMINISTIC_HEADER,
+    PY36_VERSIONS,
+    THIS_DIR,
+    BlackBaseTestCase,
+    assert_format,
+    change_directory,
+    dump_to_stderr,
+    ff,
+    fs,
+    read_data,
+)
+
+THIS_FILE = Path(__file__)
+PY36_ARGS = [f"--target-version={version.name.lower()}" for version in PY36_VERSIONS]
+DEFAULT_EXCLUDE = black.re_compile_maybe_verbose(black.const.DEFAULT_EXCLUDES)
+DEFAULT_INCLUDE = black.re_compile_maybe_verbose(black.const.DEFAULT_INCLUDES)
+T = TypeVar("T")
+R = TypeVar("R")
+
+# Match the time output in a diff, but nothing else
+DIFF_TIME = re.compile(r"\t[\d-:+\. ]+")
+
+
+@contextmanager
+def cache_dir(exists: bool = True) -> Iterator[Path]:
+    with TemporaryDirectory() as workspace:
+        cache_dir = Path(workspace)
+        if not exists:
+            cache_dir = cache_dir / "new"
+        with patch("black.cache.CACHE_DIR", cache_dir):
+            yield cache_dir
+
+
+@contextmanager
+def event_loop() -> Iterator[None]:
+    policy = asyncio.get_event_loop_policy()
+    loop = policy.new_event_loop()
+    asyncio.set_event_loop(loop)
+    try:
+        yield
+
+    finally:
+        loop.close()
+
+
+class FakeContext(click.Context):
+    """A fake click Context for when calling functions that need it."""
+
+    def __init__(self) -> None:
+        self.default_map: Dict[str, Any] = {}
+
+
+class FakeParameter(click.Parameter):
+    """A fake click Parameter for when calling functions that need it."""
+
+    def __init__(self) -> None:
+        pass
+
+
+class BlackRunner(CliRunner):
+    """Make sure STDOUT and STDERR are kept separate when testing Black via its CLI."""
+
+    def __init__(self) -> None:
+        super().__init__(mix_stderr=False)
+
+
+def invokeBlack(
+    args: List[str], exit_code: int = 0, ignore_config: bool = True
+) -> None:
+    runner = BlackRunner()
+    if ignore_config:
+        args = ["--verbose", "--config", str(THIS_DIR / "empty.toml"), *args]
+    result = runner.invoke(black.main, args)
+    assert result.stdout_bytes is not None
+    assert result.stderr_bytes is not None
+    msg = (
+        f"Failed with args: {args}\n"
+        f"stdout: {result.stdout_bytes.decode()!r}\n"
+        f"stderr: {result.stderr_bytes.decode()!r}\n"
+        f"exception: {result.exception}"
+    )
+    assert result.exit_code == exit_code, msg
+
+
+class BlackTestCase(BlackBaseTestCase):
+    invokeBlack = staticmethod(invokeBlack)
+
+    def test_empty_ff(self) -> None:
+        expected = ""
+        tmp_file = Path(black.dump_to_file())
+        try:
+            self.assertFalse(ff(tmp_file, write_back=black.WriteBack.YES))
+            with open(tmp_file, encoding="utf8") as f:
+                actual = f.read()
+        finally:
+            os.unlink(tmp_file)
+        self.assertFormatEqual(expected, actual)
+
+    def test_piping(self) -> None:
+        source, expected = read_data("src/black/__init__", data=False)
+        result = BlackRunner().invoke(
+            black.main,
+            ["-", "--fast", f"--line-length={black.DEFAULT_LINE_LENGTH}"],
+            input=BytesIO(source.encode("utf8")),
+        )
+        self.assertEqual(result.exit_code, 0)
+        self.assertFormatEqual(expected, result.output)
+        if source != result.output:
+            black.assert_equivalent(source, result.output)
+            black.assert_stable(source, result.output, DEFAULT_MODE)
+
+    def test_piping_diff(self) -> None:
+        diff_header = re.compile(
+            r"(STDIN|STDOUT)\t\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d\.\d\d\d\d\d\d "
+            r"\+\d\d\d\d"
+        )
+        source, _ = read_data("expression.py")
+        expected, _ = read_data("expression.diff")
+        config = THIS_DIR / "data" / "empty_pyproject.toml"
+        args = [
+            "-",
+            "--fast",
+            f"--line-length={black.DEFAULT_LINE_LENGTH}",
+            "--diff",
+            f"--config={config}",
+        ]
+        result = BlackRunner().invoke(
+            black.main, args, input=BytesIO(source.encode("utf8"))
+        )
+        self.assertEqual(result.exit_code, 0)
+        actual = diff_header.sub(DETERMINISTIC_HEADER, result.output)
+        actual = actual.rstrip() + "\n"  # the diff output has a trailing space
+        self.assertEqual(expected, actual)
+
+    def test_piping_diff_with_color(self) -> None:
+        source, _ = read_data("expression.py")
+        config = THIS_DIR / "data" / "empty_pyproject.toml"
+        args = [
+            "-",
+            "--fast",
+            f"--line-length={black.DEFAULT_LINE_LENGTH}",
+            "--diff",
+            "--color",
+            f"--config={config}",
+        ]
+        result = BlackRunner().invoke(
+            black.main, args, input=BytesIO(source.encode("utf8"))
+        )
+        actual = result.output
+        # Again, the contents are checked in a different test, so only look for colors.
+        self.assertIn("\033[1;37m", actual)
+        self.assertIn("\033[36m", actual)
+        self.assertIn("\033[32m", actual)
+        self.assertIn("\033[31m", actual)
+        self.assertIn("\033[0m", actual)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def _test_wip(self) -> None:
+        source, expected = read_data("wip")
+        sys.settrace(tracefunc)
+        mode = replace(
+            DEFAULT_MODE,
+            experimental_string_processing=False,
+            target_versions={black.TargetVersion.PY38},
+        )
+        actual = fs(source, mode=mode)
+        sys.settrace(None)
+        self.assertFormatEqual(expected, actual)
+        black.assert_equivalent(source, actual)
+        black.assert_stable(source, actual, black.FileMode())
+
+    @unittest.expectedFailure
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_trailing_comma_optional_parens_stability1(self) -> None:
+        source, _expected = read_data("trailing_comma_optional_parens1")
+        actual = fs(source)
+        black.assert_stable(source, actual, DEFAULT_MODE)
+
+    @unittest.expectedFailure
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_trailing_comma_optional_parens_stability2(self) -> None:
+        source, _expected = read_data("trailing_comma_optional_parens2")
+        actual = fs(source)
+        black.assert_stable(source, actual, DEFAULT_MODE)
+
+    @unittest.expectedFailure
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_trailing_comma_optional_parens_stability3(self) -> None:
+        source, _expected = read_data("trailing_comma_optional_parens3")
+        actual = fs(source)
+        black.assert_stable(source, actual, DEFAULT_MODE)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_trailing_comma_optional_parens_stability1_pass2(self) -> None:
+        source, _expected = read_data("trailing_comma_optional_parens1")
+        actual = fs(fs(source))  # this is what `format_file_contents` does with --safe
+        black.assert_stable(source, actual, DEFAULT_MODE)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_trailing_comma_optional_parens_stability2_pass2(self) -> None:
+        source, _expected = read_data("trailing_comma_optional_parens2")
+        actual = fs(fs(source))  # this is what `format_file_contents` does with --safe
+        black.assert_stable(source, actual, DEFAULT_MODE)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_trailing_comma_optional_parens_stability3_pass2(self) -> None:
+        source, _expected = read_data("trailing_comma_optional_parens3")
+        actual = fs(fs(source))  # this is what `format_file_contents` does with --safe
+        black.assert_stable(source, actual, DEFAULT_MODE)
+
+    def test_pep_572_version_detection(self) -> None:
+        source, _ = read_data("pep_572")
+        root = black.lib2to3_parse(source)
+        features = black.get_features_used(root)
+        self.assertIn(black.Feature.ASSIGNMENT_EXPRESSIONS, features)
+        versions = black.detect_target_versions(root)
+        self.assertIn(black.TargetVersion.PY38, versions)
+
+    def test_expression_ff(self) -> None:
+        source, expected = read_data("expression")
+        tmp_file = Path(black.dump_to_file(source))
+        try:
+            self.assertTrue(ff(tmp_file, write_back=black.WriteBack.YES))
+            with open(tmp_file, encoding="utf8") as f:
+                actual = f.read()
+        finally:
+            os.unlink(tmp_file)
+        self.assertFormatEqual(expected, actual)
+        with patch("black.dump_to_file", dump_to_stderr):
+            black.assert_equivalent(source, actual)
+            black.assert_stable(source, actual, DEFAULT_MODE)
+
+    def test_expression_diff(self) -> None:
+        source, _ = read_data("expression.py")
+        config = THIS_DIR / "data" / "empty_pyproject.toml"
+        expected, _ = read_data("expression.diff")
+        tmp_file = Path(black.dump_to_file(source))
+        diff_header = re.compile(
+            rf"{re.escape(str(tmp_file))}\t\d\d\d\d-\d\d-\d\d "
+            r"\d\d:\d\d:\d\d\.\d\d\d\d\d\d \+\d\d\d\d"
+        )
+        try:
+            result = BlackRunner().invoke(
+                black.main, ["--diff", str(tmp_file), f"--config={config}"]
+            )
+            self.assertEqual(result.exit_code, 0)
+        finally:
+            os.unlink(tmp_file)
+        actual = result.output
+        actual = diff_header.sub(DETERMINISTIC_HEADER, actual)
+        if expected != actual:
+            dump = black.dump_to_file(actual)
+            msg = (
+                "Expected diff isn't equal to the actual. If you made changes to"
+                " expression.py and this is an anticipated difference, overwrite"
+                f" tests/data/expression.diff with {dump}"
+            )
+            self.assertEqual(expected, actual, msg)
+
+    def test_expression_diff_with_color(self) -> None:
+        source, _ = read_data("expression.py")
+        config = THIS_DIR / "data" / "empty_pyproject.toml"
+        expected, _ = read_data("expression.diff")
+        tmp_file = Path(black.dump_to_file(source))
+        try:
+            result = BlackRunner().invoke(
+                black.main, ["--diff", "--color", str(tmp_file), f"--config={config}"]
+            )
+        finally:
+            os.unlink(tmp_file)
+        actual = result.output
+        # We check the contents of the diff in `test_expression_diff`. All
+        # we need to check here is that color codes exist in the result.
+        self.assertIn("\033[1;37m", actual)
+        self.assertIn("\033[36m", actual)
+        self.assertIn("\033[32m", actual)
+        self.assertIn("\033[31m", actual)
+        self.assertIn("\033[0m", actual)
+
+    def test_detect_pos_only_arguments(self) -> None:
+        source, _ = read_data("pep_570")
+        root = black.lib2to3_parse(source)
+        features = black.get_features_used(root)
+        self.assertIn(black.Feature.POS_ONLY_ARGUMENTS, features)
+        versions = black.detect_target_versions(root)
+        self.assertIn(black.TargetVersion.PY38, versions)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_string_quotes(self) -> None:
+        source, expected = read_data("string_quotes")
+        mode = black.Mode(experimental_string_processing=True)
+        assert_format(source, expected, mode)
+        mode = replace(mode, string_normalization=False)
+        not_normalized = fs(source, mode=mode)
+        self.assertFormatEqual(source.replace("\\\n", ""), not_normalized)
+        black.assert_equivalent(source, not_normalized)
+        black.assert_stable(source, not_normalized, mode=mode)
+
+    def test_skip_magic_trailing_comma(self) -> None:
+        source, _ = read_data("expression.py")
+        expected, _ = read_data("expression_skip_magic_trailing_comma.diff")
+        tmp_file = Path(black.dump_to_file(source))
+        diff_header = re.compile(
+            rf"{re.escape(str(tmp_file))}\t\d\d\d\d-\d\d-\d\d "
+            r"\d\d:\d\d:\d\d\.\d\d\d\d\d\d \+\d\d\d\d"
+        )
+        try:
+            result = BlackRunner().invoke(black.main, ["-C", "--diff", str(tmp_file)])
+            self.assertEqual(result.exit_code, 0)
+        finally:
+            os.unlink(tmp_file)
+        actual = result.output
+        actual = diff_header.sub(DETERMINISTIC_HEADER, actual)
+        actual = actual.rstrip() + "\n"  # the diff output has a trailing space
+        if expected != actual:
+            dump = black.dump_to_file(actual)
+            msg = (
+                "Expected diff isn't equal to the actual. If you made changes to"
+                " expression.py and this is an anticipated difference, overwrite"
+                f" tests/data/expression_skip_magic_trailing_comma.diff with {dump}"
+            )
+            self.assertEqual(expected, actual, msg)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_async_as_identifier(self) -> None:
+        source_path = (THIS_DIR / "data" / "async_as_identifier.py").resolve()
+        source, expected = read_data("async_as_identifier")
+        actual = fs(source)
+        self.assertFormatEqual(expected, actual)
+        major, minor = sys.version_info[:2]
+        if major < 3 or (major <= 3 and minor < 7):
+            black.assert_equivalent(source, actual)
+        black.assert_stable(source, actual, DEFAULT_MODE)
+        # ensure black can parse this when the target is 3.6
+        self.invokeBlack([str(source_path), "--target-version", "py36"])
+        # but not on 3.7, because async/await is no longer an identifier
+        self.invokeBlack([str(source_path), "--target-version", "py37"], exit_code=123)
+
+    @patch("black.dump_to_file", dump_to_stderr)
+    def test_python37(self) -> None:
+        source_path = (THIS_DIR / "data" / "python37.py").resolve()
+        source, expected = read_data("python37")
+        actual = fs(source)
+        self.assertFormatEqual(expected, actual)
+        major, minor = sys.version_info[:2]
+        if major > 3 or (major == 3 and minor >= 7):
+            black.assert_equivalent(source, actual)
+        black.assert_stable(source, actual, DEFAULT_MODE)
+        # ensure black can parse this when the target is 3.7
+        self.invokeBlack([str(source_path), "--target-version", "py37"])
+        # but not on 3.6, because we use async as a reserved keyword
+        self.invokeBlack([str(source_path), "--target-version", "py36"], exit_code=123)
+
+    def test_tab_comment_indentation(self) -> None:
+        contents_tab = "if 1:\n\tif 2:\n\t\tpass\n\t# comment\n\tpass\n"
+        contents_spc = "if 1:\n    if 2:\n        pass\n    # comment\n    pass\n"
+        self.assertFormatEqual(contents_spc, fs(contents_spc))
+        self.assertFormatEqual(contents_spc, fs(contents_tab))
+
+        contents_tab = "if 1:\n\tif 2:\n\t\tpass\n\t\t# comment\n\tpass\n"
+        contents_spc = "if 1:\n    if 2:\n        pass\n        # comment\n    pass\n"
+        self.assertFormatEqual(contents_spc, fs(contents_spc))
+        self.assertFormatEqual(contents_spc, fs(contents_tab))
+
+        # mixed tabs and spaces (valid Python 2 code)
+        contents_tab = "if 1:\n        if 2:\n\t\tpass\n\t# comment\n        pass\n"
+        contents_spc = "if 1:\n    if 2:\n        pass\n    # comment\n    pass\n"
+        self.assertFormatEqual(contents_spc, fs(contents_spc))
+        self.assertFormatEqual(contents_spc, fs(contents_tab))
+
+        contents_tab = "if 1:\n        if 2:\n\t\tpass\n\t\t# comment\n        pass\n"
+        contents_spc = "if 1:\n    if 2:\n        pass\n        # comment\n    pass\n"
+        self.assertFormatEqual(contents_spc, fs(contents_spc))
+        self.assertFormatEqual(contents_spc, fs(contents_tab))
+
+    def test_report_verbose(self) -> None:
+        report = Report(verbose=True)
+        out_lines = []
+        err_lines = []
+
+        def out(msg: str, **kwargs: Any) -> None:
+            out_lines.append(msg)
+
+        def err(msg: str, **kwargs: Any) -> None:
+            err_lines.append(msg)
+
+        with patch("black.output._out", out), patch("black.output._err", err):
+            report.done(Path("f1"), black.Changed.NO)
+            self.assertEqual(len(out_lines), 1)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(out_lines[-1], "f1 already well formatted, good job.")
+            self.assertEqual(unstyle(str(report)), "1 file left unchanged.")
+            self.assertEqual(report.return_code, 0)
+            report.done(Path("f2"), black.Changed.YES)
+            self.assertEqual(len(out_lines), 2)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(out_lines[-1], "reformatted f2")
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 1 file left unchanged."
+            )
+            report.done(Path("f3"), black.Changed.CACHED)
+            self.assertEqual(len(out_lines), 3)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(
+                out_lines[-1], "f3 wasn't modified on disk since last run."
+            )
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 2 files left unchanged."
+            )
+            self.assertEqual(report.return_code, 0)
+            report.check = True
+            self.assertEqual(report.return_code, 1)
+            report.check = False
+            report.failed(Path("e1"), "boom")
+            self.assertEqual(len(out_lines), 3)
+            self.assertEqual(len(err_lines), 1)
+            self.assertEqual(err_lines[-1], "error: cannot format e1: boom")
+            self.assertEqual(
+                unstyle(str(report)),
+                "1 file reformatted, 2 files left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.done(Path("f3"), black.Changed.YES)
+            self.assertEqual(len(out_lines), 4)
+            self.assertEqual(len(err_lines), 1)
+            self.assertEqual(out_lines[-1], "reformatted f3")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.failed(Path("e2"), "boom")
+            self.assertEqual(len(out_lines), 4)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(err_lines[-1], "error: cannot format e2: boom")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.path_ignored(Path("wat"), "no match")
+            self.assertEqual(len(out_lines), 5)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(out_lines[-1], "wat ignored: no match")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.done(Path("f4"), black.Changed.NO)
+            self.assertEqual(len(out_lines), 6)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(out_lines[-1], "f4 already well formatted, good job.")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 3 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.check = True
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files would be reformatted, 3 files would be left unchanged, 2 files"
+                " would fail to reformat.",
+            )
+            report.check = False
+            report.diff = True
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files would be reformatted, 3 files would be left unchanged, 2 files"
+                " would fail to reformat.",
+            )
+
+    def test_report_quiet(self) -> None:
+        report = Report(quiet=True)
+        out_lines = []
+        err_lines = []
+
+        def out(msg: str, **kwargs: Any) -> None:
+            out_lines.append(msg)
+
+        def err(msg: str, **kwargs: Any) -> None:
+            err_lines.append(msg)
+
+        with patch("black.output._out", out), patch("black.output._err", err):
+            report.done(Path("f1"), black.Changed.NO)
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(unstyle(str(report)), "1 file left unchanged.")
+            self.assertEqual(report.return_code, 0)
+            report.done(Path("f2"), black.Changed.YES)
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 1 file left unchanged."
+            )
+            report.done(Path("f3"), black.Changed.CACHED)
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 2 files left unchanged."
+            )
+            self.assertEqual(report.return_code, 0)
+            report.check = True
+            self.assertEqual(report.return_code, 1)
+            report.check = False
+            report.failed(Path("e1"), "boom")
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 1)
+            self.assertEqual(err_lines[-1], "error: cannot format e1: boom")
+            self.assertEqual(
+                unstyle(str(report)),
+                "1 file reformatted, 2 files left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.done(Path("f3"), black.Changed.YES)
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 1)
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.failed(Path("e2"), "boom")
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(err_lines[-1], "error: cannot format e2: boom")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.path_ignored(Path("wat"), "no match")
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.done(Path("f4"), black.Changed.NO)
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 3 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.check = True
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files would be reformatted, 3 files would be left unchanged, 2 files"
+                " would fail to reformat.",
+            )
+            report.check = False
+            report.diff = True
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files would be reformatted, 3 files would be left unchanged, 2 files"
+                " would fail to reformat.",
+            )
+
+    def test_report_normal(self) -> None:
+        report = black.Report()
+        out_lines = []
+        err_lines = []
+
+        def out(msg: str, **kwargs: Any) -> None:
+            out_lines.append(msg)
+
+        def err(msg: str, **kwargs: Any) -> None:
+            err_lines.append(msg)
+
+        with patch("black.output._out", out), patch("black.output._err", err):
+            report.done(Path("f1"), black.Changed.NO)
+            self.assertEqual(len(out_lines), 0)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(unstyle(str(report)), "1 file left unchanged.")
+            self.assertEqual(report.return_code, 0)
+            report.done(Path("f2"), black.Changed.YES)
+            self.assertEqual(len(out_lines), 1)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(out_lines[-1], "reformatted f2")
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 1 file left unchanged."
+            )
+            report.done(Path("f3"), black.Changed.CACHED)
+            self.assertEqual(len(out_lines), 1)
+            self.assertEqual(len(err_lines), 0)
+            self.assertEqual(out_lines[-1], "reformatted f2")
+            self.assertEqual(
+                unstyle(str(report)), "1 file reformatted, 2 files left unchanged."
+            )
+            self.assertEqual(report.return_code, 0)
+            report.check = True
+            self.assertEqual(report.return_code, 1)
+            report.check = False
+            report.failed(Path("e1"), "boom")
+            self.assertEqual(len(out_lines), 1)
+            self.assertEqual(len(err_lines), 1)
+            self.assertEqual(err_lines[-1], "error: cannot format e1: boom")
+            self.assertEqual(
+                unstyle(str(report)),
+                "1 file reformatted, 2 files left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.done(Path("f3"), black.Changed.YES)
+            self.assertEqual(len(out_lines), 2)
+            self.assertEqual(len(err_lines), 1)
+            self.assertEqual(out_lines[-1], "reformatted f3")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 1 file failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.failed(Path("e2"), "boom")
+            self.assertEqual(len(out_lines), 2)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(err_lines[-1], "error: cannot format e2: boom")
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.path_ignored(Path("wat"), "no match")
+            self.assertEqual(len(out_lines), 2)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 2 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.done(Path("f4"), black.Changed.NO)
+            self.assertEqual(len(out_lines), 2)
+            self.assertEqual(len(err_lines), 2)
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files reformatted, 3 files left unchanged, 2 files failed to"
+                " reformat.",
+            )
+            self.assertEqual(report.return_code, 123)
+            report.check = True
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files would be reformatted, 3 files would be left unchanged, 2 files"
+                " would fail to reformat.",
+            )
+            report.check = False
+            report.diff = True
+            self.assertEqual(
+                unstyle(str(report)),
+                "2 files would be reformatted, 3 files would be left unchanged, 2 files"
+                " would fail to reformat.",
+            )
+
+    def test_lib2to3_parse(self) -> None:
+        with self.assertRaises(black.InvalidInput):
+            black.lib2to3_parse("invalid syntax")
+
+        straddling = "x + y"
+        black.lib2to3_parse(straddling)
+        black.lib2to3_parse(straddling, {TargetVersion.PY27})
+        black.lib2to3_parse(straddling, {TargetVersion.PY36})
+        black.lib2to3_parse(straddling, {TargetVersion.PY27, TargetVersion.PY36})
+
+        py2_only = "print x"
+        black.lib2to3_parse(py2_only)
+        black.lib2to3_parse(py2_only, {TargetVersion.PY27})
+        with self.assertRaises(black.InvalidInput):
+            black.lib2to3_parse(py2_only, {TargetVersion.PY36})
+        with self.assertRaises(black.InvalidInput):
+            black.lib2to3_parse(py2_only, {TargetVersion.PY27, TargetVersion.PY36})
+
+        py3_only = "exec(x, end=y)"
+        black.lib2to3_parse(py3_only)
+        with self.assertRaises(black.InvalidInput):
+            black.lib2to3_parse(py3_only, {TargetVersion.PY27})
+        black.lib2to3_parse(py3_only, {TargetVersion.PY36})
+        black.lib2to3_parse(py3_only, {TargetVersion.PY27, TargetVersion.PY36})
+
+    def test_get_features_used_decorator(self) -> None:
+        # Test the feature detection of new decorator syntax
+        # since this makes some test cases of test_get_features_used()
+        # fails if it fails, this is tested first so that a useful case
+        # is identified
+        simples, relaxed = read_data("decorators")
+        # skip explanation comments at the top of the file
+        for simple_test in simples.split("##")[1:]:
+            node = black.lib2to3_parse(simple_test)
+            decorator = str(node.children[0].children[0]).strip()
+            self.assertNotIn(
+                Feature.RELAXED_DECORATORS,
+                black.get_features_used(node),
+                msg=(
+                    f"decorator '{decorator}' follows python<=3.8 syntax"
+                    "but is detected as 3.9+"
+                    # f"The full node is\n{node!r}"
+                ),
+            )
+        # skip the '# output' comment at the top of the output part
+        for relaxed_test in relaxed.split("##")[1:]:
+            node = black.lib2to3_parse(relaxed_test)
+            decorator = str(node.children[0].children[0]).strip()
+            self.assertIn(
+                Feature.RELAXED_DECORATORS,
+                black.get_features_used(node),
+                msg=(
+                    f"decorator '{decorator}' uses python3.9+ syntax"
+                    "but is detected as python<=3.8"
+                    # f"The full node is\n{node!r}"
+                ),
+            )
+
+    def test_get_features_used(self) -> None:
+        node = black.lib2to3_parse("def f(*, arg): ...\n")
+        self.assertEqual(black.get_features_used(node), set())
+        node = black.lib2to3_parse("def f(*, arg,): ...\n")
+        self.assertEqual(black.get_features_used(node), {Feature.TRAILING_COMMA_IN_DEF})
+        node = black.lib2to3_parse("f(*arg,)\n")
+        self.assertEqual(
+            black.get_features_used(node), {Feature.TRAILING_COMMA_IN_CALL}
+        )
+        node = black.lib2to3_parse("def f(*, arg): f'string'\n")
+        self.assertEqual(black.get_features_used(node), {Feature.F_STRINGS})
+        node = black.lib2to3_parse("123_456\n")
+        self.assertEqual(black.get_features_used(node), {Feature.NUMERIC_UNDERSCORES})
+        node = black.lib2to3_parse("123456\n")
+        self.assertEqual(black.get_features_used(node), set())
+        source, expected = read_data("function")
+        node = black.lib2to3_parse(source)
+        expected_features = {
+            Feature.TRAILING_COMMA_IN_CALL,
+            Feature.TRAILING_COMMA_IN_DEF,
+            Feature.F_STRINGS,
+        }
+        self.assertEqual(black.get_features_used(node), expected_features)
+        node = black.lib2to3_parse(expected)
+        self.assertEqual(black.get_features_used(node), expected_features)
+        source, expected = read_data("expression")
+        node = black.lib2to3_parse(source)
+        self.assertEqual(black.get_features_used(node), set())
+        node = black.lib2to3_parse(expected)
+        self.assertEqual(black.get_features_used(node), set())
+        node = black.lib2to3_parse("lambda a, /, b: ...")
+        self.assertEqual(black.get_features_used(node), {Feature.POS_ONLY_ARGUMENTS})
+        node = black.lib2to3_parse("def fn(a, /, b): ...")
+        self.assertEqual(black.get_features_used(node), {Feature.POS_ONLY_ARGUMENTS})
+
+    def test_get_future_imports(self) -> None:
+        node = black.lib2to3_parse("\n")
+        self.assertEqual(set(), black.get_future_imports(node))
+        node = black.lib2to3_parse("from __future__ import black\n")
+        self.assertEqual({"black"}, black.get_future_imports(node))
+        node = black.lib2to3_parse("from __future__ import multiple, imports\n")
+        self.assertEqual({"multiple", "imports"}, black.get_future_imports(node))
+        node = black.lib2to3_parse("from __future__ import (parenthesized, imports)\n")
+        self.assertEqual({"parenthesized", "imports"}, black.get_future_imports(node))
+        node = black.lib2to3_parse(
+            "from __future__ import multiple\nfrom __future__ import imports\n"
+        )
+        self.assertEqual({"multiple", "imports"}, black.get_future_imports(node))
+        node = black.lib2to3_parse("# comment\nfrom __future__ import black\n")
+        self.assertEqual({"black"}, black.get_future_imports(node))
+        node = black.lib2to3_parse('"""docstring"""\nfrom __future__ import black\n')
+        self.assertEqual({"black"}, black.get_future_imports(node))
+        node = black.lib2to3_parse("some(other, code)\nfrom __future__ import black\n")
+        self.assertEqual(set(), black.get_future_imports(node))
+        node = black.lib2to3_parse("from some.module import black\n")
+        self.assertEqual(set(), black.get_future_imports(node))
+        node = black.lib2to3_parse(
+            "from __future__ import unicode_literals as _unicode_literals"
+        )
+        self.assertEqual({"unicode_literals"}, black.get_future_imports(node))
+        node = black.lib2to3_parse(
+            "from __future__ import unicode_literals as _lol, print"
+        )
+        self.assertEqual({"unicode_literals", "print"}, black.get_future_imports(node))
+
+    def test_debug_visitor(self) -> None:
+        source, _ = read_data("debug_visitor.py")
+        expected, _ = read_data("debug_visitor.out")
+        out_lines = []
+        err_lines = []
+
+        def out(msg: str, **kwargs: Any) -> None:
+            out_lines.append(msg)
+
+        def err(msg: str, **kwargs: Any) -> None:
+            err_lines.append(msg)
+
+        with patch("black.debug.out", out):
+            DebugVisitor.show(source)
+        actual = "\n".join(out_lines) + "\n"
+        log_name = ""
+        if expected != actual:
+            log_name = black.dump_to_file(*out_lines)
+        self.assertEqual(
+            expected,
+            actual,
+            f"AST print out is different. Actual version dumped to {log_name}",
+        )
+
+    def test_format_file_contents(self) -> None:
+        empty = ""
+        mode = DEFAULT_MODE
+        with self.assertRaises(black.NothingChanged):
+            black.format_file_contents(empty, mode=mode, fast=False)
+        just_nl = "\n"
+        with self.assertRaises(black.NothingChanged):
+            black.format_file_contents(just_nl, mode=mode, fast=False)
+        same = "j = [1, 2, 3]\n"
+        with self.assertRaises(black.NothingChanged):
+            black.format_file_contents(same, mode=mode, fast=False)
+        different = "j = [1,2,3]"
+        expected = same
+        actual = black.format_file_contents(different, mode=mode, fast=False)
+        self.assertEqual(expected, actual)
+        invalid = "return if you can"
+        with self.assertRaises(black.InvalidInput) as e:
+            black.format_file_contents(invalid, mode=mode, fast=False)
+        self.assertEqual(str(e.exception), "Cannot parse: 1:7: return if you can")
+
+    def test_endmarker(self) -> None:
+        n = black.lib2to3_parse("\n")
+        self.assertEqual(n.type, black.syms.file_input)
+        self.assertEqual(len(n.children), 1)
+        self.assertEqual(n.children[0].type, black.token.ENDMARKER)
+
+    @unittest.skipIf(os.environ.get("SKIP_AST_PRINT"), "user set SKIP_AST_PRINT")
+    def test_assertFormatEqual(self) -> None:
+        out_lines = []
+        err_lines = []
+
+        def out(msg: str, **kwargs: Any) -> None:
+            out_lines.append(msg)
+
+        def err(msg: str, **kwargs: Any) -> None:
+            err_lines.append(msg)
+
+        with patch("black.output._out", out), patch("black.output._err", err):
+            with self.assertRaises(AssertionError):
+                self.assertFormatEqual("j = [1, 2, 3]", "j = [1, 2, 3,]")
+
+        out_str = "".join(out_lines)
+        self.assertTrue("Expected tree:" in out_str)
+        self.assertTrue("Actual tree:" in out_str)
+        self.assertEqual("".join(err_lines), "")
+
+    @event_loop()
+    @patch("black.ProcessPoolExecutor", MagicMock(side_effect=OSError))
+    def test_works_in_mono_process_only_environment(self) -> None:
+        with cache_dir() as workspace:
+            for f in [
+                (workspace / "one.py").resolve(),
+                (workspace / "two.py").resolve(),
+            ]:
+                f.write_text('print("hello")\n')
+            self.invokeBlack([str(workspace)])
+
+    @event_loop()
+    def test_check_diff_use_together(self) -> None:
+        with cache_dir():
+            # Files which will be reformatted.
+            src1 = (THIS_DIR / "data" / "string_quotes.py").resolve()
+            self.invokeBlack([str(src1), "--diff", "--check"], exit_code=1)
+            # Files which will not be reformatted.
+            src2 = (THIS_DIR / "data" / "composition.py").resolve()
+            self.invokeBlack([str(src2), "--diff", "--check"])
+            # Multi file command.
+            self.invokeBlack([str(src1), str(src2), "--diff", "--check"], exit_code=1)
+
+    def test_no_files(self) -> None:
+        with cache_dir():
+            # Without an argument, black exits with error code 0.
+            self.invokeBlack([])
+
+    def test_broken_symlink(self) -> None:
+        with cache_dir() as workspace:
+            symlink = workspace / "broken_link.py"
+            try:
+                symlink.symlink_to("nonexistent.py")
+            except OSError as e:
+                self.skipTest(f"Can't create symlinks: {e}")
+            self.invokeBlack([str(workspace.resolve())])
+
+    def test_single_file_force_pyi(self) -> None:
+        pyi_mode = replace(DEFAULT_MODE, is_pyi=True)
+        contents, expected = read_data("force_pyi")
+        with cache_dir() as workspace:
+            path = (workspace / "file.py").resolve()
+            with open(path, "w") as fh:
+                fh.write(contents)
+            self.invokeBlack([str(path), "--pyi"])
+            with open(path, "r") as fh:
+                actual = fh.read()
+            # verify cache with --pyi is separate
+            pyi_cache = black.read_cache(pyi_mode)
+            self.assertIn(str(path), pyi_cache)
+            normal_cache = black.read_cache(DEFAULT_MODE)
+            self.assertNotIn(str(path), normal_cache)
+        self.assertFormatEqual(expected, actual)
+        black.assert_equivalent(contents, actual)
+        black.assert_stable(contents, actual, pyi_mode)
+
+    @event_loop()
+    def test_multi_file_force_pyi(self) -> None:
+        reg_mode = DEFAULT_MODE
+        pyi_mode = replace(DEFAULT_MODE, is_pyi=True)
+        contents, expected = read_data("force_pyi")
+        with cache_dir() as workspace:
+            paths = [
+                (workspace / "file1.py").resolve(),
+                (workspace / "file2.py").resolve(),
+            ]
+            for path in paths:
+                with open(path, "w") as fh:
+                    fh.write(contents)
+            self.invokeBlack([str(p) for p in paths] + ["--pyi"])
+            for path in paths:
+                with open(path, "r") as fh:
+                    actual = fh.read()
+                self.assertEqual(actual, expected)
+            # verify cache with --pyi is separate
+            pyi_cache = black.read_cache(pyi_mode)
+            normal_cache = black.read_cache(reg_mode)
+            for path in paths:
+                self.assertIn(str(path), pyi_cache)
+                self.assertNotIn(str(path), normal_cache)
+
+    def test_pipe_force_pyi(self) -> None:
+        source, expected = read_data("force_pyi")
+        result = CliRunner().invoke(
+            black.main, ["-", "-q", "--pyi"], input=BytesIO(source.encode("utf8"))
+        )
+        self.assertEqual(result.exit_code, 0)
+        actual = result.output
+        self.assertFormatEqual(actual, expected)
+
+    def test_single_file_force_py36(self) -> None:
+        reg_mode = DEFAULT_MODE
+        py36_mode = replace(DEFAULT_MODE, target_versions=PY36_VERSIONS)
+        source, expected = read_data("force_py36")
+        with cache_dir() as workspace:
+            path = (workspace / "file.py").resolve()
+            with open(path, "w") as fh:
+                fh.write(source)
+            self.invokeBlack([str(path), *PY36_ARGS])
+            with open(path, "r") as fh:
+                actual = fh.read()
+            # verify cache with --target-version is separate
+            py36_cache = black.read_cache(py36_mode)
+            self.assertIn(str(path), py36_cache)
+            normal_cache = black.read_cache(reg_mode)
+            self.assertNotIn(str(path), normal_cache)
+        self.assertEqual(actual, expected)
+
+    @event_loop()
+    def test_multi_file_force_py36(self) -> None:
+        reg_mode = DEFAULT_MODE
+        py36_mode = replace(DEFAULT_MODE, target_versions=PY36_VERSIONS)
+        source, expected = read_data("force_py36")
+        with cache_dir() as workspace:
+            paths = [
+                (workspace / "file1.py").resolve(),
+                (workspace / "file2.py").resolve(),
+            ]
+            for path in paths:
+                with open(path, "w") as fh:
+                    fh.write(source)
+            self.invokeBlack([str(p) for p in paths] + PY36_ARGS)
+            for path in paths:
+                with open(path, "r") as fh:
+                    actual = fh.read()
+                self.assertEqual(actual, expected)
+            # verify cache with --target-version is separate
+            pyi_cache = black.read_cache(py36_mode)
+            normal_cache = black.read_cache(reg_mode)
+            for path in paths:
+                self.assertIn(str(path), pyi_cache)
+                self.assertNotIn(str(path), normal_cache)
+
+    def test_pipe_force_py36(self) -> None:
+        source, expected = read_data("force_py36")
+        result = CliRunner().invoke(
+            black.main,
+            ["-", "-q", "--target-version=py36"],
+            input=BytesIO(source.encode("utf8")),
+        )
+        self.assertEqual(result.exit_code, 0)
+        actual = result.output
+        self.assertFormatEqual(actual, expected)
+
+    def test_reformat_one_with_stdin(self) -> None:
+        with patch(
+            "black.format_stdin_to_stdout",
+            return_value=lambda *args, **kwargs: black.Changed.YES,
+        ) as fsts:
+            report = MagicMock()
+            path = Path("-")
+            black.reformat_one(
+                path,
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=DEFAULT_MODE,
+                report=report,
+            )
+            fsts.assert_called_once()
+            report.done.assert_called_with(path, black.Changed.YES)
+
+    def test_reformat_one_with_stdin_filename(self) -> None:
+        with patch(
+            "black.format_stdin_to_stdout",
+            return_value=lambda *args, **kwargs: black.Changed.YES,
+        ) as fsts:
+            report = MagicMock()
+            p = "foo.py"
+            path = Path(f"__BLACK_STDIN_FILENAME__{p}")
+            expected = Path(p)
+            black.reformat_one(
+                path,
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=DEFAULT_MODE,
+                report=report,
+            )
+            fsts.assert_called_once_with(
+                fast=True, write_back=black.WriteBack.YES, mode=DEFAULT_MODE
+            )
+            # __BLACK_STDIN_FILENAME__ should have been stripped
+            report.done.assert_called_with(expected, black.Changed.YES)
+
+    def test_reformat_one_with_stdin_filename_pyi(self) -> None:
+        with patch(
+            "black.format_stdin_to_stdout",
+            return_value=lambda *args, **kwargs: black.Changed.YES,
+        ) as fsts:
+            report = MagicMock()
+            p = "foo.pyi"
+            path = Path(f"__BLACK_STDIN_FILENAME__{p}")
+            expected = Path(p)
+            black.reformat_one(
+                path,
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=DEFAULT_MODE,
+                report=report,
+            )
+            fsts.assert_called_once_with(
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=replace(DEFAULT_MODE, is_pyi=True),
+            )
+            # __BLACK_STDIN_FILENAME__ should have been stripped
+            report.done.assert_called_with(expected, black.Changed.YES)
+
+    def test_reformat_one_with_stdin_filename_ipynb(self) -> None:
+        with patch(
+            "black.format_stdin_to_stdout",
+            return_value=lambda *args, **kwargs: black.Changed.YES,
+        ) as fsts:
+            report = MagicMock()
+            p = "foo.ipynb"
+            path = Path(f"__BLACK_STDIN_FILENAME__{p}")
+            expected = Path(p)
+            black.reformat_one(
+                path,
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=DEFAULT_MODE,
+                report=report,
+            )
+            fsts.assert_called_once_with(
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=replace(DEFAULT_MODE, is_ipynb=True),
+            )
+            # __BLACK_STDIN_FILENAME__ should have been stripped
+            report.done.assert_called_with(expected, black.Changed.YES)
+
+    def test_reformat_one_with_stdin_and_existing_path(self) -> None:
+        with patch(
+            "black.format_stdin_to_stdout",
+            return_value=lambda *args, **kwargs: black.Changed.YES,
+        ) as fsts:
+            report = MagicMock()
+            # Even with an existing file, since we are forcing stdin, black
+            # should output to stdout and not modify the file inplace
+            p = Path(str(THIS_DIR / "data/collections.py"))
+            # Make sure is_file actually returns True
+            self.assertTrue(p.is_file())
+            path = Path(f"__BLACK_STDIN_FILENAME__{p}")
+            expected = Path(p)
+            black.reformat_one(
+                path,
+                fast=True,
+                write_back=black.WriteBack.YES,
+                mode=DEFAULT_MODE,
+                report=report,
+            )
+            fsts.assert_called_once()
+            # __BLACK_STDIN_FILENAME__ should have been stripped
+            report.done.assert_called_with(expected, black.Changed.YES)
+
+    def test_reformat_one_with_stdin_empty(self) -> None:
+        output = io.StringIO()
+        with patch("io.TextIOWrapper", lambda *args, **kwargs: output):
+            try:
+                black.format_stdin_to_stdout(
+                    fast=True,
+                    content="",
+                    write_back=black.WriteBack.YES,
+                    mode=DEFAULT_MODE,
+                )
+            except io.UnsupportedOperation:
+                pass  # StringIO does not support detach
+            assert output.getvalue() == ""
+
+    def test_invalid_cli_regex(self) -> None:
+        for option in ["--include", "--exclude", "--extend-exclude", "--force-exclude"]:
+            self.invokeBlack(["-", option, "**()(!!*)"], exit_code=2)
+
+    def test_required_version_matches_version(self) -> None:
+        self.invokeBlack(
+            ["--required-version", black.__version__], exit_code=0, ignore_config=True
+        )
+
+    def test_required_version_does_not_match_version(self) -> None:
+        self.invokeBlack(
+            ["--required-version", "20.99b"], exit_code=1, ignore_config=True
+        )
+
+    def test_preserves_line_endings(self) -> None:
+        with TemporaryDirectory() as workspace:
+            test_file = Path(workspace) / "test.py"
+            for nl in ["\n", "\r\n"]:
+                contents = nl.join(["def f(  ):", "    pass"])
+                test_file.write_bytes(contents.encode())
+                ff(test_file, write_back=black.WriteBack.YES)
+                updated_contents: bytes = test_file.read_bytes()
+                self.assertIn(nl.encode(), updated_contents)
+                if nl == "\n":
+                    self.assertNotIn(b"\r\n", updated_contents)
+
+    def test_preserves_line_endings_via_stdin(self) -> None:
+        for nl in ["\n", "\r\n"]:
+            contents = nl.join(["def f(  ):", "    pass"])
+            runner = BlackRunner()
+            result = runner.invoke(
+                black.main, ["-", "--fast"], input=BytesIO(contents.encode("utf8"))
+            )
+            self.assertEqual(result.exit_code, 0)
+            output = result.stdout_bytes
+            self.assertIn(nl.encode("utf8"), output)
+            if nl == "\n":
+                self.assertNotIn(b"\r\n", output)
+
+    def test_assert_equivalent_different_asts(self) -> None:
+        with self.assertRaises(AssertionError):
+            black.assert_equivalent("{}", "None")
+
+    def test_shhh_click(self) -> None:
+        try:
+            from click import _unicodefun
+        except ModuleNotFoundError:
+            self.skipTest("Incompatible Click version")
+        if not hasattr(_unicodefun, "_verify_python3_env"):
+            self.skipTest("Incompatible Click version")
+        # First, let's see if Click is crashing with a preferred ASCII charset.
+        with patch("locale.getpreferredencoding") as gpe:
+            gpe.return_value = "ASCII"
+            with self.assertRaises(RuntimeError):
+                _unicodefun._verify_python3_env()  # type: ignore
+        # Now, let's silence Click...
+        black.patch_click()
+        # ...and confirm it's silent.
+        with patch("locale.getpreferredencoding") as gpe:
+            gpe.return_value = "ASCII"
+            try:
+                _unicodefun._verify_python3_env()  # type: ignore
+            except RuntimeError as re:
+                self.fail(f"`patch_click()` failed, exception still raised: {re}")
+
+    def test_root_logger_not_used_directly(self) -> None:
+        def fail(*args: Any, **kwargs: Any) -> None:
+            self.fail("Record created with root logger")
+
+        with patch.multiple(
+            logging.root,
+            debug=fail,
+            info=fail,
+            warning=fail,
+            error=fail,
+            critical=fail,
+            log=fail,
+        ):
+            ff(THIS_DIR / "util.py")
+
+    def test_invalid_config_return_code(self) -> None:
+        tmp_file = Path(black.dump_to_file())
+        try:
+            tmp_config = Path(black.dump_to_file())
+            tmp_config.unlink()
+            args = ["--config", str(tmp_config), str(tmp_file)]
+            self.invokeBlack(args, exit_code=2, ignore_config=False)
+        finally:
+            tmp_file.unlink()
+
+    def test_parse_pyproject_toml(self) -> None:
+        test_toml_file = THIS_DIR / "test.toml"
+        config = black.parse_pyproject_toml(str(test_toml_file))
+        self.assertEqual(config["verbose"], 1)
+        self.assertEqual(config["check"], "no")
+        self.assertEqual(config["diff"], "y")
+        self.assertEqual(config["color"], True)
+        self.assertEqual(config["line_length"], 79)
+        self.assertEqual(config["target_version"], ["py36", "py37", "py38"])
+        self.assertEqual(config["exclude"], r"\.pyi?$")
+        self.assertEqual(config["include"], r"\.py?$")
+
+    def test_read_pyproject_toml(self) -> None:
+        test_toml_file = THIS_DIR / "test.toml"
+        fake_ctx = FakeContext()
+        black.read_pyproject_toml(fake_ctx, FakeParameter(), str(test_toml_file))
+        config = fake_ctx.default_map
+        self.assertEqual(config["verbose"], "1")
+        self.assertEqual(config["check"], "no")
+        self.assertEqual(config["diff"], "y")
+        self.assertEqual(config["color"], "True")
+        self.assertEqual(config["line_length"], "79")
+        self.assertEqual(config["target_version"], ["py36", "py37", "py38"])
+        self.assertEqual(config["exclude"], r"\.pyi?$")
+        self.assertEqual(config["include"], r"\.py?$")
+
+    def test_find_project_root(self) -> None:
+        with TemporaryDirectory() as workspace:
+            root = Path(workspace)
+            test_dir = root / "test"
+            test_dir.mkdir()
+
+            src_dir = root / "src"
+            src_dir.mkdir()
+
+            root_pyproject = root / "pyproject.toml"
+            root_pyproject.touch()
+            src_pyproject = src_dir / "pyproject.toml"
+            src_pyproject.touch()
+            src_python = src_dir / "foo.py"
+            src_python.touch()
+
+            self.assertEqual(
+                black.find_project_root((src_dir, test_dir)), root.resolve()
+            )
+            self.assertEqual(black.find_project_root((src_dir,)), src_dir.resolve())
+            self.assertEqual(black.find_project_root((src_python,)), src_dir.resolve())
+
+    @patch(
+        "black.files.find_user_pyproject_toml",
+        black.files.find_user_pyproject_toml.__wrapped__,
+    )
+    def test_find_user_pyproject_toml_linux(self) -> None:
+        if system() == "Windows":
+            return
+
+        # Test if XDG_CONFIG_HOME is checked
+        with TemporaryDirectory() as workspace:
+            tmp_user_config = Path(workspace) / "black"
+            with patch.dict("os.environ", {"XDG_CONFIG_HOME": workspace}):
+                self.assertEqual(
+                    black.files.find_user_pyproject_toml(), tmp_user_config.resolve()
+                )
+
+        # Test fallback for XDG_CONFIG_HOME
+        with patch.dict("os.environ"):
+            os.environ.pop("XDG_CONFIG_HOME", None)
+            fallback_user_config = Path("~/.config").expanduser() / "black"
+            self.assertEqual(
+                black.files.find_user_pyproject_toml(), fallback_user_config.resolve()
+            )
+
+    def test_find_user_pyproject_toml_windows(self) -> None:
+        if system() != "Windows":
+            return
+
+        user_config_path = Path.home() / ".black"
+        self.assertEqual(
+            black.files.find_user_pyproject_toml(), user_config_path.resolve()
+        )
+
+    def test_bpo_33660_workaround(self) -> None:
+        if system() == "Windows":
+            return
+
+        # https://bugs.python.org/issue33660
+        root = Path("/")
+        with change_directory(root):
+            path = Path("workspace") / "project"
+            report = black.Report(verbose=True)
+            normalized_path = black.normalize_path_maybe_ignore(path, root, report)
+            self.assertEqual(normalized_path, "workspace/project")
+
+    def test_newline_comment_interaction(self) -> None:
+        source = "class A:\\\r\n# type: ignore\n pass\n"
+        output = black.format_str(source, mode=DEFAULT_MODE)
+        black.assert_stable(source, output, mode=DEFAULT_MODE)
+
+    def test_bpo_2142_workaround(self) -> None:
+
+        # https://bugs.python.org/issue2142
+
+        source, _ = read_data("missing_final_newline.py")
+        # read_data adds a trailing newline
+        source = source.rstrip()
+        expected, _ = read_data("missing_final_newline.diff")
+        tmp_file = Path(black.dump_to_file(source, ensure_final_newline=False))
+        diff_header = re.compile(
+            rf"{re.escape(str(tmp_file))}\t\d\d\d\d-\d\d-\d\d "
+            r"\d\d:\d\d:\d\d\.\d\d\d\d\d\d \+\d\d\d\d"
+        )
+        try:
+            result = BlackRunner().invoke(black.main, ["--diff", str(tmp_file)])
+            self.assertEqual(result.exit_code, 0)
+        finally:
+            os.unlink(tmp_file)
+        actual = result.output
+        actual = diff_header.sub(DETERMINISTIC_HEADER, actual)
+        self.assertEqual(actual, expected)
+
+    @pytest.mark.python2
+    def test_docstring_reformat_for_py27(self) -> None:
+        """
+        Check that stripping trailing whitespace from Python 2 docstrings
+        doesn't trigger a "not equivalent to source" error
+        """
+        source = (
+            b'def foo():\r\n    """Testing\r\n    Testing """\r\n    print "Foo"\r\n'
+        )
+        expected = 'def foo():\n    """Testing\n    Testing"""\n    print "Foo"\n'
+
+        result = CliRunner().invoke(
+            black.main,
+            ["-", "-q", "--target-version=py27"],
+            input=BytesIO(source),
+        )
+
+        self.assertEqual(result.exit_code, 0)
+        actual = result.output
+        self.assertFormatEqual(actual, expected)
+
+    @staticmethod
+    def compare_results(
+        result: click.testing.Result, expected_value: str, expected_exit_code: int
+    ) -> None:
+        """Helper method to test the value and exit code of a click Result."""
+        assert (
+            result.output == expected_value
+        ), "The output did not match the expected value."
+        assert result.exit_code == expected_exit_code, "The exit code is incorrect."
+
+    def test_code_option(self) -> None:
+        """Test the code option with no changes."""
+        code = 'print("Hello world")\n'
+        args = ["--code", code]
+        result = CliRunner().invoke(black.main, args)
+
+        self.compare_results(result, code, 0)
+
+    def test_code_option_changed(self) -> None:
+        """Test the code option when changes are required."""
+        code = "print('hello world')"
+        formatted = black.format_str(code, mode=DEFAULT_MODE)
+
+        args = ["--code", code]
+        result = CliRunner().invoke(black.main, args)
+
+        self.compare_results(result, formatted, 0)
+
+    def test_code_option_check(self) -> None:
+        """Test the code option when check is passed."""
+        args = ["--check", "--code", 'print("Hello world")\n']
+        result = CliRunner().invoke(black.main, args)
+        self.compare_results(result, "", 0)
+
+    def test_code_option_check_changed(self) -> None:
+        """Test the code option when changes are required, and check is passed."""
+        args = ["--check", "--code", "print('hello world')"]
+        result = CliRunner().invoke(black.main, args)
+        self.compare_results(result, "", 1)
+
+    def test_code_option_diff(self) -> None:
+        """Test the code option when diff is passed."""
+        code = "print('hello world')"
+        formatted = black.format_str(code, mode=DEFAULT_MODE)
+        result_diff = diff(code, formatted, "STDIN", "STDOUT")
+
+        args = ["--diff", "--code", code]
+        result = CliRunner().invoke(black.main, args)
+
+        # Remove time from diff
+        output = DIFF_TIME.sub("", result.output)
+
+        assert output == result_diff, "The output did not match the expected value."
+        assert result.exit_code == 0, "The exit code is incorrect."
+
+    def test_code_option_color_diff(self) -> None:
+        """Test the code option when color and diff are passed."""
+        code = "print('hello world')"
+        formatted = black.format_str(code, mode=DEFAULT_MODE)
+
+        result_diff = diff(code, formatted, "STDIN", "STDOUT")
+        result_diff = color_diff(result_diff)
+
+        args = ["--diff", "--color", "--code", code]
+        result = CliRunner().invoke(black.main, args)
+
+        # Remove time from diff
+        output = DIFF_TIME.sub("", result.output)
+
+        assert output == result_diff, "The output did not match the expected value."
+        assert result.exit_code == 0, "The exit code is incorrect."
+
+    def test_code_option_safe(self) -> None:
+        """Test that the code option throws an error when the sanity checks fail."""
+        # Patch black.assert_equivalent to ensure the sanity checks fail
+        with patch.object(black, "assert_equivalent", side_effect=AssertionError):
+            code = 'print("Hello world")'
+            error_msg = f"{code}\nerror: cannot format <string>: \n"
+
+            args = ["--safe", "--code", code]
+            result = CliRunner().invoke(black.main, args)
+
+            self.compare_results(result, error_msg, 123)
+
+    def test_code_option_fast(self) -> None:
+        """Test that the code option ignores errors when the sanity checks fail."""
+        # Patch black.assert_equivalent to ensure the sanity checks fail
+        with patch.object(black, "assert_equivalent", side_effect=AssertionError):
+            code = 'print("Hello world")'
+            formatted = black.format_str(code, mode=DEFAULT_MODE)
+
+            args = ["--fast", "--code", code]
+            result = CliRunner().invoke(black.main, args)
+
+            self.compare_results(result, formatted, 0)
+
+    def test_code_option_config(self) -> None:
+        """
+        Test that the code option finds the pyproject.toml in the current directory.
+        """
+        with patch.object(black, "parse_pyproject_toml", return_value={}) as parse:
+            args = ["--code", "print"]
+            CliRunner().invoke(black.main, args)
+
+            pyproject_path = Path(Path().cwd(), "pyproject.toml").resolve()
+            assert (
+                len(parse.mock_calls) >= 1
+            ), "Expected config parse to be called with the current directory."
+
+            _, call_args, _ = parse.mock_calls[0]
+            assert (
+                call_args[0].lower() == str(pyproject_path).lower()
+            ), "Incorrect config loaded."
+
+    def test_code_option_parent_config(self) -> None:
+        """
+        Test that the code option finds the pyproject.toml in the parent directory.
+        """
+        with patch.object(black, "parse_pyproject_toml", return_value={}) as parse:
+            with change_directory(Path("tests")):
+                args = ["--code", "print"]
+                CliRunner().invoke(black.main, args)
+
+                pyproject_path = Path(Path().cwd().parent, "pyproject.toml").resolve()
+                assert (
+                    len(parse.mock_calls) >= 1
+                ), "Expected config parse to be called with the current directory."
+
+                _, call_args, _ = parse.mock_calls[0]
+                assert (
+                    call_args[0].lower() == str(pyproject_path).lower()
+                ), "Incorrect config loaded."
+
+
+class TestCaching:
+    def test_cache_broken_file(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir() as workspace:
+            cache_file = get_cache_file(mode)
+            cache_file.write_text("this is not a pickle")
+            assert black.read_cache(mode) == {}
+            src = (workspace / "test.py").resolve()
+            src.write_text("print('hello')")
+            invokeBlack([str(src)])
+            cache = black.read_cache(mode)
+            assert str(src) in cache
+
+    def test_cache_single_file_already_cached(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir() as workspace:
+            src = (workspace / "test.py").resolve()
+            src.write_text("print('hello')")
+            black.write_cache({}, [src], mode)
+            invokeBlack([str(src)])
+            assert src.read_text() == "print('hello')"
+
+    @event_loop()
+    def test_cache_multiple_files(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir() as workspace, patch(
+            "black.ProcessPoolExecutor", new=ThreadPoolExecutor
+        ):
+            one = (workspace / "one.py").resolve()
+            with one.open("w") as fobj:
+                fobj.write("print('hello')")
+            two = (workspace / "two.py").resolve()
+            with two.open("w") as fobj:
+                fobj.write("print('hello')")
+            black.write_cache({}, [one], mode)
+            invokeBlack([str(workspace)])
+            with one.open("r") as fobj:
+                assert fobj.read() == "print('hello')"
+            with two.open("r") as fobj:
+                assert fobj.read() == 'print("hello")\n'
+            cache = black.read_cache(mode)
+            assert str(one) in cache
+            assert str(two) in cache
+
+    @pytest.mark.parametrize("color", [False, True], ids=["no-color", "with-color"])
+    def test_no_cache_when_writeback_diff(self, color: bool) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir() as workspace:
+            src = (workspace / "test.py").resolve()
+            with src.open("w") as fobj:
+                fobj.write("print('hello')")
+            with patch("black.read_cache") as read_cache, patch(
+                "black.write_cache"
+            ) as write_cache:
+                cmd = [str(src), "--diff"]
+                if color:
+                    cmd.append("--color")
+                invokeBlack(cmd)
+                cache_file = get_cache_file(mode)
+                assert cache_file.exists() is False
+                write_cache.assert_not_called()
+                read_cache.assert_not_called()
+
+    @pytest.mark.parametrize("color", [False, True], ids=["no-color", "with-color"])
+    @event_loop()
+    def test_output_locking_when_writeback_diff(self, color: bool) -> None:
+        with cache_dir() as workspace:
+            for tag in range(0, 4):
+                src = (workspace / f"test{tag}.py").resolve()
+                with src.open("w") as fobj:
+                    fobj.write("print('hello')")
+            with patch("black.Manager", wraps=multiprocessing.Manager) as mgr:
+                cmd = ["--diff", str(workspace)]
+                if color:
+                    cmd.append("--color")
+                invokeBlack(cmd, exit_code=0)
+                # this isn't quite doing what we want, but if it _isn't_
+                # called then we cannot be using the lock it provides
+                mgr.assert_called()
+
+    def test_no_cache_when_stdin(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir():
+            result = CliRunner().invoke(
+                black.main, ["-"], input=BytesIO(b"print('hello')")
+            )
+            assert not result.exit_code
+            cache_file = get_cache_file(mode)
+            assert not cache_file.exists()
+
+    def test_read_cache_no_cachefile(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir():
+            assert black.read_cache(mode) == {}
+
+    def test_write_cache_read_cache(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir() as workspace:
+            src = (workspace / "test.py").resolve()
+            src.touch()
+            black.write_cache({}, [src], mode)
+            cache = black.read_cache(mode)
+            assert str(src) in cache
+            assert cache[str(src)] == black.get_cache_info(src)
+
+    def test_filter_cached(self) -> None:
+        with TemporaryDirectory() as workspace:
+            path = Path(workspace)
+            uncached = (path / "uncached").resolve()
+            cached = (path / "cached").resolve()
+            cached_but_changed = (path / "changed").resolve()
+            uncached.touch()
+            cached.touch()
+            cached_but_changed.touch()
+            cache = {
+                str(cached): black.get_cache_info(cached),
+                str(cached_but_changed): (0.0, 0),
+            }
+            todo, done = black.filter_cached(
+                cache, {uncached, cached, cached_but_changed}
+            )
+            assert todo == {uncached, cached_but_changed}
+            assert done == {cached}
+
+    def test_write_cache_creates_directory_if_needed(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir(exists=False) as workspace:
+            assert not workspace.exists()
+            black.write_cache({}, [], mode)
+            assert workspace.exists()
+
+    @event_loop()
+    def test_failed_formatting_does_not_get_cached(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir() as workspace, patch(
+            "black.ProcessPoolExecutor", new=ThreadPoolExecutor
+        ):
+            failing = (workspace / "failing.py").resolve()
+            with failing.open("w") as fobj:
+                fobj.write("not actually python")
+            clean = (workspace / "clean.py").resolve()
+            with clean.open("w") as fobj:
+                fobj.write('print("hello")\n')
+            invokeBlack([str(workspace)], exit_code=123)
+            cache = black.read_cache(mode)
+            assert str(failing) not in cache
+            assert str(clean) in cache
+
+    def test_write_cache_write_fail(self) -> None:
+        mode = DEFAULT_MODE
+        with cache_dir(), patch.object(Path, "open") as mock:
+            mock.side_effect = OSError
+            black.write_cache({}, [], mode)
+
+    def test_read_cache_line_lengths(self) -> None:
+        mode = DEFAULT_MODE
+        short_mode = replace(DEFAULT_MODE, line_length=1)
+        with cache_dir() as workspace:
+            path = (workspace / "file.py").resolve()
+            path.touch()
+            black.write_cache({}, [path], mode)
+            one = black.read_cache(mode)
+            assert str(path) in one
+            two = black.read_cache(short_mode)
+            assert str(path) not in two
+
+
+def assert_collected_sources(
+    src: Sequence[Union[str, Path]],
+    expected: Sequence[Union[str, Path]],
+    *,
+    exclude: Optional[str] = None,
+    include: Optional[str] = None,
+    extend_exclude: Optional[str] = None,
+    force_exclude: Optional[str] = None,
+    stdin_filename: Optional[str] = None,
+) -> None:
+    gs_src = tuple(str(Path(s)) for s in src)
+    gs_expected = [Path(s) for s in expected]
+    gs_exclude = None if exclude is None else compile_pattern(exclude)
+    gs_include = DEFAULT_INCLUDE if include is None else compile_pattern(include)
+    gs_extend_exclude = (
+        None if extend_exclude is None else compile_pattern(extend_exclude)
+    )
+    gs_force_exclude = None if force_exclude is None else compile_pattern(force_exclude)
+    collected = black.get_sources(
+        ctx=FakeContext(),
+        src=gs_src,
+        quiet=False,
+        verbose=False,
+        include=gs_include,
+        exclude=gs_exclude,
+        extend_exclude=gs_extend_exclude,
+        force_exclude=gs_force_exclude,
+        report=black.Report(),
+        stdin_filename=stdin_filename,
+    )
+    assert sorted(list(collected)) == sorted(gs_expected)
+
+
+class TestFileCollection:
+    def test_include_exclude(self) -> None:
+        path = THIS_DIR / "data" / "include_exclude_tests"
+        src = [path]
+        expected = [
+            Path(path / "b/dont_exclude/a.py"),
+            Path(path / "b/dont_exclude/a.pyi"),
+        ]
+        assert_collected_sources(
+            src,
+            expected,
+            include=r"\.pyi?$",
+            exclude=r"/exclude/|/\.definitely_exclude/",
+        )
+
+    def test_gitignore_used_as_default(self) -> None:
+        base = Path(DATA_DIR / "include_exclude_tests")
+        expected = [
+            base / "b/.definitely_exclude/a.py",
+            base / "b/.definitely_exclude/a.pyi",
+        ]
+        src = [base / "b/"]
+        assert_collected_sources(src, expected, extend_exclude=r"/exclude/")
+
+    @patch("black.find_project_root", lambda *args: THIS_DIR.resolve())
+    def test_exclude_for_issue_1572(self) -> None:
+        # Exclude shouldn't touch files that were explicitly given to Black through the
+        # CLI. Exclude is supposed to only apply to the recursive discovery of files.
+        # https://github.com/psf/black/issues/1572
+        path = DATA_DIR / "include_exclude_tests"
+        src = [path / "b/exclude/a.py"]
+        expected = [path / "b/exclude/a.py"]
+        assert_collected_sources(src, expected, include="", exclude=r"/exclude/|a\.py")
+
+    def test_gitignore_exclude(self) -> None:
+        path = THIS_DIR / "data" / "include_exclude_tests"
+        include = re.compile(r"\.pyi?$")
+        exclude = re.compile(r"")
+        report = black.Report()
+        gitignore = PathSpec.from_lines(
+            "gitwildmatch", ["exclude/", ".definitely_exclude"]
+        )
+        sources: List[Path] = []
+        expected = [
+            Path(path / "b/dont_exclude/a.py"),
+            Path(path / "b/dont_exclude/a.pyi"),
+        ]
+        this_abs = THIS_DIR.resolve()
+        sources.extend(
+            black.gen_python_files(
+                path.iterdir(),
+                this_abs,
+                include,
+                exclude,
+                None,
+                None,
+                report,
+                gitignore,
+                verbose=False,
+                quiet=False,
+            )
+        )
+        assert sorted(expected) == sorted(sources)
+
+    def test_nested_gitignore(self) -> None:
+        path = Path(THIS_DIR / "data" / "nested_gitignore_tests")
+        include = re.compile(r"\.pyi?$")
+        exclude = re.compile(r"")
+        root_gitignore = black.files.get_gitignore(path)
+        report = black.Report()
+        expected: List[Path] = [
+            Path(path / "x.py"),
+            Path(path / "root/b.py"),
+            Path(path / "root/c.py"),
+            Path(path / "root/child/c.py"),
+        ]
+        this_abs = THIS_DIR.resolve()
+        sources = list(
+            black.gen_python_files(
+                path.iterdir(),
+                this_abs,
+                include,
+                exclude,
+                None,
+                None,
+                report,
+                root_gitignore,
+                verbose=False,
+                quiet=False,
+            )
+        )
+        assert sorted(expected) == sorted(sources)
+
+    def test_invalid_gitignore(self) -> None:
+        path = THIS_DIR / "data" / "invalid_gitignore_tests"
+        empty_config = path / "pyproject.toml"
+        result = BlackRunner().invoke(
+            black.main, ["--verbose", "--config", str(empty_config), str(path)]
+        )
+        assert result.exit_code == 1
+        assert result.stderr_bytes is not None
+
+        gitignore = path / ".gitignore"
+        assert f"Could not parse {gitignore}" in result.stderr_bytes.decode()
+
+    def test_invalid_nested_gitignore(self) -> None:
+        path = THIS_DIR / "data" / "invalid_nested_gitignore_tests"
+        empty_config = path / "pyproject.toml"
+        result = BlackRunner().invoke(
+            black.main, ["--verbose", "--config", str(empty_config), str(path)]
+        )
+        assert result.exit_code == 1
+        assert result.stderr_bytes is not None
+
+        gitignore = path / "a" / ".gitignore"
+        assert f"Could not parse {gitignore}" in result.stderr_bytes.decode()
+
+    def test_empty_include(self) -> None:
+        path = DATA_DIR / "include_exclude_tests"
+        src = [path]
+        expected = [
+            Path(path / "b/exclude/a.pie"),
+            Path(path / "b/exclude/a.py"),
+            Path(path / "b/exclude/a.pyi"),
+            Path(path / "b/dont_exclude/a.pie"),
+            Path(path / "b/dont_exclude/a.py"),
+            Path(path / "b/dont_exclude/a.pyi"),
+            Path(path / "b/.definitely_exclude/a.pie"),
+            Path(path / "b/.definitely_exclude/a.py"),
+            Path(path / "b/.definitely_exclude/a.pyi"),
+            Path(path / ".gitignore"),
+            Path(path / "pyproject.toml"),
+        ]
+        # Setting exclude explicitly to an empty string to block .gitignore usage.
+        assert_collected_sources(src, expected, include="", exclude="")
+
+    def test_extend_exclude(self) -> None:
+        path = DATA_DIR / "include_exclude_tests"
+        src = [path]
+        expected = [
+            Path(path / "b/exclude/a.py"),
+            Path(path / "b/dont_exclude/a.py"),
+        ]
+        assert_collected_sources(
+            src, expected, exclude=r"\.pyi$", extend_exclude=r"\.definitely_exclude"
+        )
+
+    def test_symlink_out_of_root_directory(self) -> None:
+        path = MagicMock()
+        root = THIS_DIR.resolve()
+        child = MagicMock()
+        include = re.compile(black.DEFAULT_INCLUDES)
+        exclude = re.compile(black.DEFAULT_EXCLUDES)
+        report = black.Report()
+        gitignore = PathSpec.from_lines("gitwildmatch", [])
+        # `child` should behave like a symlink which resolved path is clearly
+        # outside of the `root` directory.
+        path.iterdir.return_value = [child]
+        child.resolve.return_value = Path("/a/b/c")
+        child.as_posix.return_value = "/a/b/c"
+        child.is_symlink.return_value = True
+        try:
+            list(
+                black.gen_python_files(
+                    path.iterdir(),
+                    root,
+                    include,
+                    exclude,
+                    None,
+                    None,
+                    report,
+                    gitignore,
+                    verbose=False,
+                    quiet=False,
+                )
+            )
+        except ValueError as ve:
+            pytest.fail(f"`get_python_files_in_dir()` failed: {ve}")
+        path.iterdir.assert_called_once()
+        child.resolve.assert_called_once()
+        child.is_symlink.assert_called_once()
+        # `child` should behave like a strange file which resolved path is clearly
+        # outside of the `root` directory.
+        child.is_symlink.return_value = False
+        with pytest.raises(ValueError):
+            list(
+                black.gen_python_files(
+                    path.iterdir(),
+                    root,
+                    include,
+                    exclude,
+                    None,
+                    None,
+                    report,
+                    gitignore,
+                    verbose=False,
+                    quiet=False,
+                )
+            )
+        path.iterdir.assert_called()
+        assert path.iterdir.call_count == 2
+        child.resolve.assert_called()
+        assert child.resolve.call_count == 2
+        child.is_symlink.assert_called()
+        assert child.is_symlink.call_count == 2
+
+    @patch("black.find_project_root", lambda *args: THIS_DIR.resolve())
+    def test_get_sources_with_stdin(self) -> None:
+        src = ["-"]
+        expected = ["-"]
+        assert_collected_sources(src, expected, include="", exclude=r"/exclude/|a\.py")
+
+    @patch("black.find_project_root", lambda *args: THIS_DIR.resolve())
+    def test_get_sources_with_stdin_filename(self) -> None:
+        src = ["-"]
+        stdin_filename = str(THIS_DIR / "data/collections.py")
+        expected = [f"__BLACK_STDIN_FILENAME__{stdin_filename}"]
+        assert_collected_sources(
+            src,
+            expected,
+            exclude=r"/exclude/a\.py",
+            stdin_filename=stdin_filename,
+        )
+
+    @patch("black.find_project_root", lambda *args: THIS_DIR.resolve())
+    def test_get_sources_with_stdin_filename_and_exclude(self) -> None:
+        # Exclude shouldn't exclude stdin_filename since it is mimicking the
+        # file being passed directly. This is the same as
+        # test_exclude_for_issue_1572
+        path = DATA_DIR / "include_exclude_tests"
+        src = ["-"]
+        stdin_filename = str(path / "b/exclude/a.py")
+        expected = [f"__BLACK_STDIN_FILENAME__{stdin_filename}"]
+        assert_collected_sources(
+            src,
+            expected,
+            exclude=r"/exclude/|a\.py",
+            stdin_filename=stdin_filename,
+        )
+
+    @patch("black.find_project_root", lambda *args: THIS_DIR.resolve())
+    def test_get_sources_with_stdin_filename_and_extend_exclude(self) -> None:
+        # Extend exclude shouldn't exclude stdin_filename since it is mimicking the
+        # file being passed directly. This is the same as
+        # test_exclude_for_issue_1572
+        src = ["-"]
+        path = THIS_DIR / "data" / "include_exclude_tests"
+        stdin_filename = str(path / "b/exclude/a.py")
+        expected = [f"__BLACK_STDIN_FILENAME__{stdin_filename}"]
+        assert_collected_sources(
+            src,
+            expected,
+            extend_exclude=r"/exclude/|a\.py",
+            stdin_filename=stdin_filename,
+        )
+
+    @patch("black.find_project_root", lambda *args: THIS_DIR.resolve())
+    def test_get_sources_with_stdin_filename_and_force_exclude(self) -> None:
+        # Force exclude should exclude the file when passing it through
+        # stdin_filename
+        path = THIS_DIR / "data" / "include_exclude_tests"
+        stdin_filename = str(path / "b/exclude/a.py")
+        assert_collected_sources(
+            src=["-"],
+            expected=[],
+            force_exclude=r"/exclude/|a\.py",
+            stdin_filename=stdin_filename,
+        )
+
+
+with open(black.__file__, "r", encoding="utf-8") as _bf:
+    black_source_lines = _bf.readlines()
+
+
+def tracefunc(frame: types.FrameType, event: str, arg: Any) -> Callable:
+    """Show function calls `from black/__init__.py` as they happen.
+
+    Register this with `sys.settrace()` in a test you're debugging.
+    """
+    if event != "call":
+        return tracefunc
+
+    stack = len(inspect.stack()) - 19
+    stack *= 2
+    filename = frame.f_code.co_filename
+    lineno = frame.f_lineno
+    func_sig_lineno = lineno - 1
+    funcname = black_source_lines[func_sig_lineno].strip()
+    while funcname.startswith("@"):
+        func_sig_lineno += 1
+        funcname = black_source_lines[func_sig_lineno].strip()
+    if "black/__init__.py" in filename:
+        print(f"{' ' * stack}{lineno}:{funcname}")
+    return tracefunc
diff --git a/.vim/bundle/black/tests/test_blackd.py b/.vim/bundle/black/tests/test_blackd.py
new file mode 100644 (file)
index 0000000..cc750b4
--- /dev/null
@@ -0,0 +1,187 @@
+import re
+from unittest.mock import patch
+
+from click.testing import CliRunner
+import pytest
+
+from tests.util import read_data, DETERMINISTIC_HEADER
+
+try:
+    import blackd
+    from aiohttp.test_utils import AioHTTPTestCase, unittest_run_loop
+    from aiohttp import web
+except ImportError:
+    has_blackd_deps = False
+else:
+    has_blackd_deps = True
+
+
+@pytest.mark.blackd
+class BlackDTestCase(AioHTTPTestCase):
+    def test_blackd_main(self) -> None:
+        with patch("blackd.web.run_app"):
+            result = CliRunner().invoke(blackd.main, [])
+            if result.exception is not None:
+                raise result.exception
+            self.assertEqual(result.exit_code, 0)
+
+    async def get_application(self) -> web.Application:
+        return blackd.make_app()
+
+    @unittest_run_loop
+    async def test_blackd_request_needs_formatting(self) -> None:
+        response = await self.client.post("/", data=b"print('hello world')")
+        self.assertEqual(response.status, 200)
+        self.assertEqual(response.charset, "utf8")
+        self.assertEqual(await response.read(), b'print("hello world")\n')
+
+    @unittest_run_loop
+    async def test_blackd_request_no_change(self) -> None:
+        response = await self.client.post("/", data=b'print("hello world")\n')
+        self.assertEqual(response.status, 204)
+        self.assertEqual(await response.read(), b"")
+
+    @unittest_run_loop
+    async def test_blackd_request_syntax_error(self) -> None:
+        response = await self.client.post("/", data=b"what even ( is")
+        self.assertEqual(response.status, 400)
+        content = await response.text()
+        self.assertTrue(
+            content.startswith("Cannot parse"),
+            msg=f"Expected error to start with 'Cannot parse', got {repr(content)}",
+        )
+
+    @unittest_run_loop
+    async def test_blackd_unsupported_version(self) -> None:
+        response = await self.client.post(
+            "/", data=b"what", headers={blackd.PROTOCOL_VERSION_HEADER: "2"}
+        )
+        self.assertEqual(response.status, 501)
+
+    @unittest_run_loop
+    async def test_blackd_supported_version(self) -> None:
+        response = await self.client.post(
+            "/", data=b"what", headers={blackd.PROTOCOL_VERSION_HEADER: "1"}
+        )
+        self.assertEqual(response.status, 200)
+
+    @unittest_run_loop
+    async def test_blackd_invalid_python_variant(self) -> None:
+        async def check(header_value: str, expected_status: int = 400) -> None:
+            response = await self.client.post(
+                "/", data=b"what", headers={blackd.PYTHON_VARIANT_HEADER: header_value}
+            )
+            self.assertEqual(response.status, expected_status)
+
+        await check("lol")
+        await check("ruby3.5")
+        await check("pyi3.6")
+        await check("py1.5")
+        await check("2.8")
+        await check("py2.8")
+        await check("3.0")
+        await check("pypy3.0")
+        await check("jython3.4")
+
+    @unittest_run_loop
+    async def test_blackd_pyi(self) -> None:
+        source, expected = read_data("stub.pyi")
+        response = await self.client.post(
+            "/", data=source, headers={blackd.PYTHON_VARIANT_HEADER: "pyi"}
+        )
+        self.assertEqual(response.status, 200)
+        self.assertEqual(await response.text(), expected)
+
+    @unittest_run_loop
+    async def test_blackd_diff(self) -> None:
+        diff_header = re.compile(
+            r"(In|Out)\t\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d\.\d\d\d\d\d\d \+\d\d\d\d"
+        )
+
+        source, _ = read_data("blackd_diff.py")
+        expected, _ = read_data("blackd_diff.diff")
+
+        response = await self.client.post(
+            "/", data=source, headers={blackd.DIFF_HEADER: "true"}
+        )
+        self.assertEqual(response.status, 200)
+
+        actual = await response.text()
+        actual = diff_header.sub(DETERMINISTIC_HEADER, actual)
+        self.assertEqual(actual, expected)
+
+    @unittest_run_loop
+    async def test_blackd_python_variant(self) -> None:
+        code = (
+            "def f(\n"
+            "    and_has_a_bunch_of,\n"
+            "    very_long_arguments_too,\n"
+            "    and_lots_of_them_as_well_lol,\n"
+            "    **and_very_long_keyword_arguments\n"
+            "):\n"
+            "    pass\n"
+        )
+
+        async def check(header_value: str, expected_status: int) -> None:
+            response = await self.client.post(
+                "/", data=code, headers={blackd.PYTHON_VARIANT_HEADER: header_value}
+            )
+            self.assertEqual(
+                response.status, expected_status, msg=await response.text()
+            )
+
+        await check("3.6", 200)
+        await check("py3.6", 200)
+        await check("3.6,3.7", 200)
+        await check("3.6,py3.7", 200)
+        await check("py36,py37", 200)
+        await check("36", 200)
+        await check("3.6.4", 200)
+
+        await check("2", 204)
+        await check("2.7", 204)
+        await check("py2.7", 204)
+        await check("3.4", 204)
+        await check("py3.4", 204)
+        await check("py34,py36", 204)
+        await check("34", 204)
+
+    @unittest_run_loop
+    async def test_blackd_line_length(self) -> None:
+        response = await self.client.post(
+            "/", data=b'print("hello")\n', headers={blackd.LINE_LENGTH_HEADER: "7"}
+        )
+        self.assertEqual(response.status, 200)
+
+    @unittest_run_loop
+    async def test_blackd_invalid_line_length(self) -> None:
+        response = await self.client.post(
+            "/", data=b'print("hello")\n', headers={blackd.LINE_LENGTH_HEADER: "NaN"}
+        )
+        self.assertEqual(response.status, 400)
+
+    @unittest_run_loop
+    async def test_blackd_response_black_version_header(self) -> None:
+        response = await self.client.post("/")
+        self.assertIsNotNone(response.headers.get(blackd.BLACK_VERSION_HEADER))
+
+    @unittest_run_loop
+    async def test_cors_preflight(self) -> None:
+        response = await self.client.options(
+            "/",
+            headers={
+                "Access-Control-Request-Method": "POST",
+                "Origin": "*",
+                "Access-Control-Request-Headers": "Content-Type",
+            },
+        )
+        self.assertEqual(response.status, 200)
+        self.assertIsNotNone(response.headers.get("Access-Control-Allow-Origin"))
+        self.assertIsNotNone(response.headers.get("Access-Control-Allow-Headers"))
+        self.assertIsNotNone(response.headers.get("Access-Control-Allow-Methods"))
+
+    @unittest_run_loop
+    async def test_cors_headers_present(self) -> None:
+        response = await self.client.post("/", headers={"Origin": "*"})
+        self.assertIsNotNone(response.headers.get("Access-Control-Allow-Origin"))
+        self.assertIsNotNone(response.headers.get("Access-Control-Expose-Headers"))
diff --git a/.vim/bundle/black/tests/test_format.py b/.vim/bundle/black/tests/test_format.py
new file mode 100644 (file)
index 0000000..a659382
--- /dev/null
@@ -0,0 +1,234 @@
+from dataclasses import replace
+from typing import Any, Iterator
+from unittest.mock import patch
+
+import pytest
+
+import black
+from tests.util import (
+    DEFAULT_MODE,
+    PY36_VERSIONS,
+    THIS_DIR,
+    assert_format,
+    dump_to_stderr,
+    read_data,
+)
+
+SIMPLE_CASES = [
+    "beginning_backslash",
+    "bracketmatch",
+    "class_blank_parentheses",
+    "class_methods_new_line",
+    "collections",
+    "comments",
+    "comments2",
+    "comments3",
+    "comments4",
+    "comments5",
+    "comments6",
+    "comments_non_breaking_space",
+    "comment_after_escaped_newline",
+    "composition",
+    "composition_no_trailing_comma",
+    "docstring",
+    "empty_lines",
+    "expression",
+    "fmtonoff",
+    "fmtonoff2",
+    "fmtonoff3",
+    "fmtonoff4",
+    "fmtskip",
+    "fmtskip2",
+    "fmtskip3",
+    "fmtskip4",
+    "fmtskip5",
+    "fmtskip6",
+    "fstring",
+    "function",
+    "function2",
+    "function_trailing_comma",
+    "import_spacing",
+    "remove_parens",
+    "slices",
+    "string_prefixes",
+    "tricky_unicode_symbols",
+    "tupleassign",
+]
+
+SIMPLE_CASES_PY2 = [
+    "numeric_literals_py2",
+    "python2",
+    "python2_unicode_literals",
+]
+
+EXPERIMENTAL_STRING_PROCESSING_CASES = [
+    "cantfit",
+    "comments7",
+    "long_strings",
+    "long_strings__edge_case",
+    "long_strings__regression",
+    "percent_precedence",
+]
+
+
+SOURCES = [
+    "src/black/__init__.py",
+    "src/black/__main__.py",
+    "src/black/brackets.py",
+    "src/black/cache.py",
+    "src/black/comments.py",
+    "src/black/concurrency.py",
+    "src/black/const.py",
+    "src/black/debug.py",
+    "src/black/files.py",
+    "src/black/linegen.py",
+    "src/black/lines.py",
+    "src/black/mode.py",
+    "src/black/nodes.py",
+    "src/black/numerics.py",
+    "src/black/output.py",
+    "src/black/parsing.py",
+    "src/black/report.py",
+    "src/black/rusty.py",
+    "src/black/strings.py",
+    "src/black/trans.py",
+    "src/blackd/__init__.py",
+    "src/blib2to3/pygram.py",
+    "src/blib2to3/pytree.py",
+    "src/blib2to3/pgen2/conv.py",
+    "src/blib2to3/pgen2/driver.py",
+    "src/blib2to3/pgen2/grammar.py",
+    "src/blib2to3/pgen2/literals.py",
+    "src/blib2to3/pgen2/parse.py",
+    "src/blib2to3/pgen2/pgen.py",
+    "src/blib2to3/pgen2/tokenize.py",
+    "src/blib2to3/pgen2/token.py",
+    "setup.py",
+    "tests/test_black.py",
+    "tests/test_blackd.py",
+    "tests/test_format.py",
+    "tests/test_primer.py",
+    "tests/optional.py",
+    "tests/util.py",
+    "tests/conftest.py",
+]
+
+
+@pytest.fixture(autouse=True)
+def patch_dump_to_file(request: Any) -> Iterator[None]:
+    with patch("black.dump_to_file", dump_to_stderr):
+        yield
+
+
+def check_file(filename: str, mode: black.Mode, *, data: bool = True) -> None:
+    source, expected = read_data(filename, data=data)
+    assert_format(source, expected, mode, fast=False)
+
+
+@pytest.mark.parametrize("filename", SIMPLE_CASES_PY2)
+@pytest.mark.python2
+def test_simple_format_py2(filename: str) -> None:
+    check_file(filename, DEFAULT_MODE)
+
+
+@pytest.mark.parametrize("filename", SIMPLE_CASES)
+def test_simple_format(filename: str) -> None:
+    check_file(filename, DEFAULT_MODE)
+
+
+@pytest.mark.parametrize("filename", EXPERIMENTAL_STRING_PROCESSING_CASES)
+def test_experimental_format(filename: str) -> None:
+    check_file(filename, black.Mode(experimental_string_processing=True))
+
+
+@pytest.mark.parametrize("filename", SOURCES)
+def test_source_is_formatted(filename: str) -> None:
+    path = THIS_DIR.parent / filename
+    check_file(str(path), DEFAULT_MODE, data=False)
+
+
+# =============== #
+# Complex cases
+# ============= #
+
+
+def test_empty() -> None:
+    source = expected = ""
+    assert_format(source, expected)
+
+
+def test_pep_572() -> None:
+    source, expected = read_data("pep_572")
+    assert_format(source, expected, minimum_version=(3, 8))
+
+
+def test_pep_572_remove_parens() -> None:
+    source, expected = read_data("pep_572_remove_parens")
+    assert_format(source, expected, minimum_version=(3, 8))
+
+
+def test_pep_572_do_not_remove_parens() -> None:
+    source, expected = read_data("pep_572_do_not_remove_parens")
+    # the AST safety checks will fail, but that's expected, just make sure no
+    # parentheses are touched
+    assert_format(source, expected, fast=True)
+
+
+@pytest.mark.parametrize("major, minor", [(3, 9), (3, 10)])
+def test_pep_572_newer_syntax(major: int, minor: int) -> None:
+    source, expected = read_data(f"pep_572_py{major}{minor}")
+    assert_format(source, expected, minimum_version=(major, minor))
+
+
+def test_pep_570() -> None:
+    source, expected = read_data("pep_570")
+    assert_format(source, expected, minimum_version=(3, 8))
+
+
+def test_docstring_no_string_normalization() -> None:
+    """Like test_docstring but with string normalization off."""
+    source, expected = read_data("docstring_no_string_normalization")
+    mode = replace(DEFAULT_MODE, string_normalization=False)
+    assert_format(source, expected, mode)
+
+
+def test_long_strings_flag_disabled() -> None:
+    """Tests for turning off the string processing logic."""
+    source, expected = read_data("long_strings_flag_disabled")
+    mode = replace(DEFAULT_MODE, experimental_string_processing=False)
+    assert_format(source, expected, mode)
+
+
+def test_numeric_literals() -> None:
+    source, expected = read_data("numeric_literals")
+    mode = replace(DEFAULT_MODE, target_versions=PY36_VERSIONS)
+    assert_format(source, expected, mode)
+
+
+def test_numeric_literals_ignoring_underscores() -> None:
+    source, expected = read_data("numeric_literals_skip_underscores")
+    mode = replace(DEFAULT_MODE, target_versions=PY36_VERSIONS)
+    assert_format(source, expected, mode)
+
+
+@pytest.mark.python2
+def test_python2_print_function() -> None:
+    source, expected = read_data("python2_print_function")
+    mode = replace(DEFAULT_MODE, target_versions={black.TargetVersion.PY27})
+    assert_format(source, expected, mode)
+
+
+def test_stub() -> None:
+    mode = replace(DEFAULT_MODE, is_pyi=True)
+    source, expected = read_data("stub.pyi")
+    assert_format(source, expected, mode)
+
+
+def test_python38() -> None:
+    source, expected = read_data("python38")
+    assert_format(source, expected, minimum_version=(3, 8))
+
+
+def test_python39() -> None:
+    source, expected = read_data("python39")
+    assert_format(source, expected, minimum_version=(3, 9))
diff --git a/.vim/bundle/black/tests/test_ipynb.py b/.vim/bundle/black/tests/test_ipynb.py
new file mode 100644 (file)
index 0000000..12f176c
--- /dev/null
@@ -0,0 +1,464 @@
+import pathlib
+from click.testing import CliRunner
+from black.handle_ipynb_magics import jupyter_dependencies_are_installed
+from black import (
+    main,
+    NothingChanged,
+    format_cell,
+    format_file_contents,
+    format_file_in_place,
+)
+import os
+import pytest
+from black import Mode
+from _pytest.monkeypatch import MonkeyPatch
+from py.path import local
+
+pytestmark = pytest.mark.jupyter
+pytest.importorskip("IPython", reason="IPython is an optional dependency")
+pytest.importorskip("tokenize_rt", reason="tokenize-rt is an optional dependency")
+
+JUPYTER_MODE = Mode(is_ipynb=True)
+
+runner = CliRunner()
+
+
+def test_noop() -> None:
+    src = 'foo = "a"'
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+@pytest.mark.parametrize("fast", [True, False])
+def test_trailing_semicolon(fast: bool) -> None:
+    src = 'foo = "a" ;'
+    result = format_cell(src, fast=fast, mode=JUPYTER_MODE)
+    expected = 'foo = "a";'
+    assert result == expected
+
+
+def test_trailing_semicolon_with_comment() -> None:
+    src = 'foo = "a" ;  # bar'
+    result = format_cell(src, fast=True, mode=JUPYTER_MODE)
+    expected = 'foo = "a";  # bar'
+    assert result == expected
+
+
+def test_trailing_semicolon_with_comment_on_next_line() -> None:
+    src = "import black;\n\n# this is a comment"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_trailing_semicolon_indented() -> None:
+    src = "with foo:\n    plot_bar();"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_trailing_semicolon_noop() -> None:
+    src = 'foo = "a";'
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_cell_magic() -> None:
+    src = "%%time\nfoo =bar"
+    result = format_cell(src, fast=True, mode=JUPYTER_MODE)
+    expected = "%%time\nfoo = bar"
+    assert result == expected
+
+
+def test_cell_magic_noop() -> None:
+    src = "%%time\n2 + 2"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+@pytest.mark.parametrize(
+    "src, expected",
+    (
+        pytest.param("ls =!ls", "ls = !ls", id="System assignment"),
+        pytest.param("!ls\n'foo'", '!ls\n"foo"', id="System call"),
+        pytest.param("!!ls\n'foo'", '!!ls\n"foo"', id="Other system call"),
+        pytest.param("?str\n'foo'", '?str\n"foo"', id="Help"),
+        pytest.param("??str\n'foo'", '??str\n"foo"', id="Other help"),
+        pytest.param(
+            "%matplotlib inline\n'foo'",
+            '%matplotlib inline\n"foo"',
+            id="Line magic with argument",
+        ),
+        pytest.param("%time\n'foo'", '%time\n"foo"', id="Line magic without argument"),
+    ),
+)
+def test_magic(src: str, expected: str) -> None:
+    result = format_cell(src, fast=True, mode=JUPYTER_MODE)
+    assert result == expected
+
+
+@pytest.mark.parametrize(
+    "src",
+    (
+        "%%bash\n2+2",
+        "%%html --isolated\n2+2",
+    ),
+)
+def test_non_python_magics(src: str) -> None:
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_set_input() -> None:
+    src = "a = b??"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_input_already_contains_transformed_magic() -> None:
+    src = '%time foo()\nget_ipython().run_cell_magic("time", "", "foo()\\n")'
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_magic_noop() -> None:
+    src = "ls = !ls"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_cell_magic_with_magic() -> None:
+    src = "%%t -n1\nls =!ls"
+    result = format_cell(src, fast=True, mode=JUPYTER_MODE)
+    expected = "%%t -n1\nls = !ls"
+    assert result == expected
+
+
+def test_cell_magic_nested() -> None:
+    src = "%%time\n%%time\n2+2"
+    result = format_cell(src, fast=True, mode=JUPYTER_MODE)
+    expected = "%%time\n%%time\n2 + 2"
+    assert result == expected
+
+
+def test_cell_magic_with_magic_noop() -> None:
+    src = "%%t -n1\nls = !ls"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_automagic() -> None:
+    src = "pip install black"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_multiline_magic() -> None:
+    src = "%time 1 + \\\n2"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_multiline_no_magic() -> None:
+    src = "1 + \\\n2"
+    result = format_cell(src, fast=True, mode=JUPYTER_MODE)
+    expected = "1 + 2"
+    assert result == expected
+
+
+def test_cell_magic_with_invalid_body() -> None:
+    src = "%%time\nif True"
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_empty_cell() -> None:
+    src = ""
+    with pytest.raises(NothingChanged):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
+
+
+def test_entire_notebook_empty_metadata() -> None:
+    with open(
+        os.path.join("tests", "data", "notebook_empty_metadata.ipynb"), "rb"
+    ) as fd:
+        content_bytes = fd.read()
+    content = content_bytes.decode()
+    result = format_file_contents(content, fast=True, mode=JUPYTER_MODE)
+    expected = (
+        "{\n"
+        ' "cells": [\n'
+        "  {\n"
+        '   "cell_type": "code",\n'
+        '   "execution_count": null,\n'
+        '   "metadata": {\n'
+        '    "tags": []\n'
+        "   },\n"
+        '   "outputs": [],\n'
+        '   "source": [\n'
+        '    "%%time\\n",\n'
+        '    "\\n",\n'
+        '    "print(\\"foo\\")"\n'
+        "   ]\n"
+        "  },\n"
+        "  {\n"
+        '   "cell_type": "code",\n'
+        '   "execution_count": null,\n'
+        '   "metadata": {},\n'
+        '   "outputs": [],\n'
+        '   "source": []\n'
+        "  }\n"
+        " ],\n"
+        ' "metadata": {},\n'
+        ' "nbformat": 4,\n'
+        ' "nbformat_minor": 4\n'
+        "}\n"
+    )
+    assert result == expected
+
+
+def test_entire_notebook_trailing_newline() -> None:
+    with open(
+        os.path.join("tests", "data", "notebook_trailing_newline.ipynb"), "rb"
+    ) as fd:
+        content_bytes = fd.read()
+    content = content_bytes.decode()
+    result = format_file_contents(content, fast=True, mode=JUPYTER_MODE)
+    expected = (
+        "{\n"
+        ' "cells": [\n'
+        "  {\n"
+        '   "cell_type": "code",\n'
+        '   "execution_count": null,\n'
+        '   "metadata": {\n'
+        '    "tags": []\n'
+        "   },\n"
+        '   "outputs": [],\n'
+        '   "source": [\n'
+        '    "%%time\\n",\n'
+        '    "\\n",\n'
+        '    "print(\\"foo\\")"\n'
+        "   ]\n"
+        "  },\n"
+        "  {\n"
+        '   "cell_type": "code",\n'
+        '   "execution_count": null,\n'
+        '   "metadata": {},\n'
+        '   "outputs": [],\n'
+        '   "source": []\n'
+        "  }\n"
+        " ],\n"
+        ' "metadata": {\n'
+        '  "interpreter": {\n'
+        '   "hash": "e758f3098b5b55f4d87fe30bbdc1367f20f246b483f96267ee70e6c40cb185d8"\n'  # noqa:B950
+        "  },\n"
+        '  "kernelspec": {\n'
+        '   "display_name": "Python 3.8.10 64-bit (\'black\': venv)",\n'
+        '   "name": "python3"\n'
+        "  },\n"
+        '  "language_info": {\n'
+        '   "name": "python",\n'
+        '   "version": ""\n'
+        "  }\n"
+        " },\n"
+        ' "nbformat": 4,\n'
+        ' "nbformat_minor": 4\n'
+        "}\n"
+    )
+    assert result == expected
+
+
+def test_entire_notebook_no_trailing_newline() -> None:
+    with open(
+        os.path.join("tests", "data", "notebook_no_trailing_newline.ipynb"), "rb"
+    ) as fd:
+        content_bytes = fd.read()
+    content = content_bytes.decode()
+    result = format_file_contents(content, fast=True, mode=JUPYTER_MODE)
+    expected = (
+        "{\n"
+        ' "cells": [\n'
+        "  {\n"
+        '   "cell_type": "code",\n'
+        '   "execution_count": null,\n'
+        '   "metadata": {\n'
+        '    "tags": []\n'
+        "   },\n"
+        '   "outputs": [],\n'
+        '   "source": [\n'
+        '    "%%time\\n",\n'
+        '    "\\n",\n'
+        '    "print(\\"foo\\")"\n'
+        "   ]\n"
+        "  },\n"
+        "  {\n"
+        '   "cell_type": "code",\n'
+        '   "execution_count": null,\n'
+        '   "metadata": {},\n'
+        '   "outputs": [],\n'
+        '   "source": []\n'
+        "  }\n"
+        " ],\n"
+        ' "metadata": {\n'
+        '  "interpreter": {\n'
+        '   "hash": "e758f3098b5b55f4d87fe30bbdc1367f20f246b483f96267ee70e6c40cb185d8"\n'  # noqa: B950
+        "  },\n"
+        '  "kernelspec": {\n'
+        '   "display_name": "Python 3.8.10 64-bit (\'black\': venv)",\n'
+        '   "name": "python3"\n'
+        "  },\n"
+        '  "language_info": {\n'
+        '   "name": "python",\n'
+        '   "version": ""\n'
+        "  }\n"
+        " },\n"
+        ' "nbformat": 4,\n'
+        ' "nbformat_minor": 4\n'
+        "}"
+    )
+    assert result == expected
+
+
+def test_entire_notebook_without_changes() -> None:
+    with open(
+        os.path.join("tests", "data", "notebook_without_changes.ipynb"), "rb"
+    ) as fd:
+        content_bytes = fd.read()
+    content = content_bytes.decode()
+    with pytest.raises(NothingChanged):
+        format_file_contents(content, fast=True, mode=JUPYTER_MODE)
+
+
+def test_non_python_notebook() -> None:
+    with open(os.path.join("tests", "data", "non_python_notebook.ipynb"), "rb") as fd:
+        content_bytes = fd.read()
+    content = content_bytes.decode()
+    with pytest.raises(NothingChanged):
+        format_file_contents(content, fast=True, mode=JUPYTER_MODE)
+
+
+def test_empty_string() -> None:
+    with pytest.raises(NothingChanged):
+        format_file_contents("", fast=True, mode=JUPYTER_MODE)
+
+
+def test_unparseable_notebook() -> None:
+    msg = (
+        r"File 'tests[/\\]data[/\\]notebook_which_cant_be_parsed\.ipynb' "
+        r"cannot be parsed as valid Jupyter notebook\."
+    )
+    with pytest.raises(ValueError, match=msg):
+        format_file_in_place(
+            pathlib.Path("tests") / "data/notebook_which_cant_be_parsed.ipynb",
+            fast=True,
+            mode=JUPYTER_MODE,
+        )
+
+
+def test_ipynb_diff_with_change() -> None:
+    result = runner.invoke(
+        main,
+        [
+            os.path.join("tests", "data", "notebook_trailing_newline.ipynb"),
+            "--diff",
+        ],
+    )
+    expected = "@@ -1,3 +1,3 @@\n %%time\n \n-print('foo')\n" '+print("foo")\n'
+    assert expected in result.output
+
+
+def test_ipynb_diff_with_no_change() -> None:
+    result = runner.invoke(
+        main,
+        [
+            os.path.join("tests", "data", "notebook_without_changes.ipynb"),
+            "--diff",
+        ],
+    )
+    expected = "1 file would be left unchanged."
+    assert expected in result.output
+
+
+def test_cache_isnt_written_if_no_jupyter_deps_single(
+    monkeypatch: MonkeyPatch, tmpdir: local
+) -> None:
+    # Check that the cache isn't written to if Jupyter dependencies aren't installed.
+    jupyter_dependencies_are_installed.cache_clear()
+    nb = os.path.join("tests", "data", "notebook_trailing_newline.ipynb")
+    tmp_nb = tmpdir / "notebook.ipynb"
+    with open(nb) as src, open(tmp_nb, "w") as dst:
+        dst.write(src.read())
+    monkeypatch.setattr(
+        "black.jupyter_dependencies_are_installed", lambda verbose, quiet: False
+    )
+    result = runner.invoke(main, [str(tmpdir / "notebook.ipynb")])
+    assert "No Python files are present to be formatted. Nothing to do" in result.output
+    jupyter_dependencies_are_installed.cache_clear()
+    monkeypatch.setattr(
+        "black.jupyter_dependencies_are_installed", lambda verbose, quiet: True
+    )
+    result = runner.invoke(main, [str(tmpdir / "notebook.ipynb")])
+    assert "reformatted" in result.output
+
+
+def test_cache_isnt_written_if_no_jupyter_deps_dir(
+    monkeypatch: MonkeyPatch, tmpdir: local
+) -> None:
+    # Check that the cache isn't written to if Jupyter dependencies aren't installed.
+    jupyter_dependencies_are_installed.cache_clear()
+    nb = os.path.join("tests", "data", "notebook_trailing_newline.ipynb")
+    tmp_nb = tmpdir / "notebook.ipynb"
+    with open(nb) as src, open(tmp_nb, "w") as dst:
+        dst.write(src.read())
+    monkeypatch.setattr(
+        "black.files.jupyter_dependencies_are_installed", lambda verbose, quiet: False
+    )
+    result = runner.invoke(main, [str(tmpdir)])
+    assert "No Python files are present to be formatted. Nothing to do" in result.output
+    jupyter_dependencies_are_installed.cache_clear()
+    monkeypatch.setattr(
+        "black.files.jupyter_dependencies_are_installed", lambda verbose, quiet: True
+    )
+    result = runner.invoke(main, [str(tmpdir)])
+    assert "reformatted" in result.output
+
+
+def test_ipynb_flag(tmpdir: local) -> None:
+    nb = os.path.join("tests", "data", "notebook_trailing_newline.ipynb")
+    tmp_nb = tmpdir / "notebook.a_file_extension_which_is_definitely_not_ipynb"
+    with open(nb) as src, open(tmp_nb, "w") as dst:
+        dst.write(src.read())
+    result = runner.invoke(
+        main,
+        [
+            str(tmp_nb),
+            "--diff",
+            "--ipynb",
+        ],
+    )
+    expected = "@@ -1,3 +1,3 @@\n %%time\n \n-print('foo')\n" '+print("foo")\n'
+    assert expected in result.output
+
+
+def test_ipynb_and_pyi_flags() -> None:
+    nb = os.path.join("tests", "data", "notebook_trailing_newline.ipynb")
+    result = runner.invoke(
+        main,
+        [
+            nb,
+            "--pyi",
+            "--ipynb",
+            "--diff",
+        ],
+    )
+    assert isinstance(result.exception, SystemExit)
+    expected = "Cannot pass both `pyi` and `ipynb` flags!\n"
+    assert result.output == expected
+
+
+def test_unable_to_replace_magics(monkeypatch: MonkeyPatch) -> None:
+    src = "%%time\na = 'foo'"
+    monkeypatch.setattr("black.handle_ipynb_magics.TOKEN_HEX", lambda _: "foo")
+    with pytest.raises(
+        AssertionError, match="Black was not able to replace IPython magic"
+    ):
+        format_cell(src, fast=True, mode=JUPYTER_MODE)
diff --git a/.vim/bundle/black/tests/test_no_ipynb.py b/.vim/bundle/black/tests/test_no_ipynb.py
new file mode 100644 (file)
index 0000000..bcda2d5
--- /dev/null
@@ -0,0 +1,37 @@
+import pytest
+import os
+
+from tests.util import THIS_DIR
+from black import main, jupyter_dependencies_are_installed
+from click.testing import CliRunner
+from _pytest.tmpdir import tmpdir
+
+pytestmark = pytest.mark.no_jupyter
+
+runner = CliRunner()
+
+
+def test_ipynb_diff_with_no_change_single() -> None:
+    jupyter_dependencies_are_installed.cache_clear()
+    path = THIS_DIR / "data/notebook_trailing_newline.ipynb"
+    result = runner.invoke(main, [str(path)])
+    expected_output = (
+        "Skipping .ipynb files as Jupyter dependencies are not installed.\n"
+        "You can fix this by running ``pip install black[jupyter]``\n"
+    )
+    assert expected_output in result.output
+
+
+def test_ipynb_diff_with_no_change_dir(tmpdir: tmpdir) -> None:
+    jupyter_dependencies_are_installed.cache_clear()
+    runner = CliRunner()
+    nb = os.path.join("tests", "data", "notebook_trailing_newline.ipynb")
+    tmp_nb = tmpdir / "notebook.ipynb"
+    with open(nb) as src, open(tmp_nb, "w") as dst:
+        dst.write(src.read())
+    result = runner.invoke(main, [str(tmpdir)])
+    expected_output = (
+        "Skipping .ipynb files as Jupyter dependencies are not installed.\n"
+        "You can fix this by running ``pip install black[jupyter]``\n"
+    )
+    assert expected_output in result.output
diff --git a/.vim/bundle/black/tests/test_primer.py b/.vim/bundle/black/tests/test_primer.py
new file mode 100644 (file)
index 0000000..e7f99fd
--- /dev/null
@@ -0,0 +1,233 @@
+#!/usr/bin/env python3
+
+import asyncio
+import sys
+import unittest
+from contextlib import contextmanager
+from copy import deepcopy
+from io import StringIO
+from os import getpid
+from pathlib import Path
+from platform import system
+from subprocess import CalledProcessError
+from tempfile import TemporaryDirectory, gettempdir
+from typing import Any, Callable, Generator, Iterator, Tuple
+from unittest.mock import Mock, patch
+
+from click.testing import CliRunner
+
+from black_primer import cli, lib
+
+
+EXPECTED_ANALYSIS_OUTPUT = """\
+-- primer results 📊 --
+
+68 / 69 succeeded (98.55%) ✅
+1 / 69 FAILED (1.45%) 💩
+ - 0 projects disabled by config
+ - 0 projects skipped due to Python version
+ - 0 skipped due to long checkout
+
+Failed projects:
+
+## black:
+ - Returned 69
+ - stdout:
+Black didn't work
+
+"""
+FAKE_PROJECT_CONFIG = {
+    "cli_arguments": ["--unittest"],
+    "expect_formatting_changes": False,
+    "git_clone_url": "https://github.com/psf/black.git",
+}
+
+
+@contextmanager
+def capture_stdout(command: Callable, *args: Any, **kwargs: Any) -> Generator:
+    old_stdout, sys.stdout = sys.stdout, StringIO()
+    try:
+        command(*args, **kwargs)
+        sys.stdout.seek(0)
+        yield sys.stdout.read()
+    finally:
+        sys.stdout = old_stdout
+
+
+@contextmanager
+def event_loop() -> Iterator[None]:
+    policy = asyncio.get_event_loop_policy()
+    loop = policy.new_event_loop()
+    asyncio.set_event_loop(loop)
+    if sys.platform == "win32":
+        asyncio.set_event_loop(asyncio.ProactorEventLoop())
+    try:
+        yield
+    finally:
+        loop.close()
+
+
+async def raise_subprocess_error_1(*args: Any, **kwargs: Any) -> None:
+    raise CalledProcessError(1, ["unittest", "error"], b"", b"")
+
+
+async def raise_subprocess_error_123(*args: Any, **kwargs: Any) -> None:
+    raise CalledProcessError(123, ["unittest", "error"], b"", b"")
+
+
+async def return_false(*args: Any, **kwargs: Any) -> bool:
+    return False
+
+
+async def return_subproccess_output(*args: Any, **kwargs: Any) -> Tuple[bytes, bytes]:
+    return (b"stdout", b"stderr")
+
+
+async def return_zero(*args: Any, **kwargs: Any) -> int:
+    return 0
+
+
+class PrimerLibTests(unittest.TestCase):
+    def test_analyze_results(self) -> None:
+        fake_results = lib.Results(
+            {
+                "disabled": 0,
+                "failed": 1,
+                "skipped_long_checkout": 0,
+                "success": 68,
+                "wrong_py_ver": 0,
+            },
+            {"black": CalledProcessError(69, ["black"], b"Black didn't work", b"")},
+        )
+        with capture_stdout(lib.analyze_results, 69, fake_results) as analyze_stdout:
+            self.assertEqual(EXPECTED_ANALYSIS_OUTPUT, analyze_stdout)
+
+    @event_loop()
+    def test_black_run(self) -> None:
+        """Pretend to run Black to ensure we cater for all scenarios"""
+        loop = asyncio.get_event_loop()
+        project_name = "unittest"
+        repo_path = Path(gettempdir())
+        project_config = deepcopy(FAKE_PROJECT_CONFIG)
+        results = lib.Results({"failed": 0, "success": 0}, {})
+
+        # Test a successful Black run
+        with patch("black_primer.lib._gen_check_output", return_subproccess_output):
+            loop.run_until_complete(
+                lib.black_run(project_name, repo_path, project_config, results)
+            )
+        self.assertEqual(1, results.stats["success"])
+        self.assertFalse(results.failed_projects)
+
+        # Test a fail based on expecting formatting changes but not getting any
+        project_config["expect_formatting_changes"] = True
+        results = lib.Results({"failed": 0, "success": 0}, {})
+        with patch("black_primer.lib._gen_check_output", return_subproccess_output):
+            loop.run_until_complete(
+                lib.black_run(project_name, repo_path, project_config, results)
+            )
+        self.assertEqual(1, results.stats["failed"])
+        self.assertTrue(results.failed_projects)
+
+        # Test a fail based on returning 1 and not expecting formatting changes
+        project_config["expect_formatting_changes"] = False
+        results = lib.Results({"failed": 0, "success": 0}, {})
+        with patch("black_primer.lib._gen_check_output", raise_subprocess_error_1):
+            loop.run_until_complete(
+                lib.black_run(project_name, repo_path, project_config, results)
+            )
+        self.assertEqual(1, results.stats["failed"])
+        self.assertTrue(results.failed_projects)
+
+        # Test a formatting error based on returning 123
+        with patch("black_primer.lib._gen_check_output", raise_subprocess_error_123):
+            loop.run_until_complete(
+                lib.black_run(project_name, repo_path, project_config, results)
+            )
+        self.assertEqual(2, results.stats["failed"])
+
+    def test_flatten_cli_args(self) -> None:
+        fake_long_args = ["--arg", ["really/", "|long", "|regex", "|splitup"], "--done"]
+        expected = ["--arg", "really/|long|regex|splitup", "--done"]
+        self.assertEqual(expected, lib._flatten_cli_args(fake_long_args))
+
+    @event_loop()
+    def test_gen_check_output(self) -> None:
+        loop = asyncio.get_event_loop()
+        stdout, stderr = loop.run_until_complete(
+            lib._gen_check_output([lib.BLACK_BINARY, "--help"])
+        )
+        self.assertTrue("The uncompromising code formatter" in stdout.decode("utf8"))
+        self.assertEqual(None, stderr)
+
+        # TODO: Add a test to see failure works on Windows
+        if lib.WINDOWS:
+            return
+
+        false_bin = "/usr/bin/false" if system() == "Darwin" else "/bin/false"
+        with self.assertRaises(CalledProcessError):
+            loop.run_until_complete(lib._gen_check_output([false_bin]))
+
+        with self.assertRaises(asyncio.TimeoutError):
+            loop.run_until_complete(
+                lib._gen_check_output(["/bin/sleep", "2"], timeout=0.1)
+            )
+
+    @event_loop()
+    def test_git_checkout_or_rebase(self) -> None:
+        loop = asyncio.get_event_loop()
+        project_config = deepcopy(FAKE_PROJECT_CONFIG)
+        work_path = Path(gettempdir())
+
+        expected_repo_path = work_path / "black"
+        with patch("black_primer.lib._gen_check_output", return_subproccess_output):
+            returned_repo_path = loop.run_until_complete(
+                lib.git_checkout_or_rebase(work_path, project_config)
+            )
+        self.assertEqual(expected_repo_path, returned_repo_path)
+
+    @patch("sys.stdout", new_callable=StringIO)
+    @event_loop()
+    def test_process_queue(self, mock_stdout: Mock) -> None:
+        """Test the process queue on primer itself
+        - If you have non black conforming formatting in primer itself this can fail"""
+        loop = asyncio.get_event_loop()
+        config_path = Path(lib.__file__).parent / "primer.json"
+        with patch("black_primer.lib.git_checkout_or_rebase", return_false):
+            with TemporaryDirectory() as td:
+                return_val = loop.run_until_complete(
+                    lib.process_queue(str(config_path), Path(td), 2)
+                )
+                self.assertEqual(0, return_val)
+
+
+class PrimerCLITests(unittest.TestCase):
+    @event_loop()
+    def test_async_main(self) -> None:
+        loop = asyncio.get_event_loop()
+        work_dir = Path(gettempdir()) / f"primer_ut_{getpid()}"
+        args = {
+            "config": "/config",
+            "debug": False,
+            "keep": False,
+            "long_checkouts": False,
+            "rebase": False,
+            "workdir": str(work_dir),
+            "workers": 69,
+            "no_diff": False,
+        }
+        with patch("black_primer.cli.lib.process_queue", return_zero):
+            return_val = loop.run_until_complete(cli.async_main(**args))  # type: ignore
+            self.assertEqual(0, return_val)
+
+    def test_handle_debug(self) -> None:
+        self.assertTrue(cli._handle_debug(None, None, True))
+
+    def test_help_output(self) -> None:
+        runner = CliRunner()
+        result = runner.invoke(cli.main, ["--help"])
+        self.assertEqual(result.exit_code, 0)
+
+
+if __name__ == "__main__":
+    unittest.main()
diff --git a/.vim/bundle/black/tests/util.py b/.vim/bundle/black/tests/util.py
new file mode 100644 (file)
index 0000000..84e98bb
--- /dev/null
@@ -0,0 +1,125 @@
+import os
+import sys
+import unittest
+from contextlib import contextmanager
+from functools import partial
+from pathlib import Path
+from typing import Any, Iterator, List, Optional, Tuple
+
+import black
+from black.debug import DebugVisitor
+from black.mode import TargetVersion
+from black.output import err, out
+
+THIS_DIR = Path(__file__).parent
+DATA_DIR = THIS_DIR / "data"
+PROJECT_ROOT = THIS_DIR.parent
+EMPTY_LINE = "# EMPTY LINE WITH WHITESPACE" + " (this comment will be removed)"
+DETERMINISTIC_HEADER = "[Deterministic header]"
+
+PY36_VERSIONS = {
+    TargetVersion.PY36,
+    TargetVersion.PY37,
+    TargetVersion.PY38,
+    TargetVersion.PY39,
+}
+
+DEFAULT_MODE = black.Mode()
+ff = partial(black.format_file_in_place, mode=DEFAULT_MODE, fast=True)
+fs = partial(black.format_str, mode=DEFAULT_MODE)
+
+
+def _assert_format_equal(expected: str, actual: str) -> None:
+    if actual != expected and not os.environ.get("SKIP_AST_PRINT"):
+        bdv: DebugVisitor[Any]
+        out("Expected tree:", fg="green")
+        try:
+            exp_node = black.lib2to3_parse(expected)
+            bdv = DebugVisitor()
+            list(bdv.visit(exp_node))
+        except Exception as ve:
+            err(str(ve))
+        out("Actual tree:", fg="red")
+        try:
+            exp_node = black.lib2to3_parse(actual)
+            bdv = DebugVisitor()
+            list(bdv.visit(exp_node))
+        except Exception as ve:
+            err(str(ve))
+
+    assert actual == expected
+
+
+def assert_format(
+    source: str,
+    expected: str,
+    mode: black.Mode = DEFAULT_MODE,
+    *,
+    fast: bool = False,
+    minimum_version: Optional[Tuple[int, int]] = None,
+) -> None:
+    """Convenience function to check that Black formats as expected.
+
+    You can pass @minimum_version if you're passing code with newer syntax to guard
+    safety guards so they don't just crash with a SyntaxError. Please note this is
+    separate from TargetVerson Mode configuration.
+    """
+    actual = black.format_str(source, mode=mode)
+    _assert_format_equal(expected, actual)
+    # It's not useful to run safety checks if we're expecting no changes anyway. The
+    # assertion right above will raise if reality does actually make changes. This just
+    # avoids wasted CPU cycles.
+    if not fast and source != expected:
+        # Unfortunately the AST equivalence check relies on the built-in ast module
+        # being able to parse the code being formatted. This doesn't always work out
+        # when checking modern code on older versions.
+        if minimum_version is None or sys.version_info >= minimum_version:
+            black.assert_equivalent(source, actual)
+        black.assert_stable(source, actual, mode=mode)
+
+
+def dump_to_stderr(*output: str) -> str:
+    return "\n" + "\n".join(output) + "\n"
+
+
+class BlackBaseTestCase(unittest.TestCase):
+    def assertFormatEqual(self, expected: str, actual: str) -> None:
+        _assert_format_equal(expected, actual)
+
+
+def read_data(name: str, data: bool = True) -> Tuple[str, str]:
+    """read_data('test_name') -> 'input', 'output'"""
+    if not name.endswith((".py", ".pyi", ".out", ".diff")):
+        name += ".py"
+    base_dir = DATA_DIR if data else PROJECT_ROOT
+    return read_data_from_file(base_dir / name)
+
+
+def read_data_from_file(file_name: Path) -> Tuple[str, str]:
+    with open(file_name, "r", encoding="utf8") as test:
+        lines = test.readlines()
+    _input: List[str] = []
+    _output: List[str] = []
+    result = _input
+    for line in lines:
+        line = line.replace(EMPTY_LINE, "")
+        if line.rstrip() == "# output":
+            result = _output
+            continue
+
+        result.append(line)
+    if _input and not _output:
+        # If there's no output marker, treat the entire file as already pre-formatted.
+        _output = _input[:]
+    return "".join(_input).strip() + "\n", "".join(_output).strip() + "\n"
+
+
+@contextmanager
+def change_directory(path: Path) -> Iterator[None]:
+    """Context manager to temporarily chdir to a different directory."""
+    previous_dir = os.getcwd()
+    try:
+        os.chdir(path)
+        yield
+    finally:
+        os.chdir(previous_dir)
diff --git a/.vim/bundle/black/tox.ini b/.vim/bundle/black/tox.ini
new file mode 100644 (file)
index 0000000..57f41ac
--- /dev/null
@@ -0,0 +1,45 @@
+[tox]
+envlist = {,ci-}py{36,37,38,39,310},fuzz
+
+[testenv]
+setenv = PYTHONPATH = {toxinidir}/src
+skip_install = True
+# We use `recreate=True` because otherwise, on the second run of `tox -e py`,
+# the `no_python2` tests would run with the Python2 extra dependencies installed.
+# See https://github.com/psf/black/issues/2367.
+recreate = True
+deps =
+    -r{toxinidir}/test_requirements.txt
+; parallelization is disabled on CI because pytest-dev/pytest-xdist#620 occurs too frequently
+; local runs can stay parallelized since they aren't rolling the dice so many times as like on CI
+commands =
+    pip install -e .[d]
+    coverage erase
+    pytest tests --run-optional no_python2 \
+        --run-optional no_jupyter \
+        !ci: --numprocesses auto \
+        --cov {posargs}
+    pip install -e .[d,python2]
+    pytest tests --run-optional python2 \
+        --run-optional no_jupyter \
+        !ci: --numprocesses auto \
+        --cov --cov-append {posargs}
+    pip install -e .[jupyter]
+    pytest tests --run-optional jupyter \
+        -m jupyter \
+        !ci: --numprocesses auto \
+        --cov --cov-append {posargs}
+    coverage report
+
+[testenv:fuzz]
+skip_install = True
+deps =
+    -r{toxinidir}/test_requirements.txt
+    hypothesmith
+    lark-parser < 0.10.0
+; lark-parser's version is set due to a bug in hypothesis. Once it solved, that would be fixed.
+commands =
+    pip install -e .[d]
+    coverage erase
+    coverage run fuzz.py
+    coverage report